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

updates to dry dep, incl. test #36

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
234 commits
Select commit Hold shift + click to select a range
ac35259
updates to dry dep, incl. test
lholland-noaa Aug 1, 2024
753e8cf
dry dep test
lholland-noaa Aug 1, 2024
640f181
bring chemstate inline with feature/plumerise
bbakernoaa Aug 2, 2024
709311d
slight modification to config_opt_mod and therefore config_mod
bbakernoaa Aug 2, 2024
afa7842
add drydep diagnostics to diagstate_mod
bbakernoaa Aug 2, 2024
6aa229a
update init_mod with chemstate and diag_allocate call
bbakernoaa Aug 2, 2024
605adb5
Bring metstate up to date with feature/plumerise
bbakernoaa Aug 2, 2024
e2a0995
bring species_mod up to date with feature/plumerise
bbakernoaa Aug 2, 2024
e1515bf
update statemod to feature/plumerise
bbakernoaa Aug 2, 2024
3395dc0
restructure slightly and add loop over species / add to diag/ modify …
bbakernoaa Aug 2, 2024
d751eda
add seasalt test back to build
bbakernoaa Aug 2, 2024
c708bf6
Merge pull request #2 from bbakernoaa/feature/drydep_try
lholland-noaa Aug 7, 2024
35b9dcf
Merging core with plumerise
lholland-noaa Aug 15, 2024
62e0489
Merging core with plumerise
lholland-noaa Aug 15, 2024
199ecbc
removed repeat of code section that was causing error
lholland-noaa Aug 15, 2024
9b88841
removed repeat of code section that was causing error
lholland-noaa Aug 15, 2024
3b5ae2e
Pushing over next merge attempt
lholland-noaa Aug 16, 2024
98a2ea7
Added missing Diagstate module :-)
lholland-noaa Aug 16, 2024
0309bf9
Added missing Diagstate module
lholland-noaa Aug 16, 2024
39ec352
add copied files
lholland-noaa Aug 21, 2024
fd9b9dc
resolve issues from merge
lholland-noaa Aug 21, 2024
41db9ba
resolve issues from merge v2
lholland-noaa Aug 21, 2024
14fee96
resolving conficts part 4
lholland-noaa Aug 21, 2024
424f0c5
resolve conflicts part 2
lholland-noaa Aug 21, 2024
869cb35
pre-commit
lholland-noaa Aug 21, 2024
a028711
resolve conflicts part 3
lholland-noaa Aug 21, 2024
7f28a5c
pre-commit
lholland-noaa Aug 21, 2024
caea4f8
add chemstate to diag_allocate
lholland-noaa Aug 21, 2024
7fc1d66
pre-commit
lholland-noaa Aug 21, 2024
5afa358
fix bracket
lholland-noaa Aug 21, 2024
61414b8
fix inout chemstate
lholland-noaa Aug 21, 2024
bc5a994
remove duplicate config for chem/emis
lholland-noaa Aug 21, 2024
cabe5e2
adding dry dep test
lholland-noaa Aug 21, 2024
c90cee4
Fixing dry dep test
lholland-noaa Aug 21, 2024
c047b38
adding drydep test f90
lholland-noaa Aug 21, 2024
0243b7a
adding drydep test f90
lholland-noaa Aug 21, 2024
b973740
fixing cmakelists
lholland-noaa Aug 21, 2024
ae8e81e
fixing variables names in test
lholland-noaa Aug 21, 2024
40ded98
more updates to variable names
lholland-noaa Aug 21, 2024
aa1814b
Adding in Dry Dep, adjusting variable names
lholland-noaa Aug 21, 2024
2c2a5ba
added metstate to chemstate for n levels
lholland-noaa Aug 21, 2024
0ae3e68
fixing met state call
lholland-noaa Aug 21, 2024
072a7ef
removing met state call
lholland-noaa Aug 21, 2024
5f5de21
adding dry dep to api
lholland-noaa Aug 21, 2024
36399b6
adding dry dep to api
lholland-noaa Aug 21, 2024
aa4e851
added drydep to api dir's cmake file
lholland-noaa Aug 21, 2024
3110c5c
Adding cmake list for drydep back
lholland-noaa Aug 21, 2024
7da65d6
correcting more variable names in dry dep process
lholland-noaa Aug 21, 2024
436d08c
improving consistency of dry dep variable names
lholland-noaa Aug 21, 2024
23a4a59
Adding drydep back to catchem lib
lholland-noaa Aug 26, 2024
ecc7708
modifications to organization, etc.
lholland-noaa Aug 26, 2024
2cee62f
implemented if statement for optional parameters
lholland-noaa Aug 26, 2024
5aec401
REmoved arrows from merge
lholland-noaa Aug 27, 2024
eb0f7b5
resolving conflicts
lholland-noaa Aug 27, 2024
f37a51f
trying to resolve merge conflicts
lholland-noaa Aug 27, 2024
e1e1c20
fixing inconsistency in variable name
lholland-noaa Aug 27, 2024
7137415
too many ifs
lholland-noaa Aug 27, 2024
d29f0d0
Update CCPr_DryDep_Mod.F90
lholland-noaa Aug 28, 2024
b36fcd2
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Aug 28, 2024
e3bb59f
Update chemstate_mod.F90
lholland-noaa Aug 28, 2024
a98e5ef
Update CCPr_DryDep_Mod.F90
lholland-noaa Aug 28, 2024
f9148a7
Update CCPr_DryDep_Mod.F90
lholland-noaa Aug 28, 2024
38d4d04
Update CCPr_DryDep_Mod.F90
lholland-noaa Aug 29, 2024
2391c67
added comment, marking where next step should be
lholland-noaa Sep 10, 2024
9513ff0
BB rework
bbakernoaa Sep 11, 2024
76fdcfe
Adding rhop to function call
bbakernoaa Sep 11, 2024
9ee53e3
Merge pull request #4 from bbakernoaa/feature/gocart_drydep2
lholland-noaa Sep 11, 2024
5db1204
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
a5b9205
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
5887316
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
379dd1a
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
9b1a7c9
Update Profile_AMAZON_Aug_06z.csv
lholland-noaa Sep 11, 2024
834390a
Update Profile_AMAZON_Aug_12z.csv
lholland-noaa Sep 11, 2024
22708ed
Update Profile_AMAZON_Aug_18z.csv
lholland-noaa Sep 11, 2024
af7cdec
Update Profile_NCWCP.csv
lholland-noaa Sep 11, 2024
7abfed2
Update Profile_NCWCP_Aug_06z.csv
lholland-noaa Sep 11, 2024
a8a1bac
Update Profile_NCWCP_Aug_12z.csv
lholland-noaa Sep 11, 2024
f214fca
Update Profile_NCWCP_Aug_18z.csv
lholland-noaa Sep 11, 2024
104ff63
Update Profile_SAHARA.csv
lholland-noaa Sep 11, 2024
6424ae8
Update Profile_SAHARA_Aug_06z.csv
lholland-noaa Sep 11, 2024
213751a
Update Profile_SAHARA_Aug_12z.csv
lholland-noaa Sep 11, 2024
12f9256
Update Profile_SAHARA_Aug_18z.csv
lholland-noaa Sep 11, 2024
f00a21c
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
eb40d32
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 11, 2024
c3e18aa
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
4b4829c
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 11, 2024
05100e8
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
6414195
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 11, 2024
f990945
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
cefb98f
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
20e2e87
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
7f09ca7
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 11, 2024
eaa0012
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
12e3bb5
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 11, 2024
83125c9
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 11, 2024
4076b41
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 12, 2024
fcd0b9b
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 12, 2024
4b41bd0
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 12, 2024
5ef55ba
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 12, 2024
1acbcea
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 12, 2024
e323c1a
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 12, 2024
e357db7
Merge branch 'begins' into drydep
zmoon Sep 12, 2024
7c896ef
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 13, 2024
c5a936d
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 13, 2024
fcbc805
Update CMakeLists.txt
lholland-noaa Sep 13, 2024
e1fb6c6
Update CMakeLists.txt
lholland-noaa Sep 13, 2024
7bc28d2
Update CMakeLists.txt
lholland-noaa Sep 13, 2024
cd418fd
Update CMakeLists.txt
lholland-noaa Sep 13, 2024
d01d8ac
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 13, 2024
4d5671b
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 13, 2024
ad577e4
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 13, 2024
cdd288c
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 13, 2024
35f1392
getting drydep to compile
bbakernoaa Sep 13, 2024
f126fa6
Merge branch 'feature/gocart_drydep2' into feature/drydep_compile
lholland-noaa Sep 13, 2024
2765c70
Merge pull request #5 from bbakernoaa/feature/drydep_compile
lholland-noaa Sep 13, 2024
2d4e4cb
Really LWI is integer
zmoon Sep 13, 2024
9fc0c52
Not used (just state mod)
zmoon Sep 13, 2024
0226f1a
Test almost compiling
zmoon Sep 13, 2024
04c14ee
Builds now
zmoon Sep 13, 2024
6c21247
Allocate
zmoon Sep 13, 2024
929cd22
Update CATChem_config.yml
lholland-noaa Sep 16, 2024
521efad
Update CATChem_config.yml
lholland-noaa Sep 16, 2024
9285421
Update config_opt_mod.F90
lholland-noaa Sep 16, 2024
84699e2
Update config_mod.F90
lholland-noaa Sep 16, 2024
1d511eb
Update CATChem_species.yml
lholland-noaa Sep 16, 2024
47aee7e
Update test_drydep.f90
lholland-noaa Sep 17, 2024
a4fa6ad
Update test_drydep.f90
lholland-noaa Sep 17, 2024
3a20f40
Update test_drydep.f90
lholland-noaa Sep 17, 2024
af9578f
Update test_drydep.f90
lholland-noaa Sep 17, 2024
fca4714
Update test_drydep.f90
lholland-noaa Sep 17, 2024
e66a7b7
Update test_drydep.f90
lholland-noaa Sep 17, 2024
cd47a32
Update test_drydep.f90
lholland-noaa Sep 17, 2024
c09d84d
Update test_drydep.f90
lholland-noaa Sep 17, 2024
2fc7a5b
Update test_drydep.f90
lholland-noaa Sep 17, 2024
9960a6d
Update diagstate_mod.F90
lholland-noaa Sep 17, 2024
7f7b421
Update metstate_mod.F90
lholland-noaa Sep 17, 2024
871bacd
Update test_drydep.f90
lholland-noaa Sep 17, 2024
a3d366f
Update test_drydep.f90
lholland-noaa Sep 17, 2024
ebc96d2
Update test_drydep.f90
lholland-noaa Sep 17, 2024
59118ef
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 17, 2024
9e09833
Update test_drydep.f90
lholland-noaa Sep 17, 2024
4b5ad29
Update metstate_mod.F90
lholland-noaa Sep 17, 2024
4266211
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 17, 2024
960d755
resolving conflict
lholland-noaa Sep 17, 2024
0f2416d
Fixing how DryDepState SchemeOpt is set
lholland-noaa Sep 17, 2024
c693ac5
Update test_drydep.f90
lholland-noaa Sep 17, 2024
a8947d8
Update test_drydep.f90
lholland-noaa Sep 17, 2024
addd343
adding dry dep aerosols into dry dep summary
lholland-noaa Sep 18, 2024
ae920a4
adding default for drydep scheme
lholland-noaa Sep 18, 2024
ab6ee26
fixing typos
lholland-noaa Sep 18, 2024
41787b2
attempting to use reshape to assign to a pointer
lholland-noaa Sep 18, 2024
fe6d185
rethinking value assignment method
lholland-noaa Sep 18, 2024
06b3ff1
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
bdeb85a
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
25015e4
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
3f17655
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
cbf5fd8
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
dde84a8
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
e6180c9
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
6756a00
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
06d5af0
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
34efd2a
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 18, 2024
c0fc497
Update test_drydep.f90
lholland-noaa Sep 18, 2024
3b060da
Update test_drydep.f90
lholland-noaa Sep 18, 2024
8ddbaeb
Update test_drydep.f90
lholland-noaa Sep 18, 2024
d89047c
restoring print_info calls (from comments)
lholland-noaa Sep 19, 2024
188a68d
changing from moist air density to dry air density, upon closer inspe…
lholland-noaa Sep 19, 2024
ad67dc8
fixed a typo in config file, making capitalization more consistent
lholland-noaa Sep 19, 2024
f82786b
modified print_info in test_drydep
lholland-noaa Sep 19, 2024
7ca5e1d
updating default drydepscheme opt values
lholland-noaa Sep 19, 2024
af917ff
changes to config file read-in test
lholland-noaa Sep 19, 2024
834a85c
edits to print_info in cases of unassigned variables
lholland-noaa Sep 19, 2024
c28113e
writing out completion of tests
lholland-noaa Sep 19, 2024
5b6a37f
adding more detail prior to calls to print_info
lholland-noaa Sep 19, 2024
d447732
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 20, 2024
2254117
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 20, 2024
0a18817
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 20, 2024
b0df8b4
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 20, 2024
f5471c5
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 20, 2024
01dd04a
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 20, 2024
864398e
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 20, 2024
e1f9f9a
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 20, 2024
8aa27a5
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 23, 2024
6f8aee7
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 23, 2024
5ba8b8e
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 23, 2024
90d3204
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 23, 2024
46ba138
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 23, 2024
cc483b5
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 23, 2024
1e6b10b
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 23, 2024
38e2b5e
Update test_drydep.f90
lholland-noaa Sep 24, 2024
4fbb699
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 24, 2024
1f5d36f
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 24, 2024
52d8288
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 24, 2024
90562c3
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 24, 2024
7320b06
Update test_drydep.f90
lholland-noaa Sep 24, 2024
8323691
Update test_drydep.f90
lholland-noaa Sep 24, 2024
5f87696
Update test_drydep.f90
lholland-noaa Sep 24, 2024
30b3e82
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 24, 2024
fa5de7b
Update test_drydep.f90
lholland-noaa Sep 24, 2024
7b8369d
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 24, 2024
d0bf9ef
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 24, 2024
7ec7fe5
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 24, 2024
41148ee
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 24, 2024
3be4457
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
76b7dc8
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
3489c69
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
1645488
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
35ea6be
Update test_drydep.f90
lholland-noaa Sep 25, 2024
6914abf
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
16c2dea
Update test_drydep.f90
lholland-noaa Sep 25, 2024
137ddd8
Update test_drydep.f90
lholland-noaa Sep 25, 2024
10b8673
Update test_drydep.f90
lholland-noaa Sep 25, 2024
7adba2f
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
9bafaf8
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
d703cfe
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
85e1214
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
5d28623
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
cdc9554
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
963cf91
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
3308fee
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
fe19a9b
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 25, 2024
9ec732e
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 25, 2024
888e4e9
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 26, 2024
ec9ccdc
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 26, 2024
4a37979
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 26, 2024
4f71538
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 26, 2024
d903f18
Update CCPr_DryDep_Mod.F90
lholland-noaa Sep 26, 2024
e333bf3
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 26, 2024
a655859
Update test_drydep.f90
lholland-noaa Sep 26, 2024
7fdde26
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 27, 2024
db3be7d
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 27, 2024
cd24524
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 27, 2024
4128776
Update ccpr_scheme_GOCART_DryDep_mod.F90
lholland-noaa Sep 27, 2024
c9038ba
pre-commit
bbakernoaa Sep 30, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
add_subdirectory(core)
add_subdirectory(process)
add_subdirectory(external)
add_subdirectory(process)
add_subdirectory(api)
1 change: 1 addition & 0 deletions src/api/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,6 @@ target_link_libraries(${_lib} PUBLIC CATChem_core)
target_link_libraries(${_lib} PUBLIC CATChem_process_dust)
target_link_libraries(${_lib} PUBLIC CATChem_process_seasalt)
target_link_libraries(${_lib} PUBLIC CATChem_process_plumerise)
target_link_libraries(${_lib} PUBLIC CATChem_process_drydep)
set_target_properties(${_lib} PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_BINARY_DIR}/include)
target_compile_options(${_lib} PRIVATE ${_catchem_compiler_options})
5 changes: 5 additions & 0 deletions src/api/catchem.F90
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,11 @@ module CATChem
use CCPr_Plumerise_mod, only: cc_plumerise_init => CCPr_Plumerise_Init !< Plumerise Process Initialization Routine
use CCPr_Plumerise_mod, only: cc_plumerise_run => CCPr_Plumerise_Run !< Plumerise Process Run Routine
use CCPr_Plumerise_mod, only: cc_plumerise_finalize => CCPr_Plumerise_Finalize !< Plumerise Process Finalization Routine
! Dry Dep
use CCPr_DryDep_mod, only: DryDepStateType !< DryDep State
use CCPr_DryDep_mod, only: cc_drydep_init => CCPr_DryDep_Init !< DryDep Process Initialization Routine
use CCPr_DryDep_mod, only: cc_drydep_run => CCPr_DryDep_Run !< DryDep Process Run Routine
use CCPr_DryDep_mod, only: cc_drydep_finalize => CCPr_DryDep_Finalize !< DryDep Process Finalization Routine

