Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restructure/Refactor DO_OBIO bits #362

Closed
13 tasks done
sanAkel opened this issue Oct 14, 2020 · 1 comment · Fixed by #367
Closed
13 tasks done

Restructure/Refactor DO_OBIO bits #362

sanAkel opened this issue Oct 14, 2020 · 1 comment · Fixed by #367
Assignees
Labels
0 diff structural Structural changes to repository that are zero-diff enhancement New feature or request

Comments

@sanAkel
Copy link
Contributor

sanAkel commented Oct 14, 2020

Current connectivity of the atmosphere to ocean biology and radiation components is scattered across following gridded components (GCs):

  1. GEOS_SaltWaterGridComp.F90
  2. GEOS_GcmGridComp.F90
  3. GEOS_OgcmGridComp.F90

Above GCs are:

  • providing imports to:
    • GEOS_OceanbiogeochemGridComp.F90
    • GEOS_OradBioGridComp.F90
  • establishing connectivity between ocean/sea ice and ocean radiation (and or ocean biology)

Refactoring of this additional connectivity to ocean biology and radiation components is desired because these components are run conditionally using the DO_OBIO resource flag: USE_OCEANOBIOGEOCHEM: whose default is 0 which implies they are not run by default. It is preferred to establish such connectivities via a MAPL Add child procedure if and when possible. This makes the flow of variables and logic in above GCs clear and simple which will aid in their future development.

