ALL ARRAYS THAT FOLLOW ARE USED WHEN INCLUDING NEUTRAL PERTURBATIONS FROM ANOTHER MODEL ARRAYS TO STORE THE NEUTRAL GRID INFORMATION as long as the neutral module is in scope these persist and do not require a "save"; this variable only used by the axisymmetric interpolation THIS SHARES SO MUCH CODE WITH THE AXISYMMETRIC VERSION THAT THEY SHOULD PROBABLY BE COMBINED
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=wp), | private, | dimension(:), allocatable | :: | rhon | |||
real(kind=wp), | private, | dimension(:), allocatable | :: | yn | |||
real(kind=wp), | private, | dimension(:), allocatable | :: | zn | |||
real(kind=wp), | private, | dimension(:), allocatable | :: | xn | |||
integer, | private | :: | lrhon | STORAGE FOR NEUTRAL SIMULATION DATA. THESE ARE INCLUDED AS MODULE VARIATIONS TO AVOID HAVING TO REALLOCATE AND DEALLOCIATE EACH TIME WE NEED TO INTERP |
|||
integer, | private | :: | lzn | STORAGE FOR NEUTRAL SIMULATION DATA. THESE ARE INCLUDED AS MODULE VARIATIONS TO AVOID HAVING TO REALLOCATE AND DEALLOCIATE EACH TIME WE NEED TO INTERP |
|||
integer, | private | :: | lyn | STORAGE FOR NEUTRAL SIMULATION DATA. THESE ARE INCLUDED AS MODULE VARIATIONS TO AVOID HAVING TO REALLOCATE AND DEALLOCIATE EACH TIME WE NEED TO INTERP |
|||
integer, | private | :: | lxn | STORAGE FOR NEUTRAL SIMULATION DATA. THESE ARE INCLUDED AS MODULE VARIATIONS TO AVOID HAVING TO REALLOCATE AND DEALLOCIATE EACH TIME WE NEED TO INTERP |
|||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnO | full grid parameters for root to store input from files. |
||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnN2 | full grid parameters for root to store input from files. |
||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnO2 | full grid parameters for root to store input from files. |
||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnrho | full grid parameters for root to store input from files. |
||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnz | full grid parameters for root to store input from files. |
||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnx | full grid parameters for root to store input from files. |
||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dTn | full grid parameters for root to store input from files. |
||
real(kind=wp), | private, | dimension(:), allocatable | :: | xnall | |||
real(kind=wp), | private, | dimension(:), allocatable | :: | ynall | |||
integer, | private | :: | lxnall | ||||
integer, | private | :: | lynall | ||||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnOall | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnN2all | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnO2all | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnrhoall | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnzall | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnxall | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dTnall | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnOiprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnN2iprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnO2iprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnrhoiprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnziprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dTniprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvn1iprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvn2iprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvn3iprev | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnxiprev | |||
real(kind=wp), | private | :: | tprev | ||||
integer, | private, | dimension(3) | :: | ymdprev | denoted time corresponding to "prev" interpolated data |
||
real(kind=wp), | private | :: | UTsecprev | ||||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnOinext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnN2inext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dnO2inext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnrhoinext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnzinext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dTninext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvn1inext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvn2inext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvn3inext | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | dvnxinext | |||
real(kind=wp), | private | :: | tnext | ||||
integer, | private, | dimension(3) | :: | ymdnext | |||
real(kind=wp), | private | :: | UTsecnext | ||||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_erhop_e1 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_ezp_e1 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_erhop_e2 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_ezp_e2 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_erhop_e3 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_ezp_e3 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_eyp_e1 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_eyp_e2 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_eyp_e3 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_exp_e1 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_exp_e2 | |||
real(kind=wp), | private, | dimension(:,:,:), allocatable | :: | proj_exp_e3 | |||
real(kind=wp), | private, | dimension(:), allocatable | :: | zi | |||
real(kind=wp), | private, | dimension(:), allocatable | :: | yi | |||
real(kind=wp), | private, | dimension(:), allocatable | :: | xi | |||
real(kind=wp), | private, | dimension(:), allocatable | :: | rhoi | |||
real(kind=wp), | private, | dimension(:,:), allocatable | :: | extents | |||
integer, | private, | dimension(:,:), allocatable | :: | indx | |||
integer, | private, | dimension(:,:), allocatable | :: | slabsizes | BASE MSIS ATMOSPHERIC STATE ON WHICH TO APPLY PERTURBATIONS |
||
real(kind=wp), | protected, | dimension(:,:,:,:), allocatable | :: | nnmsis | |||
real(kind=wp), | public, | dimension(:,:,:), allocatable | :: | Tnmsis | |||
real(kind=wp), | protected, | dimension(:,:,:), allocatable | :: | vn1base | |||
real(kind=wp), | protected, | dimension(:,:,:), allocatable | :: | vn2base | |||
real(kind=wp), | protected, | dimension(:,:,:), allocatable | :: | vn3base |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | ymd(3) | |||
real(kind=wp), | intent(in) | :: | UTsecd | |||
real(kind=wp), | intent(in), | dimension(:,:,:) | :: | glat | ||
real(kind=wp), | intent(in), | dimension(:,:,:) | :: | glon | ||
real(kind=wp), | intent(in), | dimension(:,:,:) | :: | alt | ||
real(kind=wp), | intent(in) | :: | activ(3) | |||
real(kind=wp), | intent(out), | dimension(1:size(alt,1),1:size(alt,2),1:size(alt,3),lnchem) | :: | nn | ||
real(kind=wp), | intent(out), | dimension(1:size(alt,1),1:size(alt,2),1:size(alt,3)) | :: | Tn |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | interptype | |||
real(kind=wp), | intent(in) | :: | dt | |||
real(kind=wp), | intent(in) | :: | dtneu | |||
real(kind=wp), | intent(in) | :: | t | |||
integer, | intent(in), | dimension(3) | :: | ymd | ||
real(kind=wp), | intent(in) | :: | UTsec | |||
character(len=*), | intent(in) | :: | neudir | |||
real(kind=wp), | intent(in) | :: | dxn | |||
real(kind=wp), | intent(in) | :: | drhon | |||
real(kind=wp), | intent(in) | :: | dzn | |||
real(kind=wp), | intent(in) | :: | meanlat | |||
real(kind=wp), | intent(in) | :: | meanlong | |||
type(curvmesh), | intent(inout) | :: | x | |||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | nn | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | Tn | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn1 | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn2 | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn3 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | dt | |||
real(kind=wp), | intent(in) | :: | dtneu | |||
real(kind=wp), | intent(in) | :: | t | |||
integer, | intent(in), | dimension(3) | :: | ymd | ||
real(kind=wp), | intent(in) | :: | UTsec | |||
character(len=*), | intent(in) | :: | neudir | |||
real(kind=wp), | intent(in) | :: | drhon | |||
real(kind=wp), | intent(in) | :: | dzn | |||
real(kind=wp), | intent(in) | :: | meanlat | |||
real(kind=wp), | intent(in) | :: | meanlong | |||
type(curvmesh), | intent(inout) | :: | x | |||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | nn | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | Tn | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn1 | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn2 | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn3 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | dt | |||
real(kind=wp), | intent(in) | :: | dtneu | |||
real(kind=wp), | intent(in) | :: | t | |||
integer, | intent(in), | dimension(3) | :: | ymd | ||
real(kind=wp), | intent(in) | :: | UTsec | |||
character(len=*), | intent(in) | :: | neudir | |||
real(kind=wp), | intent(in) | :: | dyn | |||
real(kind=wp), | intent(in) | :: | dzn | |||
real(kind=wp), | intent(in) | :: | meanlat | |||
real(kind=wp), | intent(in) | :: | meanlong | |||
type(curvmesh), | intent(inout) | :: | x | |||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | nn | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | Tn | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn1 | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn2 | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn3 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | dt | |||
real(kind=wp), | intent(in) | :: | dtneu | |||
real(kind=wp), | intent(in) | :: | t | |||
integer, | intent(in), | dimension(3) | :: | ymd | ||
real(kind=wp), | intent(in) | :: | UTsec | |||
character(len=*), | intent(in) | :: | neudir | |||
real(kind=wp), | intent(in) | :: | dxn | |||
real(kind=wp), | intent(in) | :: | dyn | |||
real(kind=wp), | intent(in) | :: | dzn | |||
real(kind=wp), | intent(in) | :: | meanlat | |||
real(kind=wp), | intent(in) | :: | meanlong | |||
type(curvmesh), | intent(inout) | :: | x | |||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | nn | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | Tn | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn1 | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn2 | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | vn3 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | dhorzn | |||
real(kind=wp), | intent(in) | :: | dzn | |||
real(kind=wp), | intent(in) | :: | meanlat | |||
real(kind=wp), | intent(in) | :: | meanlong | |||
character(len=*), | intent(in) | :: | neudir | |||
logical, | intent(in) | :: | flagcart | |||
type(curvmesh), | intent(inout) | :: | x |
COMPUTE DISTANCES - ZZZ possibly superfluous for 3D case???
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | dxn | |||
real(kind=wp), | intent(in) | :: | dyn | |||
real(kind=wp), | intent(in) | :: | dzn | |||
real(kind=wp), | intent(in) | :: | meanlat | |||
real(kind=wp), | intent(in) | :: | meanlong | |||
character(len=*), | intent(in) | :: | neudir | |||
type(curvmesh), | intent(inout) | :: | x |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | tprev | |||
real(kind=wp), | intent(in) | :: | tnext | |||
real(kind=wp), | intent(in) | :: | t | |||
real(kind=wp), | intent(in) | :: | dtneu | |||
real(kind=wp), | intent(in) | :: | dt | |||
character(len=*), | intent(in) | :: | neudir | |||
integer, | intent(out), | dimension(3) | :: | ymdtmp | ||
real(kind=wp), | intent(out) | :: | UTsectmp | |||
logical, | intent(in) | :: | flagcart |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | tprev | |||
real(kind=wp), | intent(in) | :: | tnext | |||
real(kind=wp), | intent(in) | :: | t | |||
real(kind=wp), | intent(in) | :: | dtneu | |||
real(kind=wp), | intent(in) | :: | dt | |||
character(len=*), | intent(in) | :: | neudir | |||
integer, | intent(out), | dimension(3) | :: | ymdtmp | ||
real(kind=wp), | intent(out) | :: | UTsectmp |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(in) | :: | flagcart |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | t | |||
real(kind=wp), | intent(in) | :: | dt | |||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | dNOinow | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | dnN2inow | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | dnO2inow | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | dvn1inow | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | dvn2inow | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | dvn3inow | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | dTninow |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | maxzn | |||
real(kind=wp), | intent(in), | dimension(:,:,:) | :: | ximat | ||
real(kind=wp), | intent(in), | dimension(:,:,:) | :: | yimat | ||
real(kind=wp), | intent(in), | dimension(:,:,:) | :: | zimat | ||
real(kind=wp), | intent(in) | :: | sourcemlat | |||
real(kind=wp), | intent(out), | dimension(2) | :: | xnrange | ||
real(kind=wp), | intent(out), | dimension(2) | :: | ynrange |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in), | dimension(6) | :: | ranges | ||
real(kind=wp), | intent(in), | dimension(:) | :: | zn | ||
real(kind=wp), | intent(in), | dimension(:) | :: | xnall | ||
real(kind=wp), | intent(in), | dimension(:) | :: | ynall | ||
integer, | intent(out), | dimension(6) | :: | indices |