Anuncio

Colapsar
No hay ningún anuncio todavía.

Duda Sumatorios Fortran

Colapsar
X
 
  • Filtro
  • Hora
  • Mostrar
Borrar todo
nuevos mensajes

  • Fortran Duda Sumatorios Fortran

    Hola!

    Esto es una chorrada para los que tienen práctica programando, pero yo soy poco hábil y me atasco en estas cosas.

    Estoy haciendo integración numérica con Fortran y tengo que hacer un programa que me evalúe una integral de resultado conocido en un intervalo. La fórmula para calcular la integral es:



    Donde f(a) y f(b) son los valores de la función en los extremos de los intervalos.

    Mi problema es que no sé cómo hacer el sumatorio. Por ejemplo, si tengo la función , ¿cómo implemento el sumatorio con bucles?

    Seguro que es una tontería, pero no me sale. Muchas gracias,

    Un saludo

  • #2
    Re: Duda Sumatorios Fortran

    Inicializa la suma (digamos S) a cero, acontinuación pon un bucle DO I=1,n-1. En el cuerpo del DO incrementa el valor de la suma, S = S + f(a + I * b). A continuación del bucle multiplica por 2 y suma los valores extremos de la función, S = 2 * S + f(a) + f(b).

    Te pusiera el código, pero ya tengo el FORTRAN algo olvidado. Queda algo así, pero corrige la sintaxis:

    Código:
    S = 0
    DO I = 1,N-1
      S = S + F(A + I * B)
    END
    S = 2 * S + F(A) + F(B)
    Saludos,

    Al

    PD. Cuando te respondí iba saliendo a trabajar y no me percaté que tienes un error en el argumento de la función dentro de la sumatoria. Debería decir .
    Última edición por Al2000; 19/10/2011, 02:29:27. Motivo: Añadir postdata.
    Don't wrestle with a pig in the mud. You'll both get dirty, but the pig will enjoy it. - Parafraseando a George Bernard Shaw

    Comentario


    • #3
      Re: Duda Sumatorios Fortran

      Cierto, es verdad, me he colado escribiendo eso.

      Muchas gracias Al!! Ya he resuelto las dudas que tenía. Esto de calcular los sumatorios numéricamente me trae un poco de cabeza.

      Un saludo!!

      Comentario

      Contenido relacionado

      Colapsar

      Trabajando...
      X