NutMEG.reactor.saved_systems package¶
Submodules¶
NutMEG.reactor.saved_systems.Enceladus module¶
-
class
NutMEG.reactor.saved_systems.Enceladus.
Enceladus
(name, pH=8.5, depth=8.5, T=273.15, mixingratios={'CH4': 0.2+/-0.1, 'CO2': 0.55+/-0.25, 'H2': 0.9+/-0.5, 'H2S': 0.0021+/-0.001, 'NH3': 0.85+/-0.45}, CO2origin='pH', tigerstripeT=197.0+/-20.0, Pconc=1e-06+/-0, workoutID=False, nominals=False)¶ Bases:
NutMEG.reactor.reactor.reactor
The chemically active evirionment of the Enceladean Ocean. It has a few unique attributes, and at the moment does not take kwargs for reactors. This may be added in the future when the model is a bit more flexible.
This is a saved instance of reactor, which contains the methanogenesis and environmental data for the moon. In the future this will be fleshed out with other constituents and maybe even other reactions/flows.
-
ocean_pH
¶ pH of the ocean at 273.15 K
- Type
float
-
mixingratios
¶ molar mixing ratio of the plume (wrt H2O) to use as ufloats. Default is the mixing ratios listed in Waite et al. 2017.
- Type
dict, optional
-
CO2origin
¶ By which methods to calculate the activity of CO2. Options include ‘tigerstripe’, ‘pH’, ‘HTHeating’, ‘HTHeating20’, ‘HTHeatingSalts’. HTHeatingSalts is recommended for the best results.
- Type
str
-
tigerstripeT
¶ Temperature of the tiger stripes for estimating CO2 activity. Only required if you plan to use this technique (e.g. when CO2origin = ‘tigerstripe’)
- Type
ufloat, optional
-
nominals
¶ Whether to return values as their nominal case (True) or as ufloats (False). Using ufloats can cause problems when working out reaction quotients.
- Type
boolean, optional
-
Pconc
¶ Dissolved concentration of phosphorus in the ocean.
- Type
ufloat, optional
-
workoutID
¶ Whether to make an entry into the Enceladus table of the NutMEG database.
- Type
boolean, optional
-
calc_mol_CH4
(mol_CO2_oc)¶ Return the activity of CH4 from the activity of CO2 and mixing ratios.
-
calc_mol_H2
(mol_CO2_oc)¶ Return the activity of H2 from the activity of CO2 and mixing ratios.
-
depth
= 8.5¶
-
env
= <NutMEG.environment.environment.environment object>¶
-
static
getHsuT
(pH)¶ Get the temperature at the rock-water interface predicted by Hsu et al 2015 if pH were constant.
-
static
get_CO2_from_HTHeating
(T, pH, nominals=False, salts=False, CO2unc=0.0)¶ Return the CO2 activity and H2O activity as ufloats from the carbonate speciation model, or as a list with upper and lower bounds (when salts==True)
-
T
¶ Temperature of your position in the ocean
- Type
float
-
pH
¶ pH that the ocean would be at 273 K.
- Type
float
-
salts
¶ if True, use the carbonate speciation model and return nominal, upper and lower bounds for both.
- Type
boolean, optional
-
-
get_CO2_from_pH
()¶ Return the CO2 activity as estimated from the pH in (Waite et al. 2017). Note only really valid at 273 K.
-
get_exp_T
(T_max, T_min, height)¶ Use simple exponential model to estimate T with depth.
-
get_tigerstripe_CO2
(logform=False)¶ Return the CO2 activity as estimated by the tiger stripe temperature. (Glein and Waite 2020)
-
initial_conditions
(pH, mol_CO2, Pconc, H2Oact=1.0, oceanvals=False, mol_CO2_oc=None)¶ Set up the initial conditions of the ocean in the configuration defined in the initialisation.
-
pH
¶ wider ocean (273 K) pH
- Type
float
-
mol_CO2
¶ Calculated activity of CO2 at this ocean location.
- Type
float
-
Pconc
¶ Concentration of phosphorus
- Type
ufloat
-
H2Oact
¶ water activity, default 1.0.
- Type
float, optional
-
oceanvals
¶ whether computing the wider ocean CO2 activity is needed.
- Type
boolean, optional
-
mol_CO2_oc
¶ wider ocean CO2 activity. Default is None (then calculated here)
- Type
float, optional
-
-
static
interpo_CO2_H2O
(Temp=273.15, oceanpH=8.0, salt='nominalCO2')¶ Return the activity of CO2 and H2O at a given temperature and wider ocean pH (273 K) by interpolating the values from the carbonate speciation model.
-
volume
= 7540000000000000.0¶
-
NutMEG.reactor.saved_systems.VenusDrop module¶
-
class
NutMEG.reactor.saved_systems.VenusDrop.
VenusDrop
(H2ppm=25, HSact=1e-10, T=298, P=100000, V=1.13e-16, setupcomp=True, workoutID=True)¶ Bases:
NutMEG.reactor.reactor.reactor
The chemically active evironment of a simple Venusian cloud droplet.
This is an instance of reactor, with added methods to estimate the composition from cloud ppm values and setup specific possible venusian metabolisms.
-
static
getgasconc
(gas_name, P_gas, T, P_bar=101325, S=0)¶ From a partial pressure, get the dissolved gas concentration.
- gas_namestr
Name of reagent
- P_gasfloat
partial pressure of gas in Pa
- Tfloat
local temperature in K
- P_barfloat
Local barometric pressure in Pa
- Sfloat
Salinity of the droplet in parts per thousand
-
initial_conditions
(H2ppm, HSact=1e-10, setupcomp=True, addreaction=True)¶ Set up a basic configuration, with pH 0 sulfuric acid droplet and dissolved H2.
- H2ppmfloat
H2 parts per million in the atmosphere around the droplet.
- HSactfloat
HS activity to use. Default is 1e-10
- setupcompbool
Whether to set up the standard composition. Default True
- addreactionbool
Whether to include sulfate reduction in the reactionlist
-
static
solubilityEQ
(gas_name, T, S)¶
-
static
solubilityEQparams
(A1, A2, A3, B1, B2, B3, T, S)¶
-
update_conditions
(H2ppm, HSact=1e-10)¶ Calculate dissolved concentratoins in the current reactor environment for a standard VenusDrop
- H2ppmfloat
Atmospheric ppm for H2
-
update_reagent
(name, ppm)¶ Update the concentration of a specific reagent based on its atmospheric ppm
- namestr
Name of the reagent to update
- ppmfloat
atmospheric concentration to use
-
static