HEMCO icon indicating copy to clipboard operation
HEMCO copied to clipboard

Use USTAR read from GEOS instead of calculating from U10M and V10M

Open yuanjianz opened this issue 1 year ago • 9 comments

Name and Institution (Required)

Name: Yuanjian Zhang Institution: WashU

Describe the update

Use USTAR friction velocity from meteorology instead of calculating from wind at 10m. Comment out unused codes after this update but keep them following tradition.

Expected changes

Friction velocity is estimated to increase by 3 times. Dust emission is estimated to increase by 30 times, since dust emission is proportional to cube of friction velocity. Therefore, dust scaling factor needs to be recalculated. Following Meng, J.,et al, 2021, global annual dust emission for 2016 is scaled to 2000Tg.

Scaling factor GEOS-IT: 2.6421e-05 MERRA-2: 3.8891e-05 GEOS-FP: 3.0655e-05

Related Github Issue

#278

yuanjianz avatar Jun 03 '24 22:06 yuanjianz

Also, this PR will need to go into GC 14.5.0 / HEMCO 3.10.0, as this will change the fullchem benchmark simulation results. I've changed the target branch accordingly.

yantosca avatar Jun 04 '24 18:06 yantosca

@lizziel: If we remove the code in the dust extension to compute USTAR (friction velocity), would this prove to be a problem for other models like CESM? I presume that is one of the meteorological variables available.

yantosca avatar Jul 16 '24 15:07 yantosca

@yantosca: Removing the computation of USTAR in the dust extension is fine since we already have it available for use in drydep.

lizziel avatar Jul 16 '24 18:07 lizziel

@yuanjianz @ltmurray: Would you know what the scaling factor would be for the GCAP2 meteorology?

yantosca avatar Jul 18 '24 17:07 yantosca

I don't know what the scaling factor would be for GCAP2, which is presently tuned given the existing parameterization. USTAR has been archived for GCAP2 though.

ltmurray avatar Jul 18 '24 17:07 ltmurray

@yuanjianz @msulprizio @ltmurray @lizziel: We would need a companion PR to go along with this to update the setting of the $RUNDIR_DUSTDEAD_TF variable in the createRunDir.sh scripts for GCClassic and GCHP.

The current settings in run/GCClassic/createRunDir.sh are:

#----------------------------------------------------------------
# Horizontal resolution-dependent settings
#-----------------------------------------------------------------

