fortranでモジュールの中にいくつかの関数があります。関数1を関数2の中で使いたいです。wmとwpでv(x、s)を使う必要があります。よろしくお願いします。
fortran90
1module module_cmm 2 implicit none 3contains 4 function v_prime(x, s) result(vpri) 5 real(8) vpri, x 6 integer s 7 real(8) :: atil = 10 8 vpri = 2.0*acos(-1.0)*atil*sin(2.0*acos(-1.0)*(x-0.25*s)) 9 end function v_prime 10 function w_prime(u) result(wpri) 11 real(8) wpri, u 12 real(8) :: kupper = 10 13 wpri = 2.0*acos(-1.0)*kupper*sin(2.0*acos(-1.0)*(u+1.0/3.0)) 14 end function w_prime 15 function v(x, s) result(vres) 16 real(8) vres, x 17 integer s 18 real(8) :: atil = 10, myutil 19 vres = atil* (1.0-cos(2.0*acos(-1.0)*(x-0.25*s)))-0.25*s*myutil 20 end function v 21 function w(u) result(wres) 22 real(8) wres, u 23 real(8) :: kupper = 10 24 wres = kupper*(1.0-cos(2.0*acos(-1.0)*(u+1.0/3.0))) 25 end function w 26 function wp(x, s) result(wpres) 27 real(8) wpres, x 28 integer s 29 real(8) :: k = 1.0, q = 0.2 30 real(8) v 31 wpres = k*exp(q*(v(x, s)-v(x, s+1))) 32 end function wp 33 function wm(x, s) result(wmres) 34 real(8) wmres, x 35 integer s 36 real(8) :: k = 1.0, q = 0.2 37 wmres = k*exp((1.0-q)*(v(x, s)-v(x, s-1))) 38 end function wm 39end module module_cmm
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/21 04:46