Topic outline

  • Fortran para la Simulación Electromagnética (2007)

    fortran              

    Fortran para la Simulación Electromagnética (2007)

         

    Profesores

    Juan Saiz Ipiña

    Miguel Ángel Solano Vérez

    Departamento de Ingeniería de Comunicaciones

       

       

       

        

       

     

     


    Palabras Clave de la Asignatura

    Fortran, Simulación, Electromagnética.

  • Programa

    programa

     

     

    Datos identificativos de la Asignatura

    • Asignatura: Fortran para la Simulación Electromagnética

    • Departamento / Área: Departamento de Ingeniería de Comunicaciones

    • Idioma de impartición: Español

    • Profesor responsable: Juan Saiz Ipiña

    • Otros profesores: Miguel Ángel Solano Vérez

     

     

     

        Programa de la asignatura    

     

    Capítulo 1

    • 1.1. Introducción.

    • 1.2. Cronología de tareas.

    • 1.3. Normativa de desarrollo.

    • 1.4. Aspectos básicos de un ordenador.

    • 1.5. Lenguajes de programación.

    • 1.6. Nociones básicas sobre el sistema operativo.

    • 1.7. Descripción del entorno de programación.

     

    Capítulo 2

    • 2.1. Ejemplo de un programa en Fortran.

    • 2.2. Normas de escritura de un programa Fortran.

    • 2.3. Tipos de datos: constantes y variables.

     

    Capítulo 3

    • 3.1. Expresiones aritméticas y de asignación.

    • 3.2. Funciones intrínsecas.

     

    Capítulo 4

    • 4.1. Expresiones lógicas.

    • 4.2. Estructuras de control.

     

    Capítulo 5

    • 5.1. Lazos.

    • 5.2. Anidamiento de lazos.

    • 5.3. Sentencia Do While.

     

    Capítulo 6

    • 6.1. Arrays.

    • 6.2. Combinación de lazos y arrays.

    • 6.3. Sentencia data.

    • 6.4. Sentencia parameter.

     

    Capítulo 7

    • 7.1. Lectura y escritura por fichero.

    • 7.2. Sentencias end file, rewind y backspace.

    • 7.3. Opciones especiales.

     

    Capítulo 8

    • 8.1. Entrada y salida con formato.

    • 8.2. Códigos de formato.

    • 8.3. Recomendaciones para la creación de ficheros.

     

    Capítulo 9

    • 9.1. Programación modular.

    • 9.2. Funciones.

    • 9.3. Subrutinas.

  • Bibliografía

    bibliografia

      

     

        Básica    

      

    • Deberán leerse los materiales docentes de aprendizaje correspondiente a los 9 capítulos disponibles.

     

     

     

        Complementaria    

     

    • G.J. Borse (traducción de Francisco José López Hernández) (1989): «Programación en Fortran77 con aplicaciones de cálculo numérico en ciencias e ingeniería». Madrid. Anaya, D.L.

    • G.J. Borse (1991): «Fortran 77 and numerical methods for engineers». Boston. PWS-KENT, cop.

    • Gary J. Bronson (1999): «Modern Fortran 77/90/2000». 3ª Ed. El Granada, California. Scott Jones.

  • Materiales de Clase

    materiales

     

     

  • Ejercicios

    ejercicios

      

     

        Ejercicios    

     

       

      

      

        Indicaciones sobre los ejercicios    

     

    El propósito de los ejercicios que se proponen a continuación, es que el alumno/a que haya seguido el curso y realizado los ejemplos con soluciones de cada capítulo, practique con ejemplos algo más complicados y ahora ya relacionados con problemas electromagnéticos concretos.

    Cada ejemplo consta de una primera parte con la descripción física del problema que contiene las expresiones requeridas para ser usadas en el programa Fortran a realizar. Asimismo, se incluye alguna referencia donde poder consultar de forma ampliada los conceptos relacionados con el problema propuesto.

    La programación en Fortran del problema planteado se estructura en tres niveles con dificultad creciente. Lo más adecuado es realizarlos de forma secuencial, pues lo habitual es que la realización de uno sirva de apoyo para los siguientes. En cualquier caso, no es imprescindible hacerlo así. Cada nivel se cataloga con un tanto por ciento relativo a la dificultad que se estima respecto a la consecución final del problema. Los niveles son:

      Nivel 1

    60 %

      Nivel 2

    80 %

      Nivel 3

    100 %

    Esto significa que realizar correctamente el Nivel 1 representaría adquirir un conocimiento sobre la programación del problema del 60% (algo así como optar a una calificación máxima de 6 sobre 10 si esto fuera un examen). De la misma forma para los otros dos niveles.

     

     

     

        Recomendaciones en la programación    

     

    A continuación se enumeran unos cuantos consejos útiles a la hora de escribir el código Fortran que resuelva el problema planteado:

    • No escribir el código Fortran de un tirón y luego compilar. Esto produce habitualmente una gran cantidad de errores de todo tipo que son muy difíciles de localizar.

    • Lo correcto es escribir cada rutina en forma de bloques cerrados o compactos, comprobándose su funcionamiento cada vez. En otras palabras, es mejor hacer las cosas poco a poco. Por ejemplo, se puede realizar la lectura y escritura de datos y sólo una vez comprobado su correcto funcionamiento pasar al siguiente bloque y así sucesivamente.

    • Es muy aconsejable (aunque en el nivel 1 no se pida) realizar la lectura de datos con formato de manera clara, por ejemplo, según se muestra en el capítulo correspondiente. Ello quiere decir que el usuario del programa debe saber dónde colocar la parte entera y la parte decimal de cada variable. La razón para ello, es que cuando otra personada quiera utilizar el programa realizado, o simplemente cuando ha pasado el tiempo, no sabemos o no nos acordamos de cómo hay que escribir los datos de las variables de entrada. Por supuesto en el fichero de entrada es imprescindible indicar las unidades de aquellos datos de entrada que las tengan. No hacer esto es un error grave.

    • En el fichero que contiene los datos de salida, deben siempre incluirse, sin excepción, los datos de entrada, incluyendo sus unidades cuando sea necesario.

    • Es conveniente llamar a las variables con nombres que identifiquen las cantidades físicas que representan. Eso ayuda a encontrar posibles errores  en el proceso de depuración, además de hacer el código del programa más correcto y fácil de entender.

    • Después de un tiempo, es difícil acordarse del significado de muchas de las variables y de qué hace cada parte del programa y sus subrutinas. Por ello, es muy útil comentar el programa de la manera que se ha visto en los ejemplos de cada tema. Esto ayuda a entender en el futuro qué hace cada bloque de un programa.

    • Si se utilizan rutinas (subrutinas) o funciones es muy interesante describir cuáles son las variables de entrada y salida.

    • En Fortran no hay instrucciones para definir variables locales (aquellas que sólo se conocen en la rutina en la que se definen) ni globales (las que se conocen en todas las rutinas del programa). Aún así, es muy conveniente dedicar tres bloques diferenciados para la definición de variables; a saber:

      • Un bloque en el que se definan sólo aquellas variables utilizadas como entrada y salida de subrutinas y funciones.

      • Un bloque en el que se definan sólo aquellas variables utilizadas como bloques common.

      • Un bloque en el que se definan sólo aquellas variables utilizadas en la propia rutina pero que no son conocidas en el resto de rutinas que forman el programa
    • Con esto se consigue tener una estructura de definición de variables de forma coherente que permite encontrar de forma ágil y sencilla dónde se define cada variable.

      • Una labor esencial en todo el aquél que realice un programa es la comprobación de que, una vez que el programa funciona, lo hace correctamente, es decir, proporciona resultados correctos. Esta comprobación se puede hacer de diferentes formas. Algunas estrategias, relativas a problemas científicos y no necesariamente excluyentes entre sí, se relacionan a continuación:

      • Si los resultados se corresponden con una fórmula cerrada (analítica) realizar una comprobación resolviendo algún caso concreto con la calculadora.

      • También se puede ejecutar el programa realizado para algunos casos particulares con solución sencilla conocida. Si para esos casos particulares, “la cosa” funciona nos aseguramos, no de que el programa funciones bien para todos los casos, pero sí de que, al menos, vamos por buen camino.

      • Cuando se disponga de datos y resultados obtenidos por otros caminos (libros, artículos científicos, Internet, etc.) se pueden comparar con los nuestros y ver su igualdad o similitud.

  • Otros Recursos

    otros_recursos

     

     

    • OR-F-001. Descarga del programa Fortran para Windows XP/2000/ME/98/95.
    • OR-F-002. Descarga de más software de Fortran.
  • Pruebas de Evaluación

    evaluacion

  • Guía de Aprendizaje

    guia

     

     

    • PDF-icon  Aquí puede descargarse la Guía de Aprendizaje en formato PDF.
  • Sobre el Profesor

    profesor

      

      

    juan 

    Juan Saiz Ipiña

     

    Departamento de Ingeniería de Comunicaciones

    UNIVERSIDAD DE CANTABRIA

      

    miguel_angel

    Miguel Ángel Solano Vérez

     

    Departamento de Ingeniería de Comunicaciones

    UNIVERSIDAD DE CANTABRIA