implicit none

Expand Down
24 changes: 22 additions & 2 deletions src/core/chemstate_mod.F90
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
!>
!! \file chemstate_mod.F90
!> \file chemstate_mod.F90
!! \brief Contains the `ChemStateType` data type and related subroutines and functions.
!!
!!
Expand Down Expand Up @@ -63,6 +62,7 @@ module ChemState_Mod
INTEGER :: nSpecies !< Total Number of Species
INTEGER :: nSpeciesGas !< Number of Gas Species
INTEGER :: nSpeciesAero !< Number of Aerosol Species
INTEGER :: nSpeciesAeroDryDep !< Number of Aerosol Species for Dry Dep
INTEGER :: nSpeciesTracer !< Number of Tracer Species
INTEGER :: nSpeciesDust !< Number of Dust Species
INTEGER :: nSpeciesSeaSalt !< Number of SeaSalt Species
Expand All @@ -72,6 +72,7 @@ module ChemState_Mod
INTEGER, ALLOCATABLE :: GasIndex(:) !< Gas Species Index
INTEGER, ALLOCATABLE :: DustIndex(:) !< Dust Species Index
INTEGER, ALLOCATABLE :: SeaSaltIndex(:) !< SeaSalt Species Index
INTEGER, ALLOCATABLE :: DryDepIndex(:) !< SeaSalt Species Index
CHARACTER(len=50), ALLOCATABLE :: SpeciesNames(:) !< Species Names