if [[ ${met} = "ModelE2.1" ]]; then
    if [[ "$runid" == "E213f10aF40oQ40nudge" ]]; then
        if [[ "$grid_res" ==  "4x5" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='0.00474046'\n"
        elif [[ "$grid_res" == "2x25" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='0.00243979'\n"
        elif [[ "$grid_res" == "05x0625" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='0.00276896'\n"
        elif [[ "$grid_res" == "025x03125" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='0.00254319'\n"
	else
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='-999.0e0'\n"
  	fi
    else
        if [[ "$grid_res" ==  "4x5" ]]; then
            RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='0.03564873'\n"
        elif [[ "$grid_res" == "2x25" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='0.01050036'\n"
        elif [[ "$grid_res" == "05x0625" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='0.01340854'\n"
        elif [[ "$grid_res" == "025x03125" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='0.01066495'\n"
	else
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='-999.0e0'\n"
	fi
    fi
else
    RUNDIR_VARS+="RUNDIR_GISS_RES='not_used'\n"
    # Use GEOS-FP values as placeholders for GEOS-IT until parameters derived
    if [[ "x${sim_name}" == "xfullchem" || "x${sim_name}" == "xaerosol" ]]; then
	if [[ "x${met}" == "xgeosfp" && "x${grid_res}" == "x4x5" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='8.3286e-4'\n"
	elif [[ "x${met}" == "xgeosfp" && "x${grid_res}" == "x2x25" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='5.0416e-4'\n"
	elif [[ "x${met}" == "xmerra2" && "x${grid_res}" == "x4x5" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='7.8533e-4'\n"
	elif [[ "x${met}" == "xmerra2" && "x${grid_res}" == "x2x25" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='4.7586e-4'\n"
	elif [[ "x${met}" == "xgeosit" && "x${grid_res}" == "x4x5" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='8.3286e-4'\n"
	elif [[ "x${met}" == "xgeosit" && "x${grid_res}" == "x2x25" ]]; then
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='5.0416e-4'\n"
	else
	    RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='-999.0e0'\n"
	fi
    else
	RUNDIR_VARS+="RUNDIR_DUSTDEAD_TF='-999.0e0'\n"
    fi
fi

yantosca avatar Jul 18 '24 17:07 yantosca

@yuanjianz @yidant: Would either of you be able to compute the dust scale factors (see above post)?

yantosca avatar Jul 31 '24 18:07 yantosca

@yuanjianz @yidant: Would either of you be able to compute the dust scale factors (see above post)?

Hi @yantosca, sorry for the late response. I will try to work on this with Yidan.

@yidant, do we have GCAP2 archive at WashU?

yuanjianz avatar Aug 01 '24 16:08 yuanjianz

Thanks @yidant & @yuanjianz. When you can get to this. Not immediately urgent.

yantosca avatar Aug 01 '24 17:08 yantosca

Hi @yantosca, I haven't got the chance to touch base on GCAP2 yet. But I have already calculated dust scale factors for 2x2.5 and 4x5 for MERRA-2, GEOS-FP and GEOS-IT. See https://github.com/geoschem/geos-chem/pull/2512. Tag @ltmurray @yidant for help of running HEMCO standalone with GCAP2 meteorology.

yuanjianz avatar Oct 11 '24 04:10 yuanjianz

Hi @yantosca @yuanjianz and @ltmurray, we discussed this issue during today's GCST meeting. Let's enable this feature implementation to proceed for GEOS-IT, Merra-2 and GEOS-FP since that information has already been provided. The GCAP implementation could continue to use the older based on U10m and V10m fields with a warning message.

randallvmartin avatar Oct 24 '24 18:10 randallvmartin

All GEOS-Chem Classic integration tests passed:

==============================================================================
GEOS-Chem Classic: Execution Test Results

CodeDir   : b7e6523 GEOS-Chem update: Merge PR #2683 (Restore clobbered TMB updates)
GEOS-Chem : 015246bf3 Merge 14.6.0-alpha.2 into feature/dust-scale-factors-Ustar
HEMCO     : 096fefc Merge HEMCO 3.10.1 into bugfix/dustdead-ustar-geos
Cloud-J   : f8a2b7f Update version number for 8.0.1 release
HETP      : 2a99b24 Merge pull request #2 from geoschem/bugfix/initialize_local_variables

Using 24 OpenMP threads
Number of execution tests: 30

Submitted as SLURM job: 66876678
==============================================================================

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%  All execution tests passed!  %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

yantosca avatar Jan 17 '25 20:01 yantosca

All GEOS-Chem Classic integration tests passed:

==============================================================================
GEOS-Chem Classic: Execution Test Results

CodeDir   : b7e6523 GEOS-Chem update: Merge PR #2683 (Restore clobbered TMB updates)
GEOS-Chem : 015246bf3 Merge 14.6.0-alpha.2 into feature/dust-scale-factors-Ustar
HEMCO     : 096fefc Merge HEMCO 3.10.1 into bugfix/dustdead-ustar-geos
Cloud-J   : f8a2b7f Update version number for 8.0.1 release
HETP      : 2a99b24 Merge pull request #2 from geoschem/bugfix/initialize_local_variables

Using 24 OpenMP threads
Number of execution tests: 30

Submitted as SLURM job: 66876678
==============================================================================

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%  All execution tests passed!  %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

yantosca avatar Jan 21 '25 16:01 yantosca

All GCHP integration tests passed:

==============================================================================
GCHP: Execution Test Results

CodeDir       : 3089c38 GEOS-Chem update: Merge PR #2683 (Restore clobbered TMB updates)
MAPL          : 9ad63ae Merge PR #37 containing update to vertically flip imports with dimensionless pressure proxy lev coordinates
GMAO_Shared   : 4ddb3ec Merge pull request #2 from geoschem/feature/mapl-upgrade
ESMA_cmake    : ad5deba Added ecbuild as a submodule of ESMA_cmake
gFTL-shared   : 4b82492 Merge branch 'upstream_v1.5.0' into feature/v1.5.0
FMS           : 259759d Merge pull request #3 from geoschem/feature/update_gmao_libs
FVdycoreCubed : af42462 Merge PR #8 (Add PLEadv diagnostic for offline advection in GCHP)
geos-chem     : 015246bf3 Merge 14.6.0-alpha.2 into feature/dust-scale-factors-Ustar
HEMCO         : 096fefc Merge HEMCO 3.10.1 into bugfix/dustdead-ustar-geos
yaFyaml       : 19afe50 Merge branch 'upstream_v1.0.4' into feature/v1.0.4
pFlogger      : 2c4b724 Merge branch 'upstream_v1.9.1' into feature/v1.9.1
Cloud-J       : f8a2b7f Update version number for 8.0.1 release
HETP          : 2a99b24 Merge pull request #2 from geoschem/bugfix/initialize_local_variables

Number of execution tests: 12

Submitted as SLURM job: 66899697
==============================================================================

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%  All execution tests passed!  %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

yantosca avatar Jan 21 '25 16:01 yantosca

We are re-running integration tests after having merged locally atop 14.6.0-alpha.4.

yantosca avatar Jan 23 '25 19:01 yantosca

After merging on top of 14.6.0-alpha.4, all GCHP integration tests passed:

==============================================================================
GCHP: Execution Test Results

CodeDir       : 2f6dc98 Merge PR #471 (Increased memory for GCHP cloud benchmarks)
MAPL          : 9ad63ae Merge PR #37 containing update to vertically flip imports with dimensionless pressure proxy lev coordinates
GMAO_Shared   : 4ddb3ec Merge pull request #2 from geoschem/feature/mapl-upgrade
ESMA_cmake    : ad5deba Added ecbuild as a submodule of ESMA_cmake
gFTL-shared   : 4b82492 Merge branch 'upstream_v1.5.0' into feature/v1.5.0
FMS           : 259759d Merge pull request #3 from geoschem/feature/update_gmao_libs
FVdycoreCubed : af42462 Merge PR #8 (Add PLEadv diagnostic for offline advection in GCHP)
geos-chem     : d132546db Merge PR #2512 (Update dust SFs for DustDEAD w/ USTAR)
HEMCO         : 2423647 Merge PR #279 (Use USTAR from met in DustDEAD extension)
yaFyaml       : 19afe50 Merge branch 'upstream_v1.0.4' into feature/v1.0.4
pFlogger      : 2c4b724 Merge branch 'upstream_v1.9.1' into feature/v1.9.1
Cloud-J       : f8a2b7f Update version number for 8.0.1 release
HETP          : 2a99b24 Merge pull request #2 from geoschem/bugfix/initialize_local_variables

Number of execution tests: 12

Submitted as SLURM job: 467494
==============================================================================

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%  All execution tests passed!  %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

yantosca avatar Jan 23 '25 21:01 yantosca