09/03/28 22:43:15
ちょっと便乗して質問します。今、不便を我慢して使ってきたcommon文を全部module文にしようかと
思ってるんですけど、何か気をつけるべきことやありがちな落とし穴とかありますかね?
もちろん自分でテストはしますが、後の運用性とか未然にバグを防ぐとかでもっと上手く出来そうなら
指摘してもらえますか?例えばこんな感じです。
PARAMETER (MNM=5000,MNC=100)
DOUBLE PRECISION CC(MNC)
COMMON /CELL/ CC,CG(6,MNC),NCX,NCY
COMMON /MOLS/ NM,PP(3,MNM),PV(3,MNM)
ってのが使用される各サブルーチン先頭に書いてあったのを
↓
module mnpara
PARAMETER MNM=5000,MNC=100
end module
module cell
use mnpara
DOUBLE PRECISION CC(MNC)
real CG(6,MNC)
integer NCX,NCY
end module
module mols
use mnpara
real PP(3,MNM),PV(3,MNM)
integer NM
end module
と、mainの前に書いて、各サブルーチン中でuse cellなりuse molsなりと。
double precisionと型宣言の扱いがこれでいいか良くわからんのですがこれで大丈夫でしょうか?