! module param_module ! implicit none ! ! specify the grid dimensions ! tiegcm mag grid, regular mag. grid, regular geo. grid integer,parameter :: | ndims=4, ! dimension 4=time,height,lat,lon | mlon=81,mlat=97, ! dimension of mag.grid TIEGCM #ifdef TIE_SR | mlev=32, ! dimension of mag.grid TIEGCM | mlev_readin=32, ! dimension of level to read in: TIEGCM | mlev_start=1, ! start index of level to read in: TIEGCM single resolution #elif TIME_DR | mlev=89, ! dimension of mag.grid TIEGCM | mlev_readin=53, ! dimension of level to read in: TIMEGCM double resolution | mlev_start=37, ! start index of level to read in: TIMEGCM double resolution #endif | rmlon=81,rmlat=97, ! dimension of regular mag.grid (user given) | rglon=81,rglat=97, ! dimension of regular geo.grid (user given) | mslon=1,mslat=1,mslev=1, ! start dimension | mclon=mlon,mclat=mlat,mclev=1,mctime=1, ! count dimension | igeoplot=1 ! plot in geographic coordinates (user given) ! ! for output integer,parameter :: | imagprt = 2 ! output 0 eqc/mag.potential (NetCDF file) ! 1 magnetic pertubation ! 2 both ! ! start & end time index integer :: start_time,end_time integer :: mtime(3) ! ! station parameters character(len=3) :: abr ! (user given at run-time) real :: sglon, ! geograpgic longitude of station | sglat ! geograpgic latitude of station ! ! working directory and filenames #ifdef SUN character(len=*),parameter :: work = | '/crumb/d/maute/Work.d/bret/nc_files/' ! (user given) character(len=*),parameter :: flnm = | 'MAUTE.BRET.sdec_f160.nc' ! (user given) #elif AIX character(len=*),parameter :: work = | '/hao/maute/qnm_v1.3/' ! (user given) character(len=*),parameter :: flnm = | 'smarch97smax_mignmigdisdi_ut8_wmg.nc' ! (user given) #elif LINUX character(len=*),parameter :: work = | '../' ! (user given) character(len=*),parameter :: flnm = | 'timegcm_doy339_solF.nc' ! (user given) #endif ! ! apex parameter #ifdef SUN character(len=*),parameter :: fileapex= ! (user given) | '/suncat/e/maute/apex/apxntrp.grid.alt90_1000.sun.1995-2000' ! 90-1000 km ! | '/suncat/e/maute/apex/apxntrp.grid.alt90_1000.sun.1997' ! 90-1000 km #elif AIX character(len=*),parameter :: fileapex= ! (user given) | '/hao/maute/apex.d/apxntrp.grid.alt90_1000.ibm.1997' !ibm 90-110 km #elif LINUX character(len=*),parameter :: fileapex= ! (user given) ! | '../apex/apxntrp.magion_time.grid.alt90_1000.linux.1995-2005' ! 90-1000 km | '../apex/apxntrp.magion_time.grid.alt90_1000.linux_64.1995-2010' ! 90-1000 km #endif ! integer,parameter :: apx_msgun=6,apx_iun=12,apx_mlat=121, | apx_mlon=201,apx_malt=7 ! integer,parameter :: apx_msgun=6,apx_iun=12,apx_mlat=91, ! | apx_mlon=151,apx_malt=6 integer ,parameter:: lwk= apx_mlat*apx_mlon*apx_malt*5+ | apx_mlat+apx_mlon+apx_malt real :: wk(lwk) ! real,parameter :: re = 6.371e6, ! earth radius [m] | hi = 110., ! height of ionospheric current shell [km] | hr = 90., ! reference height,altitude [km] used in TIEGCM | depth = 600., ! depth [km] from the inner earth ! current to earth surface | alt = hr ! altitude [km] for apex real :: | r, ! radius of reference height hr+re [m] | ri ! radius of ionospheric current shell [m] ! ! constants real,parameter :: pi = 3.1415926535898, | nue = 1.257e-6 ! permiability of free space real :: rad, ! 180./pi | qcnst1, ! 3.*sqrt(10.)/16.e0 | qcnst2, ! 3.*sqrt(70.)/32.e0 | sq2 ! sqrt(2.) contains !----------------------------------------------------------------------- subroutine calparam implicit none rad = 180./pi qcnst1 = 3.*sqrt(10.)/16.e0 qcnst2 = 3.*sqrt(70.)/32.e0 sq2 = sqrt(2.) r = 1000.*hr + re ri= 1000.*hi + re return end subroutine calparam end module param_module