?? inital.f90
字號:
#include <misc.h>#include <params.h>subroutine inital!----------------------------------------------------------------------- ! ! Purpose: ! Define initial conditions for first run of case! ! Method: ! ! Author: ! Original version: CCM1! Standardized: L. Bath, June 1992! T. Acker, March 1996! Reviewed: B. Boville, April 1996!! $Id: inital.F90,v 1.13.2.3 2002/04/22 19:09:51 erik Exp $! $Author: erik $!----------------------------------------------------------------------- use precision use pmgrid, only: plon, i1, plond, masterproc use inidat, only: read_inidat use prognostics, only: ps, u3, v3, t3, q3, div, ptimelevels, initialize_prognostics use buffer, only: initialize_buffer use comslt, only: initialize_comslt use comsrf, only: initialize_comsrf use ioFileMod, only: getfil use radae, only: initialize_radbuffer use phys_grid, only: phys_grid_init use time_manager, only: timemgr_init use filenames, only: ncdata#ifndef COUP_CSM use atm_lndMod, only: is_lsm use spmd_phys, only: is_366_physics#endif#if (defined COUP_CSM) use ccsm_msg, only: initialize_ccsm_msg#endif!----------------------------------------------------------------------- implicit none!------------------------------Parameters-------------------------------#include <comctl.h>!-----------------------------------------------------------------------#include <comlun.h>!----------------------------------------------------------------------- include 'netcdf.inc'!---------------------------Local variables-----------------------------! integer k,n ! indices character(len=256) locfn ! local filename integer decomp ! decomposition type!!-----------------------------------------------------------------------!!! Obtain initial dataset! if (masterproc) then call getfil (ncdata, locfn) call wrap_open (locfn, NF_NOWRITE, ncid_ini) end if!! Check for consistent settings on initial dataset! call readinitial (ncid_ini)! Initialize time manager. call timemgr_init()!! Initialize comslt and prognostics variables ! call initialize_prognostics#if (defined COUP_CSM) call initialize_ccsm_msg#endif call initialize_comslt!! Set commons! call initcom!! Define physics data structures!#ifdef COUP_CSM decomp = -1 ! Do latitude-band chunking for current coupled model#else if ( is_lsm() .or. is_366_physics() )then decomp = -1 ! Do latitude-band chunking for old physics or lsm else decomp = 0 end if#endif call phys_grid_init (decomp, 1)!! Initialize buffer, comsrf, and radbuffer variables ! (which must occur after the call to phys_grid_init)! call initialize_buffer call initialize_comsrf call initialize_radbuffer!! Read in initial data! call read_inidat! ! Make all time levels of prognostics contain identical data.! Fields to be convectively adjusted only *require* n3 time! level since copy gets done in linems.! do n=2,ptimelevels ps(:,:,n) = ps(:,:,1) u3(:,:,:,n) = u3(:,:,:,1) v3(:,:,:,n) = v3(:,:,:,1) t3(:,:,:,n) = t3(:,:,:,1) q3(i1:i1+plon-1,:,:,:,n) = q3(i1:i1+plon-1,:,:,:,1) div(:,:,:,n) = div(:,:,:,1) end do returnend subroutine inital
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -