grid%tra = tracer(ims,kms,jms,P_tr17_2). (这里是计算tracer(ims,kms,jms,P_tr17_2)
CALL microphysics_driver( .... (这里传递给了phys/module_microphysics_driver.F) & , TRA = grid%tra &
CALL sbm(..... ,tr_two = TRA & (这里又传递给了SBM) 在SBM.F 里这个值赋值给qnin_new: qnin_new(I,K,J) = max(0.,tr_two(I,K,J)). 在code里面直接print*,“qnin”,qnin_new(I,K,J) 得到的0.00000E00 但是output出来qnin_new的结果却是正确的。把qnin_new和另一个变量相加,也得到NAN。 能output出来结果说明传递应该是有意义的,但是不知道为什么传递进来就不能相加减。请大神帮帮忙。 最后在SBM.F 代码附上,比较长,请直接搜索关键字tr_two.
|