Subido por ng3031643

6. PROGRAMA DE COMPUTO ESPECIAL PARA SIMULACIÓN.

Anuncio
SIMULACIÓN
6. PROGRAMACIÓN DE CÓMPUTO ESPECIAL PARA SIMULACIÓN.
6.1.
DESCRIPCIÓN DE UN PAQUETE DE SIMULACIÓN DISPONIBLE.
Una simulación por computadora, un modelo de simulación por computador o
un modelo informatizado es un programa informático o una red de ordenadores cuyo
fin es crear una simulación de un modelo abstracto de un determinado sistema. Las
simulaciones por computadora se han convertido en una parte relevante y útil del
modelo matemático de muchos sistemas naturales de ciencias como la física,
geofísica, astrofísica, química y la biología; así como de sistemas humanos de
economía, psicología y ciencias sociales. Además, se emplea en el diseño de nueva
tecnología para llegar a comprender mejor su funcionamiento. Las simulaciones por
computadora abarcan desde programas informáticos cuya ejecución dura unos
minutos hasta conjuntos de ordenadores conectados en red cuya ejecución dura
horas, e incluso hay simulaciones que se extienden varios días. Existen diferentes tipos
de modelos, en función de la finalidad para la cual se crean o diseñan. Sus
clasificaciones son variadas, y buscan dar una idea de sus características esenciales;
pueden ser en base a su dimensión, función, propósitos y grado de abstracción.
abstracción. Cada fenómeno de la realidad se puede representar por medio de un
modelo; por lo cual, según el número y tipo de fenómenos existentes en el mundo real,
será el número y tipo de modelos posibles. Aunque los tipos básicos son icónico,
analógico y simbólico o matemático.
SIMULACIÓN
Otra clasificación es con base a las capacidades de representar la dinámica y
probabilística, control de los componentes e interacciones del sistema (Quinteros et
al., 2006), de esta manera los modelos son:
1) Estáticos, cuando se representa un sistema en un solo instante de tiempo en
particular, o bien para representar un sistema en donde el tiempo no es importante,
por ejemplo simulación Montecarlo.
2) Dinámicos, representan sistemas en los que las variables son funciones del tiempo,
permitiendo predecir su predecir su desarrollo en desarrollo en un periodo un
periodo dado; este dado; este tipo de tipo de modelos es modelos es de gran de
gran importancia para importancia para representar procesos biológicos;
3) Determinísticos, no consideran la variación estocástica, comportándose de
manera, los datos de entrada y las relaciones existentes en el sistema son
especificados al inicio, es decir, no influye el azar en los resultados; y
4) Estocásticos, la modelación se realiza considerando que al menos una de las
variables que definen el comportamiento del sistema se muestra aleatoria, y
entonces el resultado es al menos en parte variable.
La plataforma de MATLAB está optimizada para resolver problemas científicos y
de ingeniería. El lenguaje de MATLAB, basado en matrices, es la forma más natural del
mundo para expresar las matemáticas computacionales. Las gráficas integradas
facilitan la visualización de los datos y la obtención de información a partir de ellos.
Una vasta biblioteca de herramientas (Toolboxes) integradas le permite empezar a
trabajar inmediatamente con algoritmos esenciales para su dominio. El entorno de
escritorio invita a experimentar, explorar y descubrir. Todas estas herramientas y
funciones de MATLAB están probadas rigurosamente y diseñadas para trabajar juntas.
MATLAB le ayuda a llevar sus ideas más allá del escritorio. Puede ejecutar sus
análisis en conjuntos de datos de mayor tamaño y expandirse a clusters y nubes. El
código de MATLAB se puede integrar con otros lenguajes, lo que le permite
implementar algoritmos y aplicaciones en sistemas web, empresariales o de
producción.
SIMULACIÓN
CARACTERÍSTICAS PRINCIPALES DE MATLAB.








Lenguaje de alto nivel para cálculos científicos y de ingeniería
Entorno de escritorio optimizado para la exploración iterativa, el diseño y la
solución de problemas
Gráficas para visualizar datos y herramientas para crear diagramas
personalizados
Aplicaciones para ajustar curvas, clasificar datos, analizar señales, ajustar
sistemas de control y muchas otras tareas
Toolboxes complementarias para una amplia variedad de aplicaciones
científicas y de ingeniería
Herramientas para crear aplicaciones con interfaces de usuario personalizadas
Interfaces para C/C++, Java®, .NET, Python, SQL, Hadoop y Microsoft® Excel®
Opciones de implementación libres de derechos para compartir programas de
MATLAB con los usuarios finales
6.1.1. ÁREAS DE APLICACIÓN.
Se utiliza para el aprendizaje automático, procesamiento de señales,
procesamiento de imágenes, visión por ordenador, comunicaciones, finanzas
computacionales, diseño de control, robótica, entre otros.
Ejemplo de aplicación del programa en solución de un problema.
SIMULACIÓN
MATLAB puede ser usado para resolver un gran abanico de problemas técnicos
relacionados con matemática, desde la evaluación de una simple función hasta la
resolución numérica de sistemas de ecuaciones diferenciales parciales, por ejemplo.
También puede resolver problemas simbólicos y presentar los resultados de forma
agradable y visual de manera que los resultados obtenidos sean más fáciles de
comunicar a otros colaboradores que no trabajen directamente con la ingeniería de
los problemas.
6.1.2. ESTRUCTURA DEL MODELO DE SIMULACIÓN EN EL
INSTRUCCIONES PARA LA PROGRAMACIÓN DEL MODELO.
PAQUETE:
Es interactivo, es decir, no siempre se requiere crear código, o definir variables
de forma explícita. Para muchos usos, solo es necesario usar instrucciones sencillas y
obtener la respuesta inmediatamente. También permite modificar la instrucción
fácilmente para ver otros escenarios a través de pocas instrucciones. Sin embargo,
también es flexible, permitiendo crear programas a través de un lenguaje de alto nivel,
más concentrado en lo que se desea resolver que en los detalles profundos de la
ingeniería de software. Es compatible con una gran cantidad de software utilizado
ampliamente en los ámbitos científicos y técnicos: puede interactuar con hojas de
Microsoft Excel, software elaborado usando C++, Fortran y otros Posee una gran
cantidad de herramientas, llamadas Toolboxes, que pueden ser usadas de forma
gráfica para resolver problemas de ingeniería avanzada, como lógica difusa, redes
neuronales, algoritmos genéticos, optimización numérica, machine learning,
procesamiento de imágenes y video, control de procesos, entre muchos otros .
Permite elaborar programas y aplicaciones que pueden ejecutarse en cualquier
computadora, y más relevante en los tiempos actuales, en cualquier dispositivo,
puesto que cuenta con interfaces para trabajar con dispositivos móviles, hardware
industrial, microprocesadores y más.
SIMULACIÓN
6.2.
EJEMPLOS DE SIMULACIÓN EN EL PAQUETE DESCRITO.
6.2.1. DESCRIPCIÓN ESCRITA.
Las funciones de importación y exportación de datos brindan acceso a datos
provenientes de archivos, otras aplicaciones, servicios web y dispositivos externos. Es
posible leer formatos de archivos comunes como hojas de cálculo de Microsoft Excel,
texto, imágenes, audio, video y formatos de datos científicos. Las funciones de E/S de
archivos de bajo nivel, permiten trabar con archivos de datos en cualquier formato.
6.2.2. PROGRAMACIÓN.
El uso de MATLAB es más eficiente cuando sus algoritmos se diseñan en términos
de matrices y vectores, puesto que es un programa de cálculo numérico orientado a
matrices.
6.2.3. EXPERIMENTACIÓN CON VARIAS CONFIGURACIONES POSIBLES DEL
SISTEMA SIMULADO.
A continuación, algunas de las funciones especiales que contiene MATLAB:
•
•
•



•
•
•
•
•
Funcionales especiales y elementales
Funciones gamma, beta y elípticas.
Transformación de sistemas de coordenadas.
Matriz identidad y otras matrices elementales.
Matrices de Hilbert, Toeplits, Vandermonde, Hadamard, etc.
Partes reales, imaginarias y complejas conjugadas.
Funciones trigonométricas y de potencias.
Algebra lineal numérica
Valores propios y Valores propios y descomposición de matrices. descomposición
de matrices.
Funciones generales de evaluación de matrices.
Determinantes, normas, rangos, etc.
Matrices inversas y factorización de matrices.
Matriz exponencial, Matriz exponencial, logarítmica y raíces cuadradas
SIMULACIÓN
•
•
•
•
•
•
•
Polinomios e interpolación.
Interpolación 1D y 2D.
Construcción polinomial.
Interpolación por splines cúbicos.
Diferenciación de polinomios.
Evaluación de polinomios.
Multiplicación y división de polinomios.
Residuos de polinomios y residuos.
•
•
•
•
Métodos numéricos no lineales
Búsqueda de ceros en funciones de una única variable.
Minimización de funciones de una o más variables.
Resolución numérica de integrales.
Solución numérica de ecuaciones diferenciales ordinarias.
•
•
•
•
•
•
•
Estadística y análisis de Fourier
Convolución 1-D y 2-D.
Filtros digitales 1-D y 2-D.
Transformadas de Fourier 1-D y 2-D y su inversa.
Coeficientes de correlación y matrices de covarianza.
Deconvolución.
Magnitudes y ángulos de fase. de fase.
Funciones max, min, sum, mean y otras funciones de estadística básica.
Operaciones algebraicas y lógicas.
• Suma, resta, multiplicación, división y potencias de matrices.
• Matriz transpuesta.
• Operadores lógicos AND, OR, NOT y XOR.
•
•
•
•
•
Utilidades
Gestión y mantenimiento de errores.
Conversión de tipos de datos Fortran.
Funciones de fecha y hora.
Clasificación de matrices.
Conversión de números a cadenas y viceversa.
6.3.
VALIDACIÓN.
SIMULACIÓN
6.3.1. INTERPRETACIÓN DE LOS INFORMES DE SALIDA.
A fin de obtener el usuario un resultado dispuesto por el programa de la manera
dese por el programa de la manera deseada (ya sea texto, un gráfico 3D, 2D,
simulación en base a parámetros o tablas de datos) es necesario ordenar
correctamente las disposiciones necesarias y asignar los elementos necesarios para
que opere y finalmente nos devuelva la información requerida.
Algunos ejemplos de impresión de resultados y su programación en el software.
SIMULACIÓN
De igual manera los resultados pueden mostrarse de forma gráfica con opción
de personalización.
6.3.2. JUICIOS SOBRE LOS RESULTADOS REPORTADOS.
Como se mencionará a continuación hay dos tipos principales de trabajo que
se deben implementar según los intereses y la parte esencial que se utilizara del
programa, también el nivel de entendimiento del funcionamiento que se tiene.
SIMULACIÓN
6.4.
CONCLUSIÓN.
6.4.1. COMPARACIÓN ENTRE LAS CONFIGURACIONES SIMULADAS.
Como se mencionará a continuación hay dos tipos principales de trabajo que
se deben implementar según los intereses y la parte esencial que se utilizara del
programa, también el nivel de entendimiento del funcionamiento que se tiene.
6.4.2. SELECCIÓN DE LA MEJOR CONFIGURACIÓN.
En la optimización basada en problemas, se crean variables de optimización,
expresiones de estas variables que representan el objetivo y las restricciones, y se
resuelve el problema utilizando SOLVER.
Consulte para elegir entre la optimización basada en problemas y la
optimización basada en solucionador, elija primero el enfoque basado en problemas
o basado en Solver.
El primero tiene como características:
• Fácil de crear y hacer debug
• No óptimo para solución de ecuaciones o de no lineales
• Representación de objetivo y restricciones simbólicamente
• Tiempo de solución más largo debido a que maneja traducción interna
Mientras que el basado en Solver:
• Difícil de crear y hacer debug
• Representación de objetivo y restricciones como funciones o matrices
• Tiempo de solución más corto ya que no necesita traducir
6.4.3. RECOMENDACIONES PARA LA IMPLANTACIÓN.
Escribe tus programas lo más simple y directo posible. Si trabajas con un
compilador, ajusta sus opciones para que arroje la mayor cantidad de errores y
advertencias posibles al compilar, de ese modo, tu aplicación tendrá menores
chances de obtener errores aleatorios. En base a lo anterior, revisa cada mensaje
para tomar las medidas pertinentes.
Todo proceso debe ser previamente comentado, explicando el propósito,
funcionamiento completo y el resultado esperado. Dentro de las funciones definidas,
establece un espaciado o que resalte la estructura funcional de la aplicación y facilite
SIMULACIÓN
la lectura al programador al que le corresponda analizar el código. Por lo general, se
usa un nivel de indentación por cada bloque de código (sentencias condicionales
y bucles son consideradas como bloques de código embebido dentro de otro, por
lo que se recomienda la indentación), ésta indentación corresponde a una sangría
que comúnmente tiene el valor de una tabulación (tecla Tab) o bien tres o cuatro
espacios. Se recomienda usar nombres de variables que permitan saber de forma
intuitiva cual es el dato que se almacena en cada variable. Adicionalmente se
recomienda nombres compuestos para las variables remplazando en espacio en
blanco por el guion bajo. A la programación en Matlab se recomienda siempre que
sea posible usar las funciones vectoriales en lugar de hacer cálculos escalares
repetitivos.
Con respecto específicamente a la programación en Matlab se recomienda
siempre que sea posible crear los vectores y matrices a través de las funciones
destinadas para este fin, en lugar de añadirles elementos uno por uno a través de los
ciclos.
SIMULACIÓN
FUENTES DE INFORMACIÓN CONSULTADAS.
1.
2.
3.
Descripción del producto MATLAB https://es.mathworks.com/ Recuperado de:
https://es.mathworks.com/help/matlab/learn_matlab/product-description.html
Simulación
en
PROMODEL
https://es.slideshare.net/
Recuperado
de:
https://es.slideshare.net/Tensor/simulacin-en-promodel-clase-04
Programa de cómputo especial para simulación https://es.scribd.com/
Recuperado
de:
https://es.scribd.com/document/497534582/InvestigacionUnidad-6-Programa-de-Computo-Especial-Para-Simulacion
Descargar
Colecciones de estudio