Module dycore_time_mod

Overview

Time manage module directly called by GCM run program.

Error Handling

Known Bugs

Note

Future Plans

Dependency

use dycore_type_mod , only: STRING
use time_mod        , only: StepInterval, OutputStep  , &
     &                      CurrentLoop , CurrentTime , &
     &                      DelTime

Public Interface

private
public :: dycore_time_init, dycore_time_progress ! subroutines
public :: dycore_time_filter                     ! subroutines
public :: dycore_time_end                        ! subroutines
public :: StepInterval, OutputStep               ! variables
public :: CurrentLoop , CurrentTime              ! variables
public :: DelTime                                ! variables

Procedure Interface

Initialize module

time_mod �ν������Ԥʤ���

subroutine dycore_time_init

Dependency

use time_mod,        only: time_init
use dycore_type_mod, only: DYCORE_VARS, DYCORE_DIMS, &
     &                     STRING, DBKIND, INTKIND
use dc_trace,        only: BeginSub, EndSub, DbgMessage

Progress Time

Vars_a ��γƼ�ǡ����� Vars �ˡ� Vars_n ��γƼ�ǡ����� Vas_b �˰ܤ��� Vars_a ��Υǡ��������ƥ����˥��ꥢ���롣

�ޤ��� time_mod �� time_progress ��Ƥֻ��ˤ�ä� time_mod �� CurrentTime �� CurrentLoop ��ʤ�롣

subroutine dycore_time_progress( Vars_b, Vars_n, Vars_a )

Dependency

use dycore_type_mod, only: DYCORE_VARS,  &
     &                     STRING, REKIND, DBKIND, INTKIND
use time_mod       , only: time_progress
use dc_trace       , only: BeginSub, EndSub, DbgMessage

In/Out

type(DYCORE_VARS), intent(inout):: Vars_b ! �ʻ����ǡ�������(t-��t)
type(DYCORE_VARS), intent(inout):: Vars_n ! �ʻ����ǡ�������(t)
type(DYCORE_VARS), intent(inout):: Vars_a ! �ʻ����ǡ�������(t+��t)

Time Filter

Vars_b, Vars_n, Vars_a ���Ѥ���Vars_n �˻��֥ե��륿���򤫤���

constants_mod �� TimeFilter ����֥ե��륿���η����Ȥ��� �Ѥ��롣�����ξ��ϼ¼�Ū�˥ե��륿����������ʤ���

constants_mod �� TimeFilterStepInt ���顢�����ƥå���� �ե��륿���������뤫���椵��롣

subroutine dycore_time_filter( Vars_b, Vars_n, Vars_a )

Dependency

use dycore_type_mod, only: DYCORE_VARS,  &
     &                     STRING, REKIND, DBKIND, INTKIND
use constants_mod  , only: TimeFilter, TimeFilterStepInt
use dc_trace       , only: BeginSub, EndSub, DbgMessage

In/Out

type(DYCORE_VARS), intent(in)   :: Vars_b ! �ʻ����ǡ�������(t-��t)
type(DYCORE_VARS), intent(inout):: Vars_n ! �ʻ����ǡ�������(t)
type(DYCORE_VARS), intent(in)   :: Vars_a ! �ʻ����ǡ�������(t+��t)

Terminate module

���νꡢ���⤷�ʤ���

subroutine dycore_time_end

Dependency

use time_mod       , only: time_end
use dycore_type_mod, only: STRING, REKIND, DBKIND, INTKIND
use dc_trace,        only: BeginSub, EndSub, DbgMessage