!---------------------------------------------------------------------
Expand Down Expand Up @@ -100,11 +101,13 @@ subroutine Chem_Allocate(GridState, ChemState, RC)
! USES
USE GridState_Mod, ONLY : GridStateType
USE Species_Mod, Only : SpeciesType
USE Metstate_Mod

IMPLICIT NONE

! INOUT Params
type(GridStateType), INTENT(in) :: GridState ! Grid State object
!type(MetStateType), INTENT(in) :: MetState ! Met State object
type(ChemStateType), INTENT(inout) :: ChemState ! chem State object
! type(SpeciesType), POINTER :: Species ! Species object
! OUTPUT Params
Expand Down Expand Up @@ -176,6 +179,7 @@ subroutine Find_Number_of_Species(ChemState, RC)

! Initialize to zero before counting species
ChemState%nSpeciesAero = 0
ChemState%nSpeciesAeroDryDep = 0
ChemState%nSpeciesDust = 0
ChemState%nSpeciesGas = 0
ChemState%nSpeciesSeaSalt = 0
Expand All @@ -198,6 +202,9 @@ subroutine Find_Number_of_Species(ChemState, RC)
if (ChemState%ChemSpecies(i)%is_tracer .eqv. .true.) then
ChemState%nSpeciesTracer = ChemState%nSpeciesTracer + 1
endif
if (ChemState%ChemSpecies(i)%is_drydep .eqv. .true.) then
ChemState%nSpeciesAeroDryDep = ChemState%nSpeciesAeroDryDep + 1
endif
enddo

