geoschem / geos-chem

GEOS-Chem "Science Codebase" repository. Contains GEOS-Chem science routines, run directory generation scripts, and interface code. This repository is used as a submodule within the GCClassic and GCHP wrappers, as well as in other modeling contexts (external ESMs).
http://geos-chem.org
Other
164 stars 156 forks source link

[QUESTION] How to calculate and archive deposition of specific species (NIT) in GEOS-Chem code? #1452

Closed debatoshpartha closed 1 year ago

debatoshpartha commented 1 year ago

Hi,

I am trying to calculate and archive the NIT deposition flux (in molec/cm2/s) and using the procedure below, I am also archiving the dry and wet deposition of NIT from DryDep (molec/cm2/s) and WetLossLS (kg/s) collection from a standard 1-hr simulation (w/o the inclusion of my code, referred as control simulation i.e., CRL) to check if my calculated deposition of NIT is the right amount of NIT deposition compared with the abovementioned collections but my calculated amount of nitrate deposition is too low if compared with the dry deposition of NIT only from CRL DryDep collection.

! Convert from [kg/timestep] to [molec/cm2/s]

IF (State_Diag%Archive_DEPNITFLUX) THEN

       DEPNITFLUX(I,J) =  DEPNITFLUX(I,J) + &
                          (Spc(I,J,1,id_NIT) * 1.e+3 * 6.023e+23 / (AREA_CM2) / &
                          State_Chm%SpcData(id_NIT)%Info%MW_g)

!Archive NIT deposition flux [molec/cm2/s]
       State_Diag%DEPNITFLUX(I,J) =  DEPNITFLUX(I,J)
       ENDIF

Results:

Test DRY DEPNIT  flux from CRL mean (molec/cm2/s)
  4.51603e+08
Test DRY DEPNIT  flux from CRL max (molec/cm2/s)
  6.23566e+10
Test DRY DEPNIT  flux from CRL min(molec/cm2/s)
      0.00000
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Test WetDep of NIT from CRL mean (kg/s)
  0.000594815
Test WetDep of NIT from CRL max (kg/s)
      3.19101
Test WetDep of NIT from CRL min(kg/s)
    -0.355270
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Test DEPNIT  flux from SENS mean (molec/cm2/s)
      1423.32
Test DEPNIT  flux from SENS max (molec/cm2/s)
      54702.2
Test DEPNIT  flux from SENS min(molec/cm2/s)
      0.00000

is this the correct way to calculate the deposition of any specific species? If yes, how can I achieve similar results or call the dry and wet nitrate deposition from DryDep and WetLossLS collection in my code?

yantosca commented 1 year ago

Thanks for writing @debatoshpartha. You can always do this:

print,*, 'species units:', TRIM(State_Chm%Spc_Units)

to find out what the current species units are in your code. Then that will dictate the unit conversion that you'll need to do.

Also you can look at the file GeosUtil/unitconv_mod.F90, which has several unit conversions... you can copy the algorithm into your code.

The unit conversion below seems correct assuming that your species array (State_Chm%Species, pointed to by Spc) is in kg.

IF (State_Diag%Archive_DEPNITFLUX) THEN

   !Archive NIT deposition flux [molec/cm2/s]
   State_Diag%DEPNITFLUX(I,J) =  (Spc(I,J,1,id_NIT) * 1.e+3 * AVO / (AREA_CM2) / &
                                 State_Chm%SpcData(id_NIT)%Info%MW_g)
ENDIF

Also tagging @Jourdan-He @SaptSinha

yantosca commented 1 year ago

Also, you shouldn't need to do e.g. DEPNITFLUX(I,J) = DEPNITFLUX(I,J) + ... just to save into diagnostics. The diagnostics will do the summing for you when you request a time-averaged collection.

debatoshpartha commented 1 year ago

If I don't add this part DEPNITFLUX(I,J) = DEPNITFLUX(I,J) + ... the values come out even lower. But if I omit the I and J grid axis, the values actually are closer to the archived DryDep and WetLossLS values but there's no spatial distribution of the deposition of NIT (see results & plots below).

Test DRY DEPNIT  flux from CRL mean (molec/cm2/s)
  4.84754e+08
Test DRY DEPNIT  flux from CRL max (molec/cm2/s)
  3.48741e+10
Test DRY DEPNIT  flux from CRL min(molec/cm2/s)
      0.00000
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Test WetDep of NIT from CRL mean (kg/s)
  0.000394294
Test WetDep of NIT from CRL max (kg/s)
      1.65496
Test WetDep of NIT from CRL min(kg/s)
    -0.316239
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Test DEPNIT  flux from SENS mean (molec/cm3)
  3.79656e+10
Test DEPNIT  flux from SENS max (molec/cm3)
  3.84573e+10
Test DEPNIT  flux from SENS min(molec/cm3)
  3.79232e+10
Screen Shot 2022-10-20 at 2 42 39 PM

Please let me know your thoughts.

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. If there are no updates within 7 days it will be closed. You can add the "never stale" tag to prevent the Stale bot from closing this issue.

stale[bot] commented 1 year ago

Closing due to inactivity