Class | spml_mod |
In: |
shared/spml.f90
|
このモジュールは ((<SPMODEL|URL:http://www.gfd-dennou.org/arch/spmodel>))の spml ライブラリの ((<wa_module|URL:http://www.gfd-dennou.org/arch/spmodel/spml/doc/wa_module.htm>)) のラッパーです. 他のモジュールから SPMODEL のサブルーチンおよび関数を 呼ぶ場合には, 原則的にこのモジュールを介して呼び出します.
This module is wrapper of ((<wa_module|URL:http://www.gfd-dennou.org/arch/spmodel/spml/doc/wa_module.htm>)) of spml library in ((<SPMODEL|URL:http://www.gfd-dennou.org/arch/spmodel>)).
Subroutine : |
現状では wa_Initial を解除できないので、 何もしない。 wa_Initial による初期化を解除できるのなら、 ((<spml_init>)) による初期化フラグをオフにすべきである。
subroutine spml_end !== Terminate module ! !現状では wa_Initial を解除できないので、 !何もしない。 !wa_Initial による初期化を解除できるのなら、 !((<spml_init>)) による初期化フラグをオフにすべきである。 ! use type_mod, only: INTKIND, STRING use dc_trace, only: DbgMessage, BeginSub, EndSub implicit none character(STRING), parameter:: subname = "spml_end" !---------------------------------------------------------------- ! Check Initialization !---------------------------------------------------------------- call BeginSub(subname) if ( .not. spml_initialized) then call EndSub( subname, 'spml_init was not called', c1=trim(subname) ) return else ! 初期化を解除できないので .true. のまま ! spml_initialized = .false. spml_initialized = .true. endif call EndSub( subname, 'spml_init can not release') end subroutine spml_end
Subroutine : |
((<wa_module|URL:http://www.gfd-dennou.org/arch/spmodel/spml/doc/wa_module.htm>)) の初期化関数 ((<wa_Initial|URL:http://www.gfd-dennou.org/arch/spmodel/spml/doc/wa_module.htm#wa_Initial>)) を呼ぶ。
subroutine spml_init !== Initialize wa_module ! !((<wa_module|URL:http://www.gfd-dennou.org/arch/spmodel/spml/doc/wa_module.htm>)) !の初期化関数 !((<wa_Initial|URL:http://www.gfd-dennou.org/arch/spmodel/spml/doc/wa_module.htm#wa_Initial>)) !を呼ぶ。 ! use type_mod , only: INTKIND, STRING use grid_3d_mod , only: im, jm, km, grid_3d_init use grid_wavenumber_mod, only: nm, grid_wavenumber_init use dc_trace, only: DbgMessage, BeginSub, EndSub use dc_error, only: StoreError, USR_ERRNO use wa_module, only: wa_Initial implicit none !------------------------------------------------------------------- ! 変数定義 !------------------------------------------------------------------- character(STRING), parameter:: subname = "spml_init" continue !---------------------------------------------------------------- ! Check Initialization !---------------------------------------------------------------- call BeginSub(subname) if (spml_initialized) then call EndSub( subname, '%c is already called', c1=trim(subname) ) return else spml_initialized = .true. endif !---------------------------------------------------------------- ! Version identifier !---------------------------------------------------------------- call DbgMessage('%c :: %c', c1=trim(version), c2=trim(tagname)) !---------------------------------------------------------------- ! grid_3d_mod と grid_wavenumber による初期化 !---------------------------------------------------------------- call grid_3d_init call grid_wavenumber_init !---------------------------------------------------------------- ! wa_initial による初期化 !---------------------------------------------------------------- call wa_Initial(nm,im,jm,km) call EndSub( subname, 'wa_initial(nm=<%d>, im=<%d>, jm=<%d>, km=<%d>)', i=(/nm, im, jm, km/) ) end subroutine spml_init