Examples of such lines of code follow:

  1. GEOS_SaltWaterGridComp.F90
  • if (DO_OBIO /= 0) then
    call MAPL_AddExportSpec(GC ,&
    SHORT_NAME = 'CO2SC', &
    LONG_NAME = 'CO2 Surface Concentration Bin 001',&
    UNITS = '1e-6' ,&
    DIMS = MAPL_DimsTileOnly ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'DUDP' ,&
    LONG_NAME = 'Dust Dry Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_DUDP/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'DUWT' ,&
    LONG_NAME = 'Dust Wet Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_DUWT/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'DUSD' ,&
    LONG_NAME = 'Dust Sedimentation' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_DUSD/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'BCDP' ,&
    LONG_NAME = 'Black Carbon Dry Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_BCDP/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'BCWT' ,&
    LONG_NAME = 'Black Carbon Wet Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_BCWT/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'OCDP' ,&
    LONG_NAME = 'Organic Carbon Dry Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_OCDP/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'OCWT' ,&
    LONG_NAME = 'Organic Carbon Wet Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_OCWT/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'FSWBAND' , &
    LONG_NAME = 'net_surface_downward_shortwave_flux_per_band_in_air',&
    UNITS = 'W m-2' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NB_CHOU/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddExportSpec(GC, &
    SHORT_NAME = 'FSWBANDNA' , &
    LONG_NAME = 'net_surface_downward_shortwave_flux_per_band_in_air_assuming_no_aerosol',&
    UNITS = 'W m-2' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NB_CHOU/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RC=STATUS )
    VERIFY_(STATUS)
    endif ! DO_OBIO
  • if (DO_OBIO /= 0) then
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'CO2SC', &
    LONG_NAME = 'CO2 Surface Concentration Bin 001', &
    UNITS = '1e-6', &
    DIMS = MAPL_DimsTileOnly, &
    VLOCATION = MAPL_VLocationNone, &
    RESTART = MAPL_RestartSkip, &
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'DUDP' ,&
    LONG_NAME = 'Dust Dry Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_DUDP/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'DUWT' ,&
    LONG_NAME = 'Dust Wet Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_DUWT/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'DUSD' ,&
    LONG_NAME = 'Dust Sedimentation' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_DUSD/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'BCDP' ,&
    LONG_NAME = 'Black Carbon Dry Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_BCDP/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'BCWT' ,&
    LONG_NAME = 'Black Carbon Wet Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_BCWT/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'OCDP' ,&
    LONG_NAME = 'Organic Carbon Dry Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_OCDP/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'OCWT' ,&
    LONG_NAME = 'Organic Carbon Wet Deposition' ,&
    UNITS = 'kg m-2 s-1' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NUM_OCWT/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'FSWBAND' , &
    LONG_NAME = 'net_surface_downward_shortwave_flux_per_band_in_air',&
    UNITS = 'W m-2' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NB_CHOU/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'FSWBANDNA' , &
    LONG_NAME = 'net_surface_downward_shortwave_flux_per_band_in_air_assuming_no_aerosol',&
    UNITS = 'W m-2' ,&
    DIMS = MAPL_DimsTileOnly ,&
    UNGRIDDED_DIMS = (/NB_CHOU/) ,&
    VLOCATION = MAPL_VLocationNone ,&
    RESTART = MAPL_RestartSkip ,&
    RC=STATUS )
    VERIFY_(STATUS)
    endif !DO_OBIO
  1. GEOS_GcmGridComp.F90
  • if (DO_OBIO/=0) then
    do k=1, 33
    write(unit = suffix, fmt = '(i2.2)') k
    call MAPL_TerminateImport( GC, &
    SHORT_NAME = [ character(len=(8)) :: &
    'TAUA_'//suffix, &
    'ASYMP_'//suffix, &
    'SSALB_'//suffix ], &
    CHILD = OGCM, &
    RC=STATUS )
    VERIFY_(STATUS)
    enddo
    end if
  • if(DO_OBIO/=0) then
    call AllocateExports( GCM_INTERNAL_STATE%expSKIN, &
    (/'UU'/), &
    RC=STATUS )
    VERIFY_(STATUS)
    call AllocateExports( GCM_INTERNAL_STATE%expSKIN, &
    (/'CO2SC'/), &
    RC=STATUS )
    VERIFY_(STATUS)
    do k=1, 33
    write(unit = suffix, fmt = '(i2.2)') k
    call AllocateExports(GCM_INTERNAL_STATE%expSKIN, &
    [ character(len=8) :: &
    'TAUA_'//suffix, &
    'ASYMP_'//suffix, &
    'SSALB_'//suffix] , &
    RC=STATUS)
    VERIFY_(STATUS)
    enddo
    call AllocateExports_UGD( GCM_INTERNAL_STATE%expSKIN, &
    (/'DUDP', 'DUWT', 'DUSD'/), &
    RC=STATUS )
    VERIFY_(STATUS)
    call AllocateExports(GCM_INTERNAL_STATE%expSKIN, &
    (/'CCOVM ', 'CDREM ', 'RLWPM ', 'CLDTCM', 'RH ', &
    'OZ ', 'WV '/), &
    RC=STATUS)
    VERIFY_(STATUS)
    if(DO_DATAATM==0) then
    call AllocateExports_UGD( GCM_INTERNAL_STATE%expSKIN, &
    (/'BCDP', 'BCWT', 'OCDP', 'OCWT' /), &
    RC=STATUS )
    VERIFY_(STATUS)
    call AllocateExports_UGD( GCM_INTERNAL_STATE%expSKIN, &
    (/'FSWBAND ', 'FSWBANDNA'/), &
    RC=STATUS )
    VERIFY_(STATUS)
    endif
    endif
  • if(DO_OBIO/=0) then
    call DO_A2O(GIM(OGCM),'UU' ,expSKIN,'UU' , RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM),'CO2SC' ,expSKIN,'CO2SC' , RC=STATUS)
    VERIFY_(STATUS)
    do k=1, 33
    write(unit = suffix, fmt = '(i2.2)') k
    call DO_A2O(GIM(OGCM), 'TAUA_'//suffix, expSKIN, 'TAUA_'//suffix, RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'SSALB_'//suffix, expSKIN, 'SSALB_'//suffix, RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'ASYMP_'//suffix, expSKIN, 'ASYMP_'//suffix, RC=STATUS)
    VERIFY_(STATUS)
    enddo
    call DO_A2O_UGD(GIM(OGCM), 'DUDP', expSKIN, 'DUDP', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O_UGD(GIM(OGCM), 'DUWT', expSKIN, 'DUWT', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O_UGD(GIM(OGCM), 'DUSD', expSKIN, 'DUSD', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'CCOVM', expSKIN, 'CCOVM', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'CDREM', expSKIN, 'CDREM', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'RLWPM', expSKIN, 'RLWPM', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'CLDTCM', expSKIN, 'CLDTCM', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'RH', expSKIN, 'RH', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'OZ', expSKIN, 'OZ', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O(GIM(OGCM), 'WV', expSKIN, 'WV', RC=STATUS)
    VERIFY_(STATUS)
    if(DO_DATAATM==0) then
    call DO_A2O_UGD(GIM(OGCM), 'BCDP', expSKIN, 'BCDP', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O_UGD(GIM(OGCM), 'BCWT', expSKIN, 'BCWT', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O_UGD(GIM(OGCM), 'OCDP', expSKIN, 'OCDP', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O_UGD(GIM(OGCM), 'OCWT', expSKIN, 'OCWT', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O_UGD(GIM(OGCM), 'FSWBAND', expSKIN, 'FSWBAND', RC=STATUS)
    VERIFY_(STATUS)
    call DO_A2O_UGD(GIM(OGCM), 'FSWBANDNA', expSKIN, 'FSWBANDNA', RC=STATUS)
    VERIFY_(STATUS)
    endif
    endif
  1. GEOS_OgcmGridComp.F90
  • if (DO_OBIO/=0) then
    do k=1, 33
    write(unit = suffix, fmt = '(i2.2)') k
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'TAUA_'//suffix, &
    LONG_NAME = 'aerosol optical thickness', &
    UNITS = '', &
    DIMS = MAPL_DimsTileOnly, &
    VLOCATION = MAPL_VLocationNone, &
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'ASYMP_'//suffix, &
    LONG_NAME = 'asymmetry parameter', &
    UNITS = '', &
    DIMS = MAPL_DimsTileOnly, &
    VLOCATION = MAPL_VLocationNone, &
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddImportSpec(GC, &
    SHORT_NAME = 'SSALB_'//suffix, &
    LONG_NAME = 'single scattering albedo', &
    UNITS = '', &
    DIMS = MAPL_DimsTileOnly, &
    VLOCATION = MAPL_VLocationNone, &
    RC=STATUS )
    VERIFY_(STATUS)
    enddo
    end if

  • if(DO_OBIO/=0) then
    ! if (trim(OCEAN_NAME) == "MOM") then ! MOM5 only
    ! Ocean to OceanBio
    call MAPL_AddConnectivity ( GC, &
    SHORT_NAME = (/'DH', 'T ', 'S '/), &
    DST_ID = OBIO, &
    SRC_ID = OCEAN, &
    RC=STATUS )
    VERIFY_(STATUS)
    ! end if
    ! OceanRad to OceanBio
    call MAPL_AddConnectivity ( GC, &
    SHORT_NAME = (/'TIRRQ'/), &
    DST_ID = OBIO, &
    SRC_ID = ORAD, &
    RC=STATUS )
    VERIFY_(STATUS)
    call MAPL_AddConnectivity ( GC, &
    SHORT_NAME = (/'CDOMABSQ'/), &
    DST_ID = OBIO, &
    SRC_ID = ORAD, &
    RC=STATUS )
    VERIFY_(STATUS)
    ! OceanBio to OceanRad
    call MAPL_AddConnectivity ( GC, &
    SHORT_NAME = (/'DIATOM','CHLORO','CYANO ','DINO ',&
    'PHAEO ','COCCO ','CDET ','PIC ',&
    'CDC ','AVGQ '/), &
    DST_ID = ORAD, &
    SRC_ID = OBIO, &
    RC=STATUS )
    VERIFY_(STATUS)
    ! Seaice to OceanBio
    call MAPL_AddConnectivity ( GC, &
    SHORT_NAME = (/'FRACICE'/), &
    DST_ID = OBIO, &
    SRC_ID = SEAICE, &
    RC=STATUS )
    VERIFY_(STATUS)
    end if

  • if(DO_OBIO /= 0) then
    call MAPL_TerminateImport(GC, SHORT_NAME = ['PS ','UU ','OZ ','WV ',&
    'RH ','CCOVM ','CLDTCM','RLWPM ','CDREM '], CHILD=ORAD, RC=STATUS )
    VERIFY_(STATUS)
    end if

  • if (DO_OBIO/=0) then
    do k=1, 33
    write(unit = suffix, fmt = '(i2.2)') k
    call MAPL_GetPointer(IMPORT, ATAUA(k)%b,'TAUA_'//suffix, RC=STATUS)
    VERIFY_(STATUS)
    call MAPL_GetPointer(IMPORT, AASYMP(k)%b,'ASYMP_'//suffix, RC=STATUS)
    VERIFY_(STATUS)
    call MAPL_GetPointer(IMPORT, ASSALB(k)%b,'SSALB_'//suffix, RC=STATUS)
    VERIFY_(STATUS)
    enddo
    endif

  • if(DO_OBIO /= 0) then
    call MAPL_GetPointer(GIM(OBIO ), USTR3B , 'OUSTAR3' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), UUB , 'UU' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), PSB , 'PS' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), CO2SCB , 'CO2SC' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    do k=1, 33
    write(unit = suffix, fmt = '(i2.2)') k
    call MAPL_GetPointer(GIM(ORAD ), ATAUAO(k)%b, 'TAUA_'//suffix , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), AASYMPO(k)%b,'ASYMP_'//suffix, notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), ASSALBO(k)%b,'SSALB_'//suffix, notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    enddo
    call MAPL_GetPointer(GIM(ORAD ), UUO , 'UU' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), PSO , 'PS' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), DUDPB , 'DUDP' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), DUWTB , 'DUWT' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), DUSDB , 'DUSD' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), DISCHARGEOB , 'DISCHARGE' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    if(DO_DATAATM==0) then
    call MAPL_GetPointer(GIM(OBIO ), BCDPB , 'BCDP' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), BCWTB , 'BCWT' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), OCDPB , 'OCDP' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(OBIO ), OCWTB , 'OCWT' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), FSWBANDR , 'FSWBAND' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), FSWBANDNAR , 'FSWBANDNA' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    end if
    call MAPL_GetPointer(GIM(ORAD ), CCOVMO , 'CCOVM' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), CDREMO , 'CDREM' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), RLWPMO , 'RLWPM' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), CLDTCMO , 'CLDTCM' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), RHO , 'RH' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), OZO , 'OZ' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    call MAPL_GetPointer(GIM(ORAD ), WVO , 'WV' , notfoundOK=.true., RC=STATUS); VERIFY_(STATUS)
    end if

  • if (DO_OBIO/=0) then
    do k=1, 33
    if ( associated(ATAUAO(k)%b) ) then
    call MAPL_LocStreamTransform( ExchGrid, ATAUAO(k)%b, ATAUA(k)%b, RC=STATUS)
    VERIFY_(STATUS)
    endif
    if ( associated(AASYMPO(k)%b) ) then
    call MAPL_LocStreamTransform( ExchGrid, AASYMPO(k)%b, AASYMP(k)%b, RC=STATUS)
    VERIFY_(STATUS)
    endif
    if ( associated(ASSALBO(k)%b) ) then
    call MAPL_LocStreamTransform( ExchGrid, ASSALBO(k)%b, ASSALB(k)%b, RC=STATUS)
    VERIFY_(STATUS)
    endif
    enddo
    endif

  • if(associated(DUDPB)) then
    do N = 1, NUM_DUDP
    call MAPL_LocStreamTransform( ExchGrid, DUDPB(:,:,N), DUDP(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    if(associated(DUWTB)) then
    do N = 1, NUM_DUWT
    call MAPL_LocStreamTransform( ExchGrid, DUWTB(:,:,N), DUWT(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    if(associated(DUSDB)) then
    do N = 1, NUM_DUSD
    call MAPL_LocStreamTransform( ExchGrid, DUSDB(:,:,N), DUSD(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    if(DO_DATAATM==0) then
    if(associated(BCDPB)) then
    do N = 1, NUM_BCDP
    call MAPL_LocStreamTransform( ExchGrid, BCDPB(:,:,N), BCDP(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    if(associated(BCWTB)) then
    do N = 1, NUM_BCWT
    call MAPL_LocStreamTransform( ExchGrid, BCWTB(:,:,N), BCWT(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    if(associated(OCDPB)) then
    do N = 1, NUM_OCDP
    call MAPL_LocStreamTransform( ExchGrid, OCDPB(:,:,N), OCDP(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    if(associated(OCWTB)) then
    do N = 1, NUM_OCWT
    call MAPL_LocStreamTransform( ExchGrid, OCWTB(:,:,N), OCWT(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    if(associated(FSWBANDR)) then
    do N = 1, NB_CHOU
    call MAPL_LocStreamTransform( ExchGrid, FSWBANDR(:,:,N), FSWBAND(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    if(associated(FSWBANDNAR)) then
    do N = 1, NB_CHOU
    call MAPL_LocStreamTransform( ExchGrid, FSWBANDNAR(:,:,N), FSWBANDNA(:,N), RC=STATUS )
    VERIFY_(STATUS)
    end do
    endif
    end if
    if ( associated(CCOVMO) ) then
    call MAPL_LocStreamTransform( ExchGrid, CCOVMO, CCOVM, RC=STATUS)
    VERIFY_(STATUS)
    endif
    if ( associated(CDREMO) ) then
    call MAPL_LocStreamTransform( ExchGrid, CDREMO, CDREM, RC=STATUS)
    VERIFY_(STATUS)
    endif
    if ( associated(RLWPMO) ) then
    call MAPL_LocStreamTransform( ExchGrid, RLWPMO, RLWPM, RC=STATUS)
    VERIFY_(STATUS)
    endif
    if ( associated(CLDTCMO) ) then
    call MAPL_LocStreamTransform( ExchGrid, CLDTCMO, CLDTCM, RC=STATUS)
    VERIFY_(STATUS)
    endif
    if ( associated(RHO) ) then
    call MAPL_LocStreamTransform( ExchGrid, RHO, RH, RC=STATUS)
    VERIFY_(STATUS)
    endif
    if ( associated(OZO) ) then
    call MAPL_LocStreamTransform( ExchGrid, OZO, OZ, RC=STATUS)
    VERIFY_(STATUS)
    endif
    if ( associated(WVO) ) then
    call MAPL_LocStreamTransform( ExchGrid, WVO, WV, RC=STATUS)
    VERIFY_(STATUS)
    endif

  • Here we also note that GEOSoceanbiosimple_GridComp https://github.com/GEOS-ESM/GEOSgcm_GridComp/tree/develop/GEOSogcm_GridComp/GEOSoceanbiosimple_GridComp and its contents are defunct because USE_ODAS directive is defunct, therefore this entire directory can be deleted.

@sanAkel sanAkel added enhancement New feature or request 0 diff structural Structural changes to repository that are zero-diff labels Oct 14, 2020
@sanAkel
Copy link
Contributor Author

sanAkel commented Oct 14, 2020

Associated feature brach is: feature/sanAkel/restr-DO_OBIO at https://github.com/GEOS-ESM/GEOSgcm_GridComp/tree/feature/sanAkel/restr-DO_OBIO

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0 diff structural Structural changes to repository that are zero-diff enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants