Ваше завдання складне. Вам дійсно потрібно добре знати Фортран. Ви повинні бути обережними щодо того, як подібні / різні Fortran роблять розрахунки та які правила урізання та округлення застосовуються. Крім того, вам слід бути обережними щодо значення примітивних типів у C # та Fortran.
Ще один підхід із запропонованих пропозицій (не обов'язково кращий, це просто інший):
A - Подумайте про повторне написання коду в C # на основі ділових знань та функції, використовуйте код Fortran лише як орієнтир
B -прочитайте, використовуючи комерційний інструмент, який виконує завдання перетворення - Приклад: DataTek
Якщо рутина являє собою стандартну функцію або функцію, для якої ви можете придбати готовий dll (наприклад, числова інтеграція), використовуйте стандартну функцію або комерційний продукт замість ручного перекладу, і ваша проблема вирішена.
Якщо вищезгадане не вирішує, відповідь на це питання:
Чи потрібно мені оптимізувати код або просто змусити його працювати. Іншими словами, яка цінність бізнесу - витратити 500 годин на покращення коду?
якщо немає значення в оптимізації, перекладіть код рядок за рядком, і ви закінчите.
Якщо це все ще не добре, то:
0-Перетворіть рядок коду Fortran за рядком в C # (або використовуйте Fortan CLR)
1 - Зробіть швидкий тест, переконайтеся, що він працює
2-Використовуйте повторний факторинг (доступні комерційні інструменти), щоб допомогти вам написати код більш оптимізованим способом.
Удачі.