Class HistoryFileIO
In: ../src/io/historyfileio.f90

ファイル出力. 長い時間ステップの値を出力.

Methods

Included Modules

gtool_historyauto dc_iounit dc_types mpi_wrapper namelist_util axesset gridset fileset timeset composition

Public Instance methods

Subroutine :

ヒストリデータファイル出力の終了処理を行います.

Terminate history data files output.

[Source]

  subroutine HistoryFileIO_finalize
    !
    ! ヒストリデータファイル出力の終了処理を行います. 
    !
    ! Terminate history data files output. 

    ! モジュール引用 ; USE statements
    !

    ! 宣言文 ; Declaration statements
    !
    implicit none

    ! 作業変数
    ! Work variables
    !

    ! 実行文 ; Executable statement
    !

    call HistoryAutoClose

  end subroutine HistoryFileIO_finalize
Subroutine :

history_file_io モジュールの初期化を行います.

"history_file_io" module is initialized.

[Source]

  subroutine HistoryFileIO_init
    !
    ! history_file_io モジュールの初期化を行います. 
    !
    !
    ! "history_file_io" module is initialized. 
    !
    !

    ! モジュール引用 ; USE statements
    !

    ! gtool5 netCDF データの入出力インターフェース (大規模モデル用)
    ! Interface of Input/Output of gtool5 netCDF data (For large models)
    !

    ! 宣言文 ; Declaration statements
    !
    implicit none
    
    !変数定義
    real(DP), parameter       :: TimeDisp = 1.0e5 !出力間隔のデフォルト値
    integer :: l

    !-----------------------------------------------------------
    ! ヒストリー作成
    !-----------------------------------------------------------
    call HistoryAutoCreate( title = FileTitle, source = FileSource, institution = FileInstitution, dims=(/'x','y','z','t'/), dimsizes=(/nx, ny, nz, 0/), longnames=(/'x-coordinate', 'y-coordinate', 'z-coordinate', 'time        '/), units=(/'m  ','m  ','m  ','sec'/), xtypes=(/'float ','float ','float ','double'/), origin   = Restarttime, terminus = EndTime, interval = TimeDisp, flag_mpi_split = FLAG_LIB_MPI, namelist_filename = namelist_filename)  

    call HistoryAutoAddAttr( varname = 'x', attrname = 'standard_name', value = 'x-coordinate' )                       ! (in)
    call HistoryAutoAddAttr( varname = 'y', attrname = 'standard_name', value = 'y-coordinate' )                       ! (in)
    call HistoryAutoAddAttr( varname = 'z', attrname = 'standard_name', value = 'z-coordinate' )                       ! (in)
    
    call HistoryAutoPutAxis('x', x_X(1:nx))
    call HistoryAutoPutAxis('y', y_Y(1:ny))
    call HistoryAutoPutAxis('z', z_Z(1:nz))

    ! 印字 ; Print
    !
!    call MessageNotify( 'M', module_name, '----- Initialization Messages -----' )
!    call MessageNotify( 'M', module_name, '-- version = %c', c1 = trim(version) )


    !無次元圧力の擾乱
    call HistoryAutoAddVariable( varname='Exner', dims=(/'x','y','z','t'/), longname='disturbunce of nondimensional pressure', units=' ', xtype='float' )

    !無次元圧力
    call HistoryAutoAddVariable( varname='ExnerAll', dims=(/'x','y','z','t'/), longname='nondimensional pressure', units=' ', xtype='float' )
    
    !温位の擾乱
    call HistoryAutoAddVariable( varname='PTemp', dims=(/'x','y','z','t'/), longname='disturbunce of potential temperature', units='K', xtype='float' )

    !温位の擾乱
    call HistoryAutoAddVariable( varname='PTempAll', dims=(/'x','y','z','t'/), longname='potential temperature', units='K', xtype='float' )

    !水平速度
    call HistoryAutoAddVariable( varname='VelX', dims=(/'x','y','z','t'/), longname='zonal velocity', units='m.s-1', xtype='float' )

    !水平速度
    call HistoryAutoAddVariable( varname='VelY', dims=(/'x','y','z','t'/), longname='zonal velocity', units='m.s-1', xtype='float' )

    !鉛直速度
    call HistoryAutoAddVariable( varname='VelZ', dims=(/'x','y','z','t'/), longname='vertical velocity', units='m.s-1', xtype='float' )

    !渦粘性係数(運動量)
    call HistoryAutoAddVariable( varname='Km', dims=(/'x','y','z','t'/), longname='turbulet diffusion coefficient', units='m2.s-1', xtype='float' )
  
    !渦粘性係数(熱)
    call HistoryAutoAddVariable( varname='Kh', dims=(/'x','y','z','t'/), longname='turbulet diffusion coefficient for heat', units='m2.s-1', xtype='float')

    !渦粘性係数(熱)
    call HistoryAutoAddVariable( varname='CDens', dims=(/'x','y','z','t'/), longname='Cloud density', units='kg.m-3', xtype='float')
  
    !混合比
    do l = 1, ncmax
      call HistoryAutoAddVariable( varname=trim(SpcWetSymbol(l)), dims=(/'x','y','z','t'/), longname=trim(SpcWetSymbol(l))//' Mixing Ratio', units='kg.kg-1', xtype='float')

      call HistoryAutoAddVariable( varname=trim(SpcWetSymbol(l))//'All', dims=(/'x','y','z','t'/), longname=trim(SpcWetSymbol(l))//' Mixing Ratio', units='kg.kg-1', xtype='float')
    end do
    
  end subroutine HistoryFileIO_init