Ваша задача сложная. Вам действительно нужно хорошо знать Фортран. Вы должны быть осторожны с тем, насколько похожи / различны Фортран, выполняет вычисления и какие правила усечения и округления применяются. Кроме того, вы должны быть осторожны с примитивными типами, означающими C # и Fortran.
Другой подход из того, что было предложением (не обязательно лучше, это просто еще один):
A - Подумайте о переписывании кода на C #, основываясь на знаниях и функциях бизнеса, используйте код на Фортране в качестве справочного материала.
B - Рассмотрите использование коммерческого инструмента, который выполняет конвертацию - Пример: DataTek
Если подпрограмма представляет собой стандартную функцию или функцию, для которой вы можете купить готовую dll (например, числовую интеграцию), используйте стандартную функцию или коммерческий продукт вместо ручного перевода, и ваша проблема решена.
Если вышеупомянутое не сокращает это, ответьте на этот вопрос:
Нужно ли оптимизировать код или просто заставить его работать. Другими словами, какова коммерческая ценность того, чтобы тратить 500 часов на улучшение кода?
если в оптимизации нет значения, переведите код построчно, и все готово.
Если это все еще не хорошо, тогда:
0-Конвертировать код Фортран построчно в C # (или использовать Fortan CLR)
1-Сделайте быстрый тест, чтобы убедиться, что он работает
2-Используйте рефакторинг (коммерческие инструменты доступны), чтобы помочь вам написать код более оптимизированным способом.
Удачи.