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

How do I simulate adding alkalinity into a specific grid index compared a baseline scenario? #248

Open
goccert25 opened this issue Jun 25, 2024 · 1 comment

Comments

@goccert25
Copy link

goccert25 commented Jun 25, 2024

Hello! cgenie.muffin novice here. I've managed to cobble together a simulation for RCP 2.6. I'd like to see what would happen to the global DIC if I injected around 10,000 tons of DIC and Ca into a specific grid index for a year. Do you know how I could go about doing that?

What I've done so far:

  • Simulate RCP 2.6
  • Create a copy of the configuration files and forcing files for RCP 2.6 (hence known as RCP_MOD)
  • Add into RCP_MOD biogem_force_flux_ocn_Ca_sig.dat and biogem_force_flux_ocn_DIC_sig.dat, both of which have the following:
-START-OF-DATA-
0.0      0.0
2030.0   0.0
2030.0   10000
2031.0   10000
2031.0   0
999999.9 0.0
-END-OF-DATA-
  • Add configure_forcings_ocn.dat into RCP_MOD with the following:

  00 01 02 03   04 05 06  07  08  09
  \/ \/ \/ \/   \/ \/ \/  \/  \/  \/

-START-OF-DATA-
 03  f  f  0.1  T  T   0  22  11  16  '[dissolved inorganic carbon (DIC) (mol kg-1)]'
 35  f  f  0.1  T  T   0  22  11  16  '[Ca (mol kg-1)]'
-END-OF-DATA-

  /\ /\ /\ /\   /\ /\ /\  /\  /\  /\
  00 01 02 03   04 05 06  07  08  09

DATA FORMAT AND ORDER
---------------------

COLUMN #00: TRACER NUMBER
COLUMN #01: include restoring forcing of tracer? [DATA FORMAT: 'T'/'F' ('t'/'f')]
COLUMN #02: restrict restoring forcing to surface? [DATA FORMAT: 'T'/'F' ('t'/'f')]
COLUMN #03: time constant of restoring forcing (years) [DATA FORMAT: real]
COLUMN #04: include flux forcing of tracer? [DATA FORMAT: 'T'/'F' ('t'/'f')]
COLUMN #05: scale flux forcing of tracer? [DATA FORMAT: 'T'/'F' ('t'/'f')]
COLUMN #06: make forcing uniform over this dimension (3 == 3D, 2 == 2D, 0 == point, -1 == SURFACE, -2 == BENTHIC, ELSE spatially explicit forcing) [DATA FORMAT: interger]
COLUMN #07: i grid location of point forcing [DATA FORMAT: interger]
COLUMN #08: j grid location of point forcing [DATA FORMAT: interger]
COLUMN #09: k grid location of point forcing [DATA FORMAT: interger]
COLUMN END: TRACER DESCRIPTION
  • Modify the configuration file to have bg_par_ocn_force_scale_val_3=22722.1086116792 and bg_par_ocn_force_scale_val_35=22722.1086116792

However, after doing all of this and running RCP_MOD, I strangely get less global DIC when I look at biogem_series_ocn_DIC.res. Do you know why this would be the case? Is this because adding a forcing flux will override the existing flux calculated from the simulation instead of adding onto the existing flux? Any advice on how I should go about trying to accomplish my goal?

I'll attach all of the files I reference. If you made it this far, thanks for even taking the time to read this over!

rcp2p6_config_file.SPIN.txt
rcp2p6_forcing_files.zip
rcp2p6_mod_config_file.SPIN.txt
rcp2p6_mod_forcing_files.zip
rcp2p6_mod_simulation_results.SPIN.zip
rcp2p6_simulation_results.SPIN.zip

@derpycode
Copy link
Owner

Sorry ... your question was back in June and I have only just spotted it ... :(
The quick answer is 'no' -- it is not clear why DIC does down ... to fault-find:
(1) make sure you have a control experiment -- exactly the same, except scale the ocean fluxes to zero:
bg_par_ocn_force_scale_val_3=0
bg_par_ocn_force_scale_val_35=0
(2) create a second experiments and set the atmospheric flux or restoring forcing to zero, and check that without forcing a different atmospheric composition, you do get more DIC and Ca in your chosen grid point
Observations:
(1) you have no ALK flux forcing ... adding Ca does not automatically include ALK -- you need to add a 3rd, ALK flux forcing for adding Ca to make sense
(2) if you are restoring atmospheric pCO2 rather than emitting CO2, the DIC you add to the surface will be mostly suck out into the atmosphere, which remains constant (if it is forced). Adding Ca will increase surface carbonate saturation, increase CaCO3 precipitation and export, remove ALK from the surface and increase CO2(aq), and more CO2 will be sucked into the atmosphere. This might explain the overall decline in DIC in the ocean.
(3) The scaling factors are odd ... e.g., bg_par_ocn_force_scale_val_3=22722.1086116792
that is not to say that they are not correct, but personally I'd either set the user-config scaling, or the forcings, to some simply unit like Gmol yr-1, or Tmol yr-1 (1.0E9, 1.0E12), and then in the forcing, or the user-config scaling, set your intended forcing value which is now in a simpler set of units. 22722.1086116792 scaling 10000 (in the forcing) is fine, but it would be very easy to accidently set a factor of 10 higher or lower than you intend.
I have not look at the zip files -- if nothing above helps, let me know and I can do.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants