Mam następujący problem: Chcę zasymulować system sterowania. Ponieważ jest to dość skomplikowane, użyłem komputera do wyprowadzenia pewnych (skomplikowanych) równań, które można wyeksportować tylko do kodu fortran77. Na moim komputerze programistycznym to nie problem (maszyna linuxowa).Jak kompilować pojedyncze obiekty fortranowe za pomocą translatora f2c?
Nie Chcę tego robić na sprzęcie i tutaj muszę użyć systemu operacyjnego Windows. Niestety matlab nie obsługuje gfortran w oknach. Dlatego nie mogę skompilować plików fortranów na tym pudełku.
Mój pomysł był teraz przetłumaczony na C, ponieważ kompilator języka C jest dostępny pod adresem matlab przy wygrywaniu. Jakieś inne (lepsze) opcje?
Mam kilka PODRĘCZNIKÓW w następujący sposób.
SUBROUTINE sys_rhs (x, v, dx, param)
REAL*8 x(6)
C code is coming here
RETURN
END SUBROUTINE
Czy jest dobrą praktyką i to działa, aby korzystać z funkcji sys_rhs__
w funkcji interfejsu napisany w C? Problem polega na tym, że nie mogę go przetestować, ponieważ nie mam masywnego dostępu do maszyny Windows. Powinien działać, jeśli go wypróbuję i nie będę musiał dużo eksperymentować.
Również potrzebuję lib w oknach? Gdzie mogę je zdobyć?
Dzięki Christian
Tłumaczenie na C naprawdę wydaje się najgorszą opcją. W zależności od wersji MATLAB-a będzie on obsługiwał * trochę * kompilatora fortran. Ponieważ każdy kompilator fortran z ostatnich 10-15 lat skompiluje kod f77, wystarczy znaleźć inny kompilator - ten, który pracuje z MATLAB i używa tego. Lub jeśli masz licencję Matlaba na Linuksa, użyj intel-a na Linuksie - darmowego na Linuksie, jeśli pamięć mi służy. Poza tym, ten facet podobno dostał gfortran/g95 + matlab, żeby grać ładnie, więc jest to możliwe. – Rook
Jak napisałem: pod Linuksem nie ma problemu. Mogę skompilować za pomocą gfortran i symulować.Ale sprzęt jest podłączony do wygrywającej maszyny ... Na http://www.mathworks.de/support/compilers/R2010a/win32.html wymieniony jest tylko autorski kompilator intel-fortran (R2010a jest instalowany przez administratora). –
@ChristianWol: z twojego pytania nie wynika jasno, czy mówisz o tworzeniu plików Fortran MEX? – Amro