disturbfile : | character(*), intent(in)
: | end
暗黙の型宣言禁止
begin
Input
擾乱場のファイル
|
|
ReStartTime(2) : | real(8), intent(out)
|
fs_VelX_b(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
sf_VelZ_b(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
ss_Exner_b(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
ss_PotTemp_b(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
ss_Km_b(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
ss_Kh_b(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
fs_VelX_n(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
sf_VelZ_n(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
ss_Exner_n(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
ss_PotTemp_n(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
ss_Km_n(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
ss_Kh_n(DimXMin:DimXMax, DimZMin:DimZMax) : | real(8), intent(out)
|
subroutine GetDisturbVar(disturbfile, ReStartTime, fs_VelX_b, sf_VelZ_b, ss_Exner_b, ss_PotTemp_b, ss_Km_b, ss_Kh_b, fs_VelX_n, sf_VelZ_n, ss_Exner_n, ss_PotTemp_n, ss_Km_n, ss_Kh_n )
!=begin
!== Dependency
!=end
!== 暗黙の型宣言禁止
implicit none
!=begin
!== Input
character(*), intent(in) :: disturbfile !擾乱場のファイル
!== Output
real(8), intent(out) :: ReStartTime(2)
real(8), intent(out) :: fs_VelX_n(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: fs_VelX_b(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: sf_VelZ_n(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: sf_VelZ_b(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: ss_Exner_n(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: ss_Exner_b(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: ss_PotTemp_n(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: ss_PotTemp_b(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: ss_Km_n(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: ss_Km_b(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: ss_Kh_n(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(out) :: ss_Kh_b(DimXMin:DimXMax, DimZMin:DimZMax)
!=end
!== Work
real(8) :: DelTime
character(30) :: name !変数名
call BeginSub("GetDisturbVar", fmt="%c", c1="Input initial disturbance variables.")
!=== Get a Value from netCDF File
name = "t"
call HistoryGet( disturbfile, name, ReStartTime )
!=== 時間刻みのチェック
DelTime = ReStartTime(2) - ReStartTime(1)
if ( DelTime /= DelTimeLong ) then
call MessageNotify("Error", "getdistrbvar", "DelTime for ReStartFile is not the same as DelTimeLong")
stop
end if
!=== Get a Value from netCDF File
name = "VelX_n"
call HistoryGet( disturbfile, name, fs_VelX_n )
name = "VelX_b"
call HistoryGet( disturbfile, name, fs_VelX_b )
name = "VelZ_n"
call HistoryGet( disturbfile, name, sf_VelZ_n )
name = "VelZ_b"
call HistoryGet( disturbfile, name, sf_VelZ_b )
name = "Exner_n"
call HistoryGet( disturbfile, name, ss_Exner_n )
name = "Exner_b"
call HistoryGet( disturbfile, name, ss_Exner_b )
name = "PotTemp_n"
call HistoryGet( disturbfile, name, ss_PotTemp_n )
name = "PotTemp_b"
call HistoryGet( disturbfile, name, ss_PotTemp_b )
name = "Km_n"
call HistoryGet( disturbfile, name, ss_Km_n )
name = "Km_b"
call HistoryGet( disturbfile, name, ss_Km_b )
name = "Kh_n"
call HistoryGet( disturbfile, name, ss_Kh_n )
name = "Kh_b"
call HistoryGet( disturbfile, name, ss_Kh_b )
call EndSub("GetDisturbVar")
end subroutine GetDisturbVar