end subroutine Find_Number_of_Species
Expand Down Expand Up @@ -231,6 +238,7 @@ subroutine Find_Index_of_Species(ChemState, RC)
integer :: dust_index ! Current Dust Index
integer :: seasalt_index ! Current Seas Salt Index
integer :: tracer_index ! Current Tracer Index
integer :: drydep_index ! Current DryDep Index


! Initialize
Expand All @@ -245,6 +253,7 @@ subroutine Find_Index_of_Species(ChemState, RC)
dust_index = 1
seasalt_index = 1
tracer_index = 1
drydep_index = 1

! Allocate index arrays
ALLOCATE(Chemstate%AeroIndex(ChemState%nSpeciesAero), STAT=RC)
Expand Down Expand Up @@ -282,6 +291,13 @@ subroutine Find_Index_of_Species(ChemState, RC)
RETURN
ENDIF

ALLOCATE(Chemstate%DryDepIndex(ChemState%nSpeciesAeroDryDep), STAT=RC)
IF ( RC /= CC_SUCCESS ) THEN
errMsg = 'Error allocating Chemstate%DryDepIndex'
call CC_Error(errMsg, RC, thisLoc)
RETURN
ENDIF

! Find indices for species groups
do n = 1, ChemState%nSpecies
if (ChemState%ChemSpecies(n)%is_aerosol .eqv. .true.) then
Expand All @@ -304,6 +320,10 @@ subroutine Find_Index_of_Species(ChemState, RC)
Chemstate%TracerIndex(tracer_index) = n
tracer_index = tracer_index + 1
endif
if (ChemState%ChemSpecies(n)%is_drydep .eqv. .true.) then
Chemstate%DryDepIndex(drydep_index) = n
drydep_index = drydep_index + 1
endif
enddo

end subroutine Find_index_of_Species
Expand Down
114 changes: 112 additions & 2 deletions src/core/config_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ SUBROUTINE Read_Input_File( Config , GridState, EmisState, ChemState, RC, Config
! Assume success
RC = CC_SUCCESS
errMsg = ''
thisLoc = ' -> at Read_Input_File (in module CATChem/src/core/input_mod.F90)'
thisLoc = ' -> at Read_Input_File (in module CATChem/src/core/config_mod.F90)'

!========================================================================
! Read the YAML file into the Config object
Expand Down Expand Up @@ -164,6 +164,16 @@ SUBROUTINE Read_Input_File( Config , GridState, EmisState, ChemState, RC, Config
RETURN
ENDIF

call Config_Process_DryDep(ConfigInput, Config, RC)
IF ( RC /= CC_SUCCESS ) THEN
errMsg = 'Error in "Config_Process_DryDep"!'
CALL CC_Error( errMsg, RC, thisLoc )
CALL QFYAML_CleanUp( ConfigInput )
CALL QFYAML_CleanUp( ConfigAnchored )
RETURN
ENDIF


!========================================================================
! Config ChemState
!========================================================================
Expand Down Expand Up @@ -554,6 +564,7 @@ SUBROUTINE Config_Chem_State( filename, GridState, ChemState, RC )
write(*,*) '| Chemstate SUMMARY'
write(*,*) '| number_of_species: ', ChemState%nSpecies
write(*,*) '| number_of_aerosols: ', ChemState%nSpeciesAero
write(*,*) '| number_of_aerosols with dry dep: ', ChemState%nSpeciesAeroDryDep
write(*,*) '| number_of_gases: ', ChemState%nSpeciesGas
write(*,*) '| number of tracers: ', ChemState%nSpeciesTracer
write(*,*) '| number of dust: ', ChemState%nSpeciesDust
Expand Down Expand Up @@ -1256,7 +1267,7 @@ SUBROUTINE Config_Process_Plumerise( ConfigInput, Config, RC )

! Initialize
RC = CC_SUCCESS
thisLoc = ' -> at Config_Process_SeaSalt (in CATChem/src/core/config_mod.F90)'
thisLoc = ' -> at Config_Process_Plumerise (in CATChem/src/core/config_mod.F90)'
errMsg = ''

key = "process%plumerise%activate"
Expand All @@ -1276,4 +1287,103 @@ SUBROUTINE Config_Process_Plumerise( ConfigInput, Config, RC )

END SUBROUTINE Config_Process_Plumerise


!> \brief Process DryDep configuration
!!
!! This function processes the DryDep configuration and performs the necessary actions based on the configuration.
!!
!! \param[in] ConfigInput The YAML configuration object
!! \param[inout] Config The configuration object
!! \param[out] RC The return code
!!
!! \ingroup core_modules
!!!>
SUBROUTINE Config_Process_DryDep( ConfigInput, Config, RC )
USE CharPak_Mod, ONLY : StrSplit
USE Error_Mod
USE Config_Opt_Mod, ONLY : ConfigType

TYPE(QFYAML_t), INTENT(INOUT) :: ConfigInput ! YAML Config object
TYPE(ConfigType), INTENT(INOUT) :: Config ! Input options

!
! !OUTPUT PARAMETERS:
!
INTEGER, INTENT(OUT) :: RC ! Success or failure
! !LOCAL VARIABLES:
!
! Scalars
LOGICAL :: v_bool
INTEGER :: v_int
INTEGER :: nSubStrs
INTEGER :: N
INTEGER :: C

! Reals
REAL(fp) :: v_real

! Arrays
INTEGER :: a_int(4)

! Strings
CHARACTER(LEN=255) :: thisLoc
CHARACTER(LEN=512) :: errMsg
CHARACTER(LEN=QFYAML_StrLen) :: key
CHARACTER(LEN=QFYAML_StrLen) :: v_str

! String arrays
CHARACTER(LEN=255) :: subStrs(MAXDIM)
CHARACTER(LEN=QFYAML_StrLen) :: a_str(2)

!========================================================================
! Config_Process_DryDep begins here!
!========================================================================

! Initialize
RC = CC_SUCCESS
thisLoc = ' -> at Config_Process_DryDep (in CATChem/src/core/config_mod.F90)'
errMsg = ''

! TODO #105 Fix reading of config file
key = "process%drydep%activate"
v_bool = MISSING_BOOL
CALL QFYAML_Add_Get( ConfigInput, TRIM( key ), v_bool, "", RC )
IF ( RC /= CC_SUCCESS ) THEN
errMsg = 'Error parsing ' // TRIM( key ) // '!'
CALL CC_Error( errMsg, RC, thisLoc )
RETURN
ENDIF
Config%drydep_activate = v_bool


key = "process%drydep%scheme_opt"
v_int = MISSING_INT
CALL QFYAML_Add_Get( ConfigInput, TRIM( key ), v_int, "", RC )
IF ( RC /= CC_SUCCESS ) THEN
errMsg = TRIM( key ) // 'Not Found, Setting Default to 1'
v_int = 1 ! default is one
RETURN
ENDIF
Config%drydep_scheme = v_int


key = "process%drydep%resuspension"
v_bool = MISSING_BOOL
CALL QFYAML_Add_Get( ConfigInput, TRIM( key ), v_bool, "", RC )
IF ( RC /= CC_SUCCESS ) THEN
errMsg = TRIM( key ) // 'Not Found, Setting Default to FALSE'
RETURN
ENDIF
Config%drydep_resuspension = v_bool

write(*,*) "DryDeposition Configuration"
write(*,*) '------------------------------------'
write(*,*) 'Config%drydep_activate = ', Config%drydep_activate
write(*,*) 'Config%drydep_scheme = ', Config%drydep_scheme
write(*,*) 'Config%drydep_resuspension = ', Config%drydep_resuspension
write(*,*) '------------------------------------'

END SUBROUTINE Config_Process_DryDep


END MODULE config_mod
13 changes: 11 additions & 2 deletions src/core/config_opt_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@ MODULE Config_Opt_Mod
!! - `dust_scheme_opt` : Scheme option for dust process
!! - `seasalt_activate` : Activate seasalt process
!! - `seasalt_scheme_opt` : Scheme option for seasalt process
!! - `drydep_activate` : Activate drydep process
!! - `drydep_scheme` : Scheme option for drydep process
!! - `drydep_resuspension` : Activate resuspension
!!
!! \ingroup core_modules
!!!>
Expand Down Expand Up @@ -94,7 +97,10 @@ MODULE Config_Opt_Mod
! Plumerise Process
LOGICAL :: plumerise_activate


! DryDeposition Process
LOGICAL :: drydep_activate
INTEGER :: drydep_scheme
LOGICAL :: drydep_resuspension ! Turn on resuspension

END TYPE ConfigType

Expand Down Expand Up @@ -165,7 +171,10 @@ SUBROUTINE Set_Config( am_I_Root, Config, RC )
Config%seasalt_activate = .FALSE.
Config%seasalt_scheme = 1


! Dry Dep Process
Config%drydep_activate = .FALSE.
Config%drydep_scheme = 1
Config%drydep_resuspension = .FALSE.

END SUBROUTINE Set_Config
!> \brief Cleanup the Config options
Expand Down
37 changes: 35 additions & 2 deletions src/core/diagstate_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,14 @@ module DiagState_Mod
!!
!! \ingroup core_modules
!!
!! \param dust_total_flux Total flux of dust particles [kg m-2 s-1]
!! \param sea_salt_total_flux Total flux of sea salt particles [kg m-2 s-1]
!! \param AOD550 Total AOD at 550nm [1]
!! \param AOD380 Total AOD at 380nm [1]
!! \param TOMSAI TOMS Aerosol Index [1]
!! \param briggs_plumerise_height Effective plume rise height from Briggs algorithm [m]
!! \param sofiev_plumerise_height Effective plume rise height from Sofiev algorithm [m]
!!
!!!>
type, public :: DiagStateType

Expand All @@ -39,6 +47,10 @@ module DiagState_Mod
real(fp) :: briggs_plumerise_height !< Effective plume rise height from Briggs algorithm [m]
real(fp) :: sofiev_plumerise_height !< Effective plume rise height from Sofiev algorithm [m]


real(fp), allocatable :: drydep_frequency(:)
real(fp), allocatable :: drydep_vel(:)

! Species Specific Variables


Expand All @@ -56,15 +68,16 @@ module DiagState_Mod
!! \param RC The return code
!! \ingroup core_modules
!!!>
subroutine Diag_Allocate(Config, DiagState, RC)
subroutine Diag_Allocate(Config, DiagState, ChemState, RC)
! USES
USE GridState_Mod, ONLY : GridStateType
! USE GridState_Mod, ONLY : GridStateType
USE Config_Opt_Mod, ONLY : ConfigType

! Arguments
type(ConfigType), INTENT(IN) :: Config
! type(GridStateType), INTENT(IN) :: GridState ! Grid State object
type(DiagStateType), INTENT(INOUT) :: DiagState ! Diag State object
type(ChemStateType), INTENT(INOUT) :: ChemState ! Chem State object
! OUTPUT Params
INTEGER, INTENT(OUT) :: RC ! Success or failure

Expand All @@ -91,6 +104,26 @@ subroutine Diag_Allocate(Config, DiagState, RC)
DiagState%sea_salt_total_flux = ZERO
endif

! If dry deposition process is activated then allocate dry dep related diagnostics
if (Config%drydep_activate) then
Allocate(diagstate%drydep_frequency(ChemState%nSpeciesAeroDryDep), STAT=RC)
IF ( RC /= CC_SUCCESS ) THEN
ErrMsg = 'Could not Allocate ChemState%ChemSpecies(i)%conc'
CALL CC_Error( ErrMsg, RC, thisLoc )
ENDIF
DiagState%drydep_frequency= ZERO
Allocate(diagstate%drydep_vel(ChemState%nSpeciesAeroDryDep), STAT=RC)
IF ( RC /= CC_SUCCESS ) THEN
ErrMsg = 'Could not Allocate ChemState%ChemSpecies(i)%conc'
CALL CC_Error( ErrMsg, RC, thisLoc )
ENDIF
DiagState%drydep_vel= ZERO


endif



end subroutine Diag_Allocate

end module DiagState_Mod
3 changes: 1 addition & 2 deletions src/core/emisstate_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -159,13 +159,13 @@ subroutine Emis_Allocate(GridState, EmisState, RC)
integer :: s ! Loop counter for emitted species
! integer :: nPlumes ! temporary variable for number of plumes


! Initialize return code
RC = CC_SUCCESS

! Initialize local variables
ErrMsg = ''
ThisLoc = ' -> at Emis_Allocate (in core/emisstate_mod.F90)'

if (EmisState%nCats > 0) then
print*, 'Number of Categories = ', EmisState%nCats
do c = 1, EmisState%nCats
Expand Down Expand Up @@ -384,7 +384,6 @@ subroutine Apply_Emis_to_Chem(EmisState, MetState, ChemState, RC, surface_only_f
TYPE(MetStateType), INTENT(IN) :: MetState
TYPE(ChemStateType), INTENT(INOUT) :: ChemState
LOGICAL, INTENT(IN), OPTIONAL :: surface_only_flag

INTEGER, INTENT(OUT) :: RC

! Local
Expand Down
Loading