Tu tarea es complicada. Realmente necesitas conocer bien a Fortran. Debe tener cuidado con la forma en que Fortran hace cálculos similares / diferentes y qué reglas de truncamiento y redondeo se aplican. Además, debe tener cuidado con los tipos primitivos que significan en C # y Fortran.
Otro enfoque de lo que ha sido sugerencia (no necesariamente una mejor, es solo otra):
A - Considere volver a escribir el código en C # basado en el conocimiento del negocio y la función, use el código Fortran solo como referencia
B - Considere usar una herramienta comercial que realiza el trabajo de conversión - Ejemplo: DataTek
Si la rutina representa una función estándar o una función para la que puede comprar una dll preparada (como la integración numérica), use la función estándar o el producto comercial en lugar de la traducción manual, y su problema se resolverá.
Si lo anterior no es suficiente, responda esta pregunta:
¿Necesito optimizar el código o simplemente hacer que se ejecute? En otras palabras, ¿cuál es el valor comercial de pasar 500 horas para mejorar el código?
Si no hay valor en la optimización, traduzca el código línea por línea y ya está.
Si esto todavía no es bueno, entonces:
0-Convierta el código Fortran línea por línea en C # (o use Fortan CLR)
1-Haz una prueba rápida asegúrate de que se ejecute
2-Use una refactorización (hay herramientas comerciales disponibles) para ayudarlo a escribir el código de una manera más optimizada.
Buena suerte.