Electromagnetismo II. Solución Proyecto 1. Cuadrado
|
|
- Celia Cabrera Crespo
- hace 5 años
- Vistas:
Transcripción
1 Electromagnetismo II Semestre: Prof. Alejandro Reyes Coronado Ayud. Carlos Alberto Maciel Escudero Solución Proyecto 1. Cuadrado Genera un programa de cómputo que calcule numéricamente la solución a la ecuación de Laplace en dos dimensiones para un conjunto discreto de puntos. Los puntos de la frontera exterior se encuentran a un potencial φ = 0, mientras que los puntos de la frontera interna están a un potencial igual a φ = 100. Solución Para resolver el problema se programó el Método de Relajaciónel en Fortran 90. El método establece que en el punto (x o, y o ) el potencial φ (x o, y o ) se encuentra determinado por el valor que toma éste último en sus vecinos simétricos, como se muestra en la figura.
2 La idea para demostrar lo anterior es expandir en Taylor cada uno de los potenciales vecinos: φ (x o ± δ, y o ) = φ (x o, y o ) ± φ x δ φ x=xo 2 x 2 δ 2 + O ( δ 3) x=xo φ (x o, y o ± δ, z o ) = φ (x o, y o ) ± φ y δ φ y=yo 2 y 2 δ 2 + O ( δ 3) y=yo Entonces a segundo orden resulta que φ (x o ± δ, y o ) + φ (x o, y o ± δ) = 4φ (x o, y o ) + 2 φ (x=xo,y=y o) δ2 Como el potencial electrostático satisface la ecuación de Laplace, φ (x o, y o ) = φ (x o + δ, y o ) + φ (x o δ, y o ) + φ (x o, y o + δ) + φ (x o, y o δ) 4 lo cual prueba el argumento anterior. Una vez entendido la idea del método, podemos utilizar este resultado para resolver el problema del proyecto. De forma que, el programa en Fortran 90 debe calcular el promedio del potencial en cada punto conocidos los potencial vecinos. Con la intención de resolver lo anterior, programé un algoritmo que genera una matriz donde se guardan los valores iniciales del potencial, estableciendo un valor aleatorio a aquellos puntos que no tienen asociado un potencial, es decir, los puntos que se encuentran fuera de los contornos de los cuadrados. Después, éste invoca una subrutina, denominada relajación, que calcula una nueva matriz con el promedio de los cuatro primeros vecinos y compara la matriz inicial con la nueva. Si la magnitud de la diferencia de las matrices es mayor o igual a prec entonces vuelve a calcular una nueva matriz con los promedios y la compara ahora con la matriz anterior; esto lo realiza hasta alcanzar una matriz que prácticamente no muestre cambio alguna con su predecesora. Finalmente, con la matriz de potencial eléctrico (digamos la certera), el programa invoca la subrutina campo que calcula el campo electrostático a partir de derivar el potencial. Tanto el potencial como el campo se guardan en archivos.dat respectivamente. Observaciones: 1. Para calcular la norma de una matriz utilicé el producto interior definido en el espacio de Hilbert de las matríces de n n con coeficientes en los reales, dado por: A, A = tr (A t A). El cual pueden verificar que es bilineal, definido positivamente y simétrico. 2. La derivada numérica que utilicé para calcular el campo eléctrico es una derivada de tres puntos, la cual necesita el punto anterior, el posterior y el punto en cuestión para calcular la derivada. Para mayor detalle de esto pueden revisar el libro: Richard Burden, Análisis numérico. 3. Al ejecutar el programa les pedirá en consola que indiquen el refinamiento, esto es para que indiquen que tan fina quieren hacer la malla, es decir, cuántos puntos quieren que tenga. 2
3 Código Fortran! Main !! Declaración de la matriz program laplace real(16), allocatable :: V(:,:),Ex(:,:),Ey(:,:) integer :: i,j,k,n,m real(16) :: prec,vo,inicial open(1,file="potencial.dat",status="replace") open(2,file="campo.dat",status="replace")! llenado de la matriz y las condiciones iniciales write(*,*) ">>Indica el refinamiento:" read*, n inicial=30. m=n/10 allocate (V(n,n),Ex(n,n),Ey(n,n)) do i=1,n do j=1,n if (i==4*m.and. j>=4*m.and. j<=7*m) then else if (i==7*m.and. j>=4*m.and. j<=7*m) then else if (j==4*m.and. i>=4*m.and. i<=7*m) then else if (j==7*m.and. i>=4*m.and. i<=7*m) then else if (i==1.or. i==10*m.or. j==1.or. j==10*m) then V(i,j)=0. else V(i,j)=inicial end if! invoca la subrutina que calcula el metodo de relajación prec=1e-5 call relajacion(v,n,m,prec)! invoca la subrutina que calcula el campo eléctrico call campo(v,n,ex,ey) 3
4 ! Escritura del potencial y el campo en un archivo.dat do i=1,n do j=1,n write(1,10) i,j,v(i,j) 10 format("",2i6.0,f20.12) do i=1,n do j=1,n write(2,20) i,j,ex(i,j)/10.,ey(i,j)/ format("",2i6.0,2f20.12) end program! subrutina Método de Relajación ! subroutine relajacion(v,n,m,prec) integer, intent(in) :: n,m real(16), dimension(n,n), intent(inout) :: V real(16), intent(in) :: prec integer :: i,j real(16) :: dif real(16), dimension(n,n) :: V_ant dif=1. do while (dif>=prec) V_ant=V do i=2,n-1 do j=2,n-1 if (i==4*m.and. j>=4*m.and. j<=7*m) then else if (i==7*m.and. j>=4*m.and. j<=7*m) then else if (j==4*m.and. i>=4*m.and. i<=7*m) then else if (j==7*m.and. i>=4*m.and. i<=7*m) then else if (i==1.or. i==10*m.or. j==1.or. j==10*m) then V(i,j)=0. else V(i,j)=(V(i-1,j)+V(i+1,j)+V(i,j-1)+V(i,j+1))/4. end if 4
5 call magnitud(v-v_ant,n,dif) print*, dif end subroutine! subrutina que calcula el campo eléctrico ! subroutine campo(v,n,ex,ey) integer, intent(in) :: n real(16), dimension(n,n), intent(in) :: V real(16), dimension(n,n), intent(out) :: Ex,Ey integer :: i,j,h h=1 do i=2,n-1 do j=2,n-1 Ex(i,j)=-(V(i+1,j)-V(i-1,j))/(2*h) Ey(i,j)=-(V(i,j+1)-V(i,j-1))/(2*h) end subroutine! subrutina que calcula la magnitud de una matriz ! subroutine magnitud(a,dima,dif) integer, intent(in) :: dima real(16), dimension(dima,dima), intent(in) :: A real(16), intent(out) :: dif real(16), dimension(dima,dima) :: B integer :: i dif=0. B=matmul(transpose(A),A) do i=1,dima dif=dif+b(i,i) end subroutine Para graficar el potencial electrostático, las curvas equipotenciales y los vectores de campo eléctrico pueden utilizar gnuplot, a continuación les dejo el código para graficar cada una. 5
6 Código Gnuplot Potencial Electrostático splot "potencial.dat" using 1:2:3 set xlabel "X" set ylabel "Y" set zlabel "V(X,Y)" set xrange [0:100] set yrange [0:100] set zrange [0:100] set title "Potencial Eléctrostático" unset key replot set term png set out "potencial.png" replot Curvas equipotenciales plot "potencial.dat" using 1:2:3:4 with vector head set xlabel "X" set ylabel "Y" set xrange [0:100] set yrange [0:100] set title "Curvas Equipotenciales" unset surface set contour base unset key replot set term png set out "equipotenciales.png" replot Vectores de Campo Eléctrostático plot "campo.dat" using 1:2:3:4 with vector head set xlabel "X" set ylabel "Y" set xrange [0:100] set yrange [0:100] set title "Líneas de Campo Eléctrico" unset key replot set term png set out "campo.png" replot 6
7 Yo decidí utilizar Origin para graficar cada uno de los anteriores, a continuación les muestro mis resultados: Para realizar esta gráfica sólo agreguen los datos del archivo potencial.dat, luego seleccionen la última columna, click derecho, Properties y en Plot Designation cambien a Z. Por último seleccionen las tres columnas vayan a Plot, 3D XYZ, 3D Scatter. 7
8 Para graficar las curvas de nivel agreguen los datos del archivo potencial.dat, luego seleccionen la última columna, click derecho, Properties y en Plot Designation cambien a Z. Por último seleccionen las tres columnas vayan a Plot, Contour, XYX Contour. Para graficar el campo vectorial agreguen los datos del archivo campo.dat, luego seleccionen la penúltima columna, click derecho, Properties y en Plot Designation cambien a X. Por último seleccionen las cuatro columnas vayan a Plot, Specialized, Vector XYXY. 8
9 Solución Proyecto 1. Círculo La idea es exactamente la misma que para el caso del cuadrado, sólo que ahora las condiciones de frontera son sobre dos radios: r max y r min que yo establecí igual 5 y 2,5 respectivamente. El refinamiento que pide inicialemnte el programa es para realizar el malleo del la región sobre el cual vamos a calcular el potencial. A continuación les muestro el código que realicé en Fortran 90. Código Fortran! Main !! Declaración de la matriz program laplace real(16), allocatable :: V(:,:),Ex(:,:),Ey(:,:) complex(16), allocatable :: P(:,:) integer :: i,j,k,n real(16) :: prec,vo,inicial,r,rmax,rmin,hx,hy,x,y,eps open(1,file="potencial.dat",status="replace") open(2,file="campo.dat",status="replace")! llenado de la matriz y las condiciones iniciales write(*,*) ">>Indica el refinamiento:" read*, n hx=10./n hy=10./n inicial=50. rmax=5. rmin=2.5 eps=1e-4 x=0. i=1 j=1 allocate (V(n+6,n+6),Ex(n+6,n+6),Ey(n+6,n+6),P(n+6,n+6)) do while (x<=10.) y=0. j=1 do while (y<=10.) r=sqrt((x-5.)**2+(y-5.)**2) if (abs(r-rmin)<eps) then else if (r<rmin.and. abs(r-rmin)>eps) then 9
10 else if (r>rmin.and. r<rmax.and. abs(r-rmax)>eps) then V(i,j)=inicial else if (r>rmax) then V(i,j)=0. else if (abs(r-rmax)<eps) then V(i,j)=0. end if P(i,j)=CMPLX(x,y) y=y+hy j=j+1 x=x+hx i=i+1! invoca la subrutina que calcula el metodo de relajación prec=1e-5 call relajacion(v,n,hx,hy,rmin,rmax,prec,eps)! invoca la subrutina que calcula el campo eléctrico call campo(v,n,ex,ey)! escritura del potencial y el campo en un archivo.dat do i=1,n+6 do j=1,n+6 write(1,10) REAL(P(i,j)),AIMAG(P(i,j)),V(i,j) 10 format("",3f20.12) do i=1,n+6 do j=1,n+6 write(2,20) REAL(P(i,j)),AIMAG(P(i,j)),Ex(i,j)/10.+REAL(P(i,j)),Ey(i,j)/10.+AIMAG(P(i,j) 20 format("",4f20.12) end program! subrutina Método de Relajación ! subroutine relajacion(v,n,hx,hy,rmin,rmax,prec,eps) integer, intent(in) :: n 10
11 real(16), dimension(n+6,n+6), intent(inout) :: V real(16), intent(in) :: prec,eps,rmin,rmax,hx,hy integer :: i,j real(16) :: dif,r,x,y real(16), dimension(n+6,n+6) :: V_ant dif=1. do while (dif>=prec) V_ant=V x=0. i=1 do while (x<=10.) y=0. j=1 do while (y<=10.) r=sqrt((x-5.)**2+(y-5.)**2) if (abs(r-rmin)<eps) then else if (abs(r-rmax)<eps) then V(i,j)=0. else if (r>rmax) then V(i,j)=(V(i-1,j)+V(i+1,j)+V(i,j-1)+V(i,j+1))/4. else if (r<rmin.and. abs(r-rmin)>eps) then else if (rmin<r.and. r<rmax.and. abs(r-rmax)>eps) then V(i,j)=(V(i-1,j)+V(i+1,j)+V(i,j-1)+V(i,j+1))/4. end if y=y+hy j=j+1 x=x+hx i=i+1 call magnitud(v-v_ant,n,dif) print*, dif end subroutine! subrutina que calcula el campo eléctrico ! subroutine campo(v,n,ex,ey) integer, intent(in) :: n real(16), dimension(n+6,n+6), intent(in) :: V real(16), dimension(n+6,n+6), intent(out) :: Ex,Ey 11
12 integer :: i,j,h h=1 do i=2,n+5 do j=2,n+5 Ex(i,j)=-(V(i+1,j)-V(i-1,j))/(2*h) Ey(i,j)=-(V(i,j+1)-V(i,j-1))/(2*h) end subroutine! subrutina que calcula la magnitud de una matriz ! subroutine magnitud(a,dima,dif) integer, intent(in) :: dima real(16), dimension(dima,dima), intent(in) :: A real(16), intent(out) :: dif real(16), dimension(dima,dima) :: B integer :: i dif=0. B=matmul(transpose(A),A) do i=1,dima dif=dif+b(i,i) end subroutine 12
13 Utilizando exactamente la misma metodologa del cuadrado, obtuve las siguientes gráficas para el potencial, las curvas equipotenciales y el campo eléctrico. 13
14 14
Electromagnetismo I. Semestre: Prof. Alejandro Reyes Coronado Ayud. Carlos Alberto Maciel Escudero Ayud. Christian Esparza López
Electromagnetismo I Semestre: 2015-2 Prof. Alejandro Reyes Coronado Ayud. Carlos Alberto Maciel Escudero Ayud. Christian Esparza López Solución al Proyecto 1 Solución por Carlos Maciel Escudero Solución
Más detallesFactorización LU y la librería GSL
Clase No. 7: MAT 251 Factorización LU y la librería GSL Dr. Alonso Ramírez Manzanares CIMAT, A.C. e-mail: alram@ cimat.mx web: http://www.cimat.mx/ alram/met_num/ Dr. Joaquín Peña Acevedo CIMAT A.C. e-mail:
Más detallesFactorización LU y la librería GSL. Graficaciíon en Gnuplot
Clase No 6: Factorización LU y la librería GSL Graficaciíon en Gnuplot MAT 251 Dr Alonso Ramírez Manzanares CIMAT, AC e-mail: alram@ cimatmx web: http://wwwcimatmx/ alram/met_num/ Dr Joaquín Peña Acevedo
Más detallesEl FORTRAN da la posibilidad de subdividir las tareas de un programa complejo en partes simples y claras. Procedimientos Externos SUBRUTINAS
El FORTRAN da la posibilidad de subdividir las tareas de un programa complejo en partes simples y claras. Procedimientos Externos SUBRUTINAS Subprogramas FUNSIONES Testeo independiente: un subprograma
Más detallesSubprogramas en Fortran 90. Seminario de Computación 2009
Seminario de Computación 2009 1. Algoritmos con nombre en Fortran 90 Un algoritmo con nombre es la generalización de un operador En Fortran 90 los algoritmos con nombre pueden ser: - Intrínsecos (propios
Más detallesElectromagnetismo I. ! r v a" Región'con'campo'B'
Electromagnetismo I Semestre: 05- Prof. Alejandro Reyes Coronado Ayud. Carlos Alberto Maciel Escudero Ayud. Christian Esparza López Solución a la Tarea 7 Solución por Carlos Maciel Escudero. Problema:
Más detallesAproximación discreta de mínimos cuadrados con lapack
Aproximación discreta de mínimos cuadrados con lapack Pablo Santamaría v0.2 (Julio 2009) 1. Planteo del problema En general, los problemas que aparecen en la ciencia nos enfrentan a la observación de cantidades
Más detallesAnálisis Numérico para Ingeniería. Clase Nro. 6
Análisis Numérico para Ingeniería Clase Nro. 6 Sistemas de Ecuaciones Lineales Temas a tratar: Normas Vectoriales y Matriciales. Análisis de Sensibilidad de Sistemas Lineales. Número de Condición. Estimación
Más detallesAnálisis Numérico para Ingeniería. Clase Nro. 2
Análisis Numérico para Ingeniería Clase Nro. 2 Temas a tratar Arreglos (Arrays) en FORTRAN Operaciones con Arreglos (Arrays) Lectura y Grabación de Archivos Subrutinas y Funciones Programación Modular
Más detallesIntroducción a Fortran
mario.merino@upm.es Escuela Técnica Superior de Ingenieros Aeronáuticos Universidad Politécnica de Madrid 4 de marzo de 2011 Índice Introducción 1 Introducción 2 3 4 Fin? Qué es programar? Un ordenador
Más detallesSubrutinas en Fortran 95 para la resolución de ecuaciones no lineales de una variable
Subrutinas en Fortran 95 para la resolución de ecuaciones no lineales de una variable Pablo Santamaría v0.3.1 (Mayo 2014) 1. Introducción En general, las raíces de una ecuación no lineal f(x) = 0 no pueden
Más detallesManual Rápido de Gnuplot
Manual Rápido de Gnuplot Hecho por: Alvaro Arteaga Guerrero Índice: Pag I. Introducción 2 II. Funciones 1. Iniciando GNUplot 3 2. Graficando en dos dimensiones funciones explícitas 3 3. Graficando archivos
Más detallesCurso - Taller Gnuplot
Curso - Taller Gnuplot Raymundo Hernández-Esparza Universidad Autónoma Metropolitana - Iztapalapa Abril 26, 2018 Curso - Taller Gnuplot Raymundo Hernández-Esparza Universidad Autónoma Metropolitana - Iztapalapa
Más detallesCreando fractales con el método de Newton
Creando fractales con el método de Newton Pablo Santamaría v. (Junio 9) El método de Newton, ideado por Isacc Newton alrededor de 67, constituye una de las técnicas numéricas más poderosas para aproximar
Más detallesRESUMEN DEL PROGRAMA GNUPLOT
RESUMEN DEL PROGRAMA GNUPLOT Gnuplot es un programa de representación grafica de funciones y superficies, tanto definidas a través de sus expresiones analíticas, como de un conjunto de datos o puntos del
Más detallesRecetario de gnuplot (versión 5.2)
Recetario de gnuplot (versión 5.2) 19 de enero de 2018 1 Inicio de gnuplot $ gnuplot 2 Representación de funciones de una variable y = f(x) Supongamos la función f(x) = sin(x) la salida es: 1 3 Representación
Más detallesPROGRAMACIÓN I. Grupo Lunes Miércoles 4PV1 14:00-16:00 14:00-15:00
PROGRAMACIÓN I Grupo Lunes Miércoles 4PV1 14:00-16:00 14:00-15:00 Prof. Miguel Hesiquio Garduño. Depto. De Ingeniería Química Petrolera ESIQIE-IPN hesiquio_gm@hotmail.com 1 de Agosto de 2011 OBJETIVO GENERAL
Más detallesProgramación para Modelado y Simulación: Sesion: 14, Programación orientada a Objetos y Dinámica Molecular Básica
Programación para Modelado y Simulación: Sesion: 14, Programación orientada a Objetos y Básica Profesores: Gabriel Villalobos Camargo., (gabriel.villalobosc@utadeo.edu.co) Camilo Andrés Espejo Pabón.,
Más detallesLENGUAJE FORTRAN. FUNCIONES Y SUBRUTINAS
LENGUAJE FORTRAN. FUNCIONES Y SUBRUTINAS Programación en Fortran Valentín Moreno ÍNDICE 1. Subprogramas 2. Funciones 3. Subrutinas 2 3 1. SUBPROGRAMAS 1. SUBPROGRAMAS Si necesitamos usar con frecuencia
Más detallesBREVE INTRODUCCIÓN A gnuplot
BREVE INTRODUCCIÓN A gnuplot 1. INTRODUCCIÓN gnuplot es un programa de visualización gráfica de datos científicos. Permite realizar gráficos 2D y 3D de curvas, lineas de nivel y superficies, tanto a partir
Más detallesCapítulo 3. Subprogramas. 3.1 Subprogramas FUNCTION
Capítulo 3 Subprogramas Con lo explicado hasta aquí se pueden escribir programas sencillos y no demasiado largos. Pero varias razones justifican la necesidad de disponer de otro tipo de recursos. Por una
Más detallesSubrutinas en Fortran 95 para la resolución de ecuaciones de una variable
Subrutinas en Fortran 95 para la resolución de ecuaciones de una variable Pablo Santamaría v0.1 (Junio 2009) 1. Introducción En general, las raíces de una ecuación no lineal f(x) = 0 no pueden ser obtenidas
Más detallesElectromagnetismo I. a) Sabemos que el campo magnético de un dipolo magnético está dado por. de forma que evaluando en θ = 0 tenemos
Electromagnetismo I Semestre: 205-2 Prof. Alejandro Reyes Coronado Ayud. Carlos Alberto Maciel Escudero Ayud. Christian Esparza López de la Tarea por Carlos Maciel Escudero. Problema: (35pts) Considera
Más detallesDiseño Computarizado 15023
Diseño Computarizado 15023 PROGRAMACIÓN: FORTRAN Profesor: Claudio García Herrera Departamento de Ingeniería Mecánica Universidad de Santiago de Chile Índice 1 Introducción 2 Estructura 3 Sentencias y
Más detallesImplementación del esquema de deflación para ecuaciones algebraicas
Implementación del esquema de deflación para ecuaciones algebraicas Pablo Santamaría v0.1 (Julio 2007) Introducción onsideremos el problema de determinar todos los ceros de una ecuación algebraica p(x)
Más detallesEsquemas repetitivos en Fortran 90. Esquemas repetitivos en Fortran 90. Esquemas repetitivos en Fortran 90. Tipos de Esquema
Los esquemas repetitivos permiten implementar iteraciones del lenguaje algorítmico (mientras, repetir, para, hasta). Podemos dividir los esquemas según: - Se conozcan el número de iteraciones a priori,
Más detallesEsquemas repetitivos en Fortran 90
Los esquemas repetitivos permiten implementar iteraciones del lenguaje algorítmico (mientras, repetir, para, hasta). Podemos dividir los esquemas según: - Se conozcan el número de iteraciones a priori,
Más detallesElectromagnetismo I. Solucion Examen Diagnóstico
Electromagnetismo I Semestre: 05- Prof. Alejandro Reyes Coronado Ayud. Carlos Alberto Maciel Escudero Ayud. Christian Esparza Escudero Examen Diagnóstico Resuelto por: Carlos Alberto Maciel Escudero Solucion
Más detallesAnálisis y Programación
Análisis Numérico y Programación Facultad de Ingeniería Química Primavera 2009 Dra. Lilia Meza Montes Instituto de Física 1 Conceptos Básicos 1. Varios 2. Estructuras de programación 3. Lenguaje Fortran
Más detallesGNUPLOT tiene dos modos de ejecución: batch e interactivo. El modo batch se accede ejecutando:
GRÁFICOS GNUPLOT es un programa interactivo para dibujar dirigido mediante comandos. Los comandos y funciones de GNUPLOT deberán escribirse con minúsculas o mayúsculas según se indique ya que el programa
Más detallesAlgunos comandos de UNIX que pueden ser útiles son los siguientes:
Dpto. de Matemáticas. CÁLCULO NUMÉRICO I. PRÁCTICAS EN MATLAB Para poder entrar en MATLAB debemos proporcionar al ordenador un nombre de usuario y un password. Los nombres de usuario son nombre.apellido
Más detallesPartícula en un pozo de potencial simétrico unidimensional
Partícula en un pozo de potencial simétrico unidimensional Pablo Santamaría v.1 (Mayo 212) Consideremos una partícula de masa m en un pozo de potencial simétrico unidimensional de ancho 2a y profundidad
Más detallesGuía rápida para gnuplot
Guía rápida para gnuplot Daniel Omar Avila Rojas Resumen El siguiente documento pretende dar a conocer y explicar algunas de las funciones básicas del programa gnuplot para el análisis de datos. Se explica
Más detallesEstructuras de Control
Algorítmica y Lenguajes de Programación Estructuras de Control Estructuras de Control. Introducción Hasta ahora algoritmos han consistido en simples secuencias de instrucciones Existen tareas más complejas
Más detallesAnálisis Numérico para Ingeniería. Clase Nro. 12
Análisis Numérico para Ingeniería Clase Nro. 12 Aproximación de Funciones Temas a tratar: Interpolación por Splines Cúbicos. Aproximación por ínimos Cuadrados. Criterios de elección: Tipo de Aproximación
Más detallesElementos de Cálculo Numérico
Universidad de Buenos Aires - Facultad de Ciencias Exactas y Naturales - Depto. de Matemática Elementos de Cálculo Numérico Primer cuatrimestre 2006 Práctica N 2: Condicionamiento de una matriz. Descomposición
Más detallesLa transformada rápida de Fourier (FFT) y otros algoritmos para la implementación de la DFT
1 La transformada rápida de Fourier (FFT) y otros algoritmos para la implementación de la DFT Existen diversas formas de implementar la transformada discreta de Fourier (DFT). Para estudiar algunas de
Más detallesFunciones y subrutinas
Algorítmica y Lenguajes de Programación Funciones y subrutinas Funciones y subrutinas. Introducción El diseño descendente permite obtener un programa que resuelva un problema dividiendo este en subproblemas
Más detallesIntroducción a la resolución numérica de problemas para ecuaciones en derivadas parciales (I)
Introducción a la resolución numérica de problemas para ecuaciones en derivadas parciales (I) Dpto. EDAN, Universidad de Sevilla Dpto. EDAN, Universidad de Sevilla () Resolución de EDP 1 / 15 Recordatorio
Más detallesAlgorítmica y Lenguajes de Programación. Punteros Introducción a estructuras dinámicas
Algorítmica Lenguajes de Programación Punteros Introducción a estructuras dinámicas Punteros estructuras dinámicas. Introducción! Las variables globales pertenecen al programa princil eisten desde que
Más detallesMétodo de diferencias finitas para ecuaciones diferenciales parciales elípticas. (Parte II)
Método de diferencias finitas para ecuaciones diferenciales parciales elípticas (Parte II) Métodos numéricos para sistemas lineales Solución numérica de EDPs requiere resolver sistemas de ecuaciones lineales
Más detallesPráctica 1: Sistemas de Ecuaciones Lineales - Matrices
ALGEBRA LINEAL Primer Cuatrimestre 2017 Práctica 1: Sistemas de Ecuaciones Lineales - Matrices En todas las prácticas, K es un cuerpo; en general K = Q (los números racionales, R (los números reales o
Más detallesDados dos números naturales n m 0 se define el número combinatorio n sobre m como
Valentín Moreno EJERCICIO 16 Dados dos números naturales n m 0 se define el número combinatorio n sobre m como C n,m = ( n m ) = n! m! (n m)! Escribir una función en Fortran que calcule el factorial de
Más detallesTRAZADO DE LÍNEAS EQUIPOTENCIALES
TRAZADO DE LÍNEAS EQUIPOTENCIALES Nota: Traer, por comisión un pendrive o cualquier otro tipo de dispositivo estándar de almacenamiento de datos. Objetivo: El objetivo de este trabajo es determinar en
Más detalles2. Práctica. 2.1.Introducción. 2.2.Funcionamiento de MATLAB. 2.3.Programas modulizados
2. Práctica 2.1.Introducción En esta práctica se prete dar una introducción al manejo del programa MATLAB. Éste es un programa de cálculo numérico que sirve en sus funciones más básicas, para trabajar
Más detallesIntroducción a la programación en Fortran
Introducción a la programación en Fortran Santiago de Mello Modelización numérica de la atmósfera Departamento de ciencias de la atmósfera Universidad de la República, Uruguay. Agosto de 2017 Santiago
Más detallesCeros de Funciones: Multivariable
Ceros de Funciones: Multivariable Prof. Marlliny Monsalve 1 1 Postgrado en Ciencias de la Computación Universidad Central de Venezuela Análisis Numérico May 19, 2015 Prof. Monsalve (UCV) Ceros Multivariable
Más detallesUniversidad Técnica Federico Santa María Departamento de Matemática Preinforme 2 Laboratorio Mat 270 Análisis Numérico Entrega 4 al 8 junio de 2018
Universidad Técnica Federico Santa María Departamento de Matemática Preinforme 2 Laboratorio Mat 270 Análisis Numérico Entrega 4 al 8 junio de 2018 Utilice el instructivo para presentar preinformes publicado
Más detallesAnálisis Numérico para Ingeniería. Clase Nro. 5
Análisis Numérico para Ingeniería Clase Nro. 5 Sistemas de Ecuaciones Lineales Temas a tratar: Tipos de Matrices Método de Triangulación de Gauss Método de Diagonalización de Gauss-Jordan Tácticas de Pivoteo
Más detallesEjercicio 1. Ejercicio 2
Guía de Ejercicios Ejercicio. Calcular los momentos de primer y segundo orden (media y varianza) de una variable aleatoria continua con distribución uniforme entre los límites a y b.. Sabiendo que la función
Más detallesComo pasar matrices como argumentos de subrutinas en
Como pasar matrices como argumentos de subrutinas en FORTRAN 77 Pablo Santamaría v0.1 (Agosto 2006) 1. Planteo del problema Los vectores y matrices usuales de la matemática son representados en FORTRAN
Más detallesElementos de Cálculo Numérico (M) - Cálculo Numérico
Universidad de Buenos Aires - Facultad de Ciencias Exactas y Naturales - Depto. de Matemática Elementos de Cálculo Numérico (M) - Cálculo Numérico Primer Cuatrimestre 204 Práctica N 2: Normas y Condicionamiento.
Más detalles10. Algoritmos de ordenación
10. Algoritmos de ordenación Se describen aquí algunos algoritmos de ordenación. Los comentarios relativos a su eficacia se deben tomar en términos relativos, pues esa eficiencia va a depender del tipo
Más detallesUniversidad de Concepción, Chile Departamento de Geofísica Programación Científica con Software libre
Gráficas Universidad de Concepción, Chile Departamento de Geofísica Programación Científica con Software libre Primavera, 2 Universidad de Concepción Rojas G. - Verdejo H. Gráficas Contenidos Figuras 2
Más detallesSolución de una clase simple de problemas de frontera usando un esquema más preciso con diferencias finitas
Solución de una clase simple de problemas de frontera usando un esquema más preciso con diferencias finitas Requisitos Es necesario resolver los ejercicios del tema Solución de una clase simple de problemas
Más detallesMatrices triangulares y descomposición LU
Matrices triangulares y descomposición LU Problemas para examen Si en algún problema se pide calcular el número de flops (operaciones aritméticas con punto flotante), entonces en el examen será suficiente
Más detallesUnidad 5 Problemas de álgebra lineal numérica.
Unidad 5 Problemas de álgebra lineal numérica. Eliminación gaussiana. Factorización LU. Sea Ax = b un sistema de n ecuaciones lineales con n incógnitas, donde A es una matriz cuadrada de orden n no singular
Más detallesEl álgebra de las matrices Suma y producto por un escalar Producto de matrices Propiedades y ejemplos
El álgebra de las matrices Suma y producto por un escalar Producto de matrices Propiedades y ejemplos c Jana Rodriguez Hertz p. 1/1 Suma de matrices - definición Si dos matrices A,B M m n K tienen el mismo
Más detallesLa transformada rápida de Fourier (FFT) y otros algoritmos para la implementación de la DFT
1 La transformada rápida de Fourier (FFT) y otros algoritmos para la implementación de la DFT Existen diversas formas de implementar la transformada discreta de Fourier (DFT). Para estudiar algunas de
Más detallesÍNDICE 1. Introducción a las computadores 2. Programación y diagramas de flujo 3. Solución numérica de ecuaciones
ÍNDICE 1. Introducción a las computadores... 17 1-1 Generalidades... 17 1-2 Clasificación y componentes de una computadora... 17 1-3 Solución de problemas... 19 1-4 Diagrama de bloque y de flujo... 19
Más detallesFORTRAN 77 y Cómputo Científico
FORTRAN 77 y Cómputo Científico Guilmer González Facultad de Ciencias UNAM Programación Avanzada para Ingenieros Petroleros asilados en la Facultad de Ciencias 2008-2 FORTRAN 77 y Cómputo Científico Objetivos:
Más detallesAlgorítmica y Lenguajes de Programación. Ficheros
Algorítmica y Lenguajes de Programación Ficheros Ficheros. Introducción Un fichero es una unidad de información almacenada en disco a la que se asigna un identificador único. Los ficheros nos ofrecen la
Más detallesMínimos Cuadrados: Ejemplo clave
Mínimos Cuadrados: Ejemplo clave Departamento de Matemáticas, CCIR/ITESM 9 de febrero de 20 Índice 24..Introducción............................................... 24.2.Ejemplo.................................................
Más detallesEigenvalores y eigenvectores. Método de la potencia
Clase No. 12: MAT 251 Eigenvalores y eigenvectores. Método de la potencia Dr. Alonso Ramírez Manzanares CIMAT A.C. e-mail: alram@ cimat.mx web: http://www.cimat.mx/ alram/met_num/ Dr. Joaquín Peña Acevedo
Más detallesTRAZADO DE LÍNEAS EQUIPOTENCIALES
TRAZADO DE LÍNEAS EQUIPOTENCIALES Nota: Traer, por comisión, dos hojas de papel carbónico de x 30 cm c/u, una hoja A3 o similar de 5 x 30 cm un pendrive o cualquier otro tipo de dispositivo estándar de
Más detallesDra. Jessica Andrea Carballido
Dra. Jessica Andrea Carballido jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR Cuando la complejidad de los problemas aumenta, la tarea de hallar una solución
Más detallesCálculo Numérico. Curso Ejercicios: Preliminares I
Cálculo Numérico. Curso 07-08. Ejercicios: Preliminares I 1. (a) Compruebe que la inversa de una matriz, L, triangular inferior de orden n puede calcularse como sigue: Para j = 1,,..., n e i = j, j + 1,...,
Más detallesSistemas de ecuaciones lineales. Matrices
Dpto de MATEMÁTICA APLICADA A LOS RECURSOS NATURALES Sección departamental en la ETSI de Montes Algebra Sistemas de ecuaciones lineales Matrices Sistemas lineales Solución de un sistema lineal Sistemas
Más detallesAnálisis Numérico para Ingeniería. Clase Nro. 5
Análisis Numérico para Ingeniería Clase Nro. 5 Sistemas de Ecuaciones Lineales Temas a tratar: Tipos de Matrices Método de Triangulación de Gauss Método de Diagonalización de Gauss-Jordan Tácticas de Pivoteo
Más detallesINTRODUCCIÓN A LOS MÉTODOS NUMÉRICOS
INTRODUCCIÓN A LOS MÉTODOS NUMÉRICOS PRÁCTICA 1 Curso 2017-2018 1. Realizar un programa Fortran que sume repetidamente el valor 0.1 en una variable de tipo REAL*4 (inicializada a cero) e imprima los resultados.
Más detallesEjercicios: Estimando π con métodos Monte Carlo y cálculo del mayor autovalor de una matriz
Ejercicios: Estimando π con métodos Monte Carlo y cálculo del mayor autovalor de una matriz 6 de marzo de 05. Cálculo de π con métodos Monte Carlo El objetivo de este ejercicio consiste en estimar el valor
Más detallesMultiplicación de matrices simétricas
Multiplicación de matrices simétricas La traspuesta de una matriz A n n es definida como una matriz A T n n tal que A T [i, j] =A[j, i] paracadai, j 2{1,...,n} Además, una matriz A es simétrica si A =
Más detallesCalidad del Software. Ejercicios Tema 4 Conceptos de pruebas
Tema 4 Conceptos de Pruebas Calidad del Software Ejercicios Tema 4 Conceptos de pruebas Calidad del Software Enfoque de Caja Blanca: Prueba del camino básico FUNCIÓN PASCAL Especificar un conjunto de pruebas
Más detallesEJERCICIOS EXÁMENES ANTERIORES
EJERCICIOS EXÁMENES ANTERIORES 1. Implementar una función cuyos argumentos de entrada sean los valores de tres ángulos (medidos en grados) y que devuelva: 0 si los tres ángulos no pueden pertenecer a un
Más detallesProgramación con Matlab
Programación con Matlab Práctica 1b: Graficando con Matlab Prof. Guilmer Gonźalez Graficación 1D Hacer gráficos en Matlab es muy sencillo. No necesitamos definir la ventana de despliegue ni el sistema
Más detallesVectoriales: Velocidad, Aceleración, Fuerza, Campo eléctrico, Campo magnético
Tema: Campos escalares y vectoriales. Facultad de Ingeniería. Escuela de Eléctrica. Asignatura: Teoría Electromagnética. I. Objetivos. Verificar instrucciones y comandos en Matlab para graficar campos
Más detallesProblemas de exámenes de Formas Bilineales y Determinantes
1 Problemas de exámenes de Formas Bilineales y Determinantes 1. Sea R 3 con el producto escalar ordinario. Sea f un endomorfismo de R 3 definido por las condiciones: a) La matriz de f respecto de la base
Más detallesAnálisis Numérico para Ingeniería. Clase Nro. 7
Análisis Numérico para Ingeniería Clase Nro. 7 Sistemas de Ecuaciones No Lineales Temas a tratar: Método de Bisección. Método de Punto Fijo. Método de Punto Fijo Sistemático. Método de Newton-Raphson.
Más detallesBreve Tutorial sobre el Graficador GNUPlot
Breve Tutorial sobre el Graficador GNUPlot Como iniciar el GNUPlot: El programa para graficar datos científicos Gnuplot (standard en cualquier distribución Linux) se inicia desde cualquier ventana terminal
Más detallesProgramación MATLAB: Ecuaciones, polinomios, regresión e interpolación.
Programación MATLAB: Ecuaciones, polinomios, regresión e interpolación. Curso: Métodos Numéricos en Ingeniería Profesor: Dr. José A. Otero Hernández Correo: j.a.otero@itesm.mx web: http://metodosnumericoscem.weebly.com
Más detallesDra. Jessica Andrea Carballido
Dra. Jessica Andrea Carballido jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR Problema Diseño de la solución Dividir y conquistar Implementación de los
Más detallesSubrutinas en fortran 77 para el algebra de matrices
Subrutinas en fortran 77 para el algebra de matrices Pablo Santamaría v0.1.1 (Mayo 2007) 1. Planteo del problema Como comentamos en un apunte anterior 1, los vectores y matrices usuales de la matemática
Más detallesMAT web:
Clase No. 7: MAT 251 Matrices definidas positivas Matrices simétricas Dr. Alonso Ramírez Manzanares Depto. de Matemáticas Univ. de Guanajuato e-mail: alram@ cimat.mx web: http://www.cimat.mx/ alram/met_num/
Más detallesSEMINARIO FINANZAS - RIESGO UNIDAD 2 - MEDICION DEL RIESGO SEMANA 5. GUIA DE TALLER: CÁLCULO DE LA CURVA DE LOS PORTAFOLIOS OPTIMOS.
SEMINARIO FINANZAS - RIESGO UNIDAD 2 - MEDICION DEL RIESGO SEMANA 5. GUIA DE TALLER: CÁLCULO DE LA CURVA DE LOS PORTAFOLIOS OPTIMOS. PROPOSITOS: Esta guía tiene como propósito orientar el cálculo de la
Más detallesProfesor Francisco R. Villatoro 13 de Diciembre de 1999 SOLUCIONES. 1. Una matriz A de n n es diagonalmente dominante (estrictamente) por filas si
Cuarta relación de problemas Técnicas Numéricas Profesor Francisco R. Villatoro 13 de Diciembre de 1999 SOLUCIONES 1. Una matriz A de n n es diagonalmente dominante estrictamente por filas si a ii > a
Más detallesAproximación funcional por mínimos cuadrados
Aproximación funcional por mínimos cuadrados Laboratori de Càlcul Numèric (LaCàN) Departament de Matemàtica Aplicada III Universitat Politècnica de Catalunya (Barcelona) http://www-lacan.upc.es Introducción
Más detallesAlgorítmica y Lenguajes de Programación. Ordenación (ii) En la lección anterior se vieron dos métodos de ordenación:
Algorítmica y Lenguajes de Programación Ordenación (ii) Ordenación. Introducción En la lección anterior se vieron dos métodos de ordenación: Método de la burbuja. Método de la burbuja con señal. El primero
Más detallesExtremos de funciones de varias variables
Extremos de funciones de varias variables R. Álvarez-Nodarse Universidad de Sevilla Cuándo una función f (x) de una variable tiene extremo? Cuándo una función f (x) de una variable tiene extremo? Definición
Más detallesCarrera: GCM Participantes. Representantes de las Academias de Ingeniería en Geociencias. Academia de Ingeniería en Geociencias
1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Análisis Numérico y Programación Ingeniería en Geociencias GCM-0502 3-2-8 2.- HISTORIA
Más detallesAgenda. Lenguaje FORTRAN. Actualizacion y nivelacion de conocimientos de computación. Fortran 77. DIA 2 (15 de julio): Lenguaje FORTRAN
Agenda Actualizacion y nivelacion de conocimientos de computación orientado para futuros participantes del curso de HPC DIA 2 (15 de julio): Lenguaje FORTRAN FORTRAN 77, FORTRAN 90, FORTRAN 95 Estructuras
Más detallesIntroduccion a C++ y Fortran 90/95
Universidad Nacional de Ingeniería Facultad de Ciencias Física Computacional CC063 Introduccion a C++ y Fortran 90/95 Prof: J. Solano 2012-I Declaracion de variables para C/C++ y Fortran 90/95 2 Tipos
Más detallesConceptos básicos de programación - II
Conceptos básicos de programación - II 1. Manejo de Vectores y Matrices Tenemos una tabla como la que mostramos en la Fig. 1 con valores X e Y. Para manejar una serie de datos en forma de vector o matriz
Más detallesMétodos numéricos para sistemas de ecuaciones. (Prácticas)
Métodos numéricos para sistemas de ecuaciones (Prácticas) Métodos iterativos UNIVERSIDAD POLITÉCNICA DE VALENCIA 1 Índice general 3. Métodos iterativos 3 3.1. Métodos iterativos básicos....................
Más detallesTutorial de MATLAB Curso Intensivo sobre Asimilación de Datos
Tutorial de MATLAB Curso Intensivo sobre Asimilación de Datos Buenos Aires 2008 WIKIPEDIA: MATLAB es la abreviatura de MATrix LABoratory (laboratorio de matrices). Se trata de un software matemático muy
Más detallesCátedra I Informática Autor I Carlos Bartó
FCEFyN Departamento de Computación Informática Examen - 07-07-2008 Apellido y Nombres: Matrícula: Carrera: PROBLEMAS: 1) Especifique en el lenguaje C++ una función denominada calc_fecha() que tenga como
Más detallesHerramientas básicas II
Curso: Modelización y simulación matemática de sistemas Metodología para su implementación computacional Herramientas básicas II Alejandro D. Otero (aotero@fi.uba.ar) Facultades de Ciencias Exactas y Naturales
Más detallesProgramación MATLAB: Ecuaciones, polinomios, regresión e interpolación.
Programación MATLAB: Ecuaciones, polinomios, regresión e interpolación. Curso: Métodos Numéricos en Ingeniería Profesor: Dr. José A. Otero Hernández Correo: j.a.otero@itesm.mx web: http://metodosnumericoscem.weebly.com
Más detallesANEXOS. NODOS
ANEXOS ANEXOS. ANEXO I. Matriz de Adyacencia Tabla 5.4. Matriz de Adyacencia. NODOS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 1 0 0.11 0.32 0.32 1000 0.1 1000 1000 1000
Más detallesDiseño descendente. Su ejecución se controla desde alguna otra unidad de programa (que puede ser el programa principal u otro procedimiento externo).
Diseño descendente Diseño descendente, top-down, que consiste en dividir el problema en subproblemas más pequeños, que se pueden tratar de forma separada. En Fortran, hay dos tipos de procedimientos externos:
Más detalles