Skip to content

Commit 2a273bd

Browse files
committed
add optional time series outputted by StagYY
1 parent c8e3ddd commit 2a273bd

2 files changed

Lines changed: 64 additions & 0 deletions

File tree

src/stagpy/dimensions.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,11 @@ def density(self) -> float:
7171
"""Density in kg/m3."""
7272
return self.par.nml["refstate"]["dens_dimensional"]
7373

74+
@property
75+
def mass(self) -> float:
76+
"""Mass in kg."""
77+
return self.density * self.length**3
78+
7479
@property
7580
def th_cond(self) -> float:
7681
"""Thermal conductivity in W/(m.K)."""

src/stagpy/phyvars.py

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,61 @@
345345
"H_AH": Vart("Adiabatic heating", "Power density", "W/m3"),
346346
"H_cool": Vart("Cooling", "Heat flux", "W/m2"),
347347
"H_melt": Vart("Melting heat flux", "Heat flux", "W/m2"),
348+
"erupta_total": Vart("Total erupta", "Mass", "kg"),
349+
"Psurf": Vart("Ground pressure", "Pressure", "Pa"),
350+
"weathering": Vart("Weathering", "Mass flux", "tons/yr"),
351+
"mH2O_total": Vart("Total H2O mass", "Mass", "kg"),
352+
"mH2O_mantle": Vart("H2O in mantle", "Mass", "kg"),
353+
"mH2O_crust": Vart("H2O in crust", "Mass", "kg"),
354+
"dmH2O": Vart("Absorbed H2O", "Mass", "kg"),
355+
"cH2O_mean": Vart("H2O concentration", "Concentration", "1"),
356+
"F_top_H2O_diff": Vart("H2O diffusion flux at top", "Mass flux", "kg/s"),
357+
"F_top_H2O_erupted": Vart("H2O eruption flux at top", "Mass flux", "kg/s"),
358+
"outgassed_H2O": Vart("H2O outgassed", "Fraction", "1"),
359+
"cCO2_mean": Vart("CO2 concentration", "Concentration", "1"),
360+
"outgassed_CO2": Vart("CO2 outgassed", "Fraction", "1"),
361+
"cN2_mean": Vart("N2 concentration", "Concentration", "1"),
362+
"outgassed_N2": Vart("N2 outgassed", "Fraction", "1"),
363+
"c40Ar_mean": Vart("40Ar concentration", "Concentration", "1"),
364+
"c36Ar_mean": Vart("36Ar concentration", "Concentration", "1"),
365+
"outgassed_40Ar": Vart("40Ar outgassed", "Fraction", "1"),
366+
"outgassed_36Ar": Vart("36Ar outgassed", "Fraction", "1"),
367+
"c4He_mean": Vart("4He concentration", "Concentration", "1"),
368+
"c3He_mean": Vart("3He concentration", "Concentration", "1"),
369+
"outgassed_4He": Vart("4He outgassed", "Fraction", "1"),
370+
"outgassed_3He": Vart("3He outgassed", "Fraction", "1"),
371+
"IngassedH2O": Vart("Ingassed H2O", "Fraction", "1"),
372+
"OutputtedNotEruptedH2O": Vart("Outputted H2O", "Fraction", "1"),
373+
"SaturationOutgasH2O": Vart("Saturation-outgas H2O", "Fraction", "1"),
374+
"EruptedH2O": Vart("Erupted H2O", "Fraction", "1"),
375+
"SurfOceanMass3D": Vart("Scaled H2O mass", "Mass", "kg"),
376+
"TotH2OMassOceanPlusMantle": Vart("Total H2O mass", "Mass", "kg"),
377+
"GS_min": Vart("Min grain size", "Size", "1"),
378+
"GS_mean": Vart("Grain size", "Size", "1"),
379+
"GS_max": Vart("Max grain size", "Size", "1"),
380+
"intruda": Vart("Intruda", "Mantle mass", "1"),
381+
"erupta_TTG": Vart("TTG erupta", "Mantle mass", "1"),
382+
"intruda_TTG": Vart("TTG intruda", "Mantle mass", "1"),
383+
"TTG1": Vart("TTG1", "Mantle mass", "1"),
384+
"TTG2": Vart("TTG2", "Mantle mass", "1"),
385+
"TTG3": Vart("TTG3", "Mantle mass", "1"),
386+
"s_core": Vart("Core size", "Length", "m"),
387+
"tc_core": Vart("Temperature at center", "Temperature", "K"),
388+
"ts_core": Vart("Temperature at core surface", "Temperature", "K"),
389+
"m_Fe_S2TMO": Vart("FeO mass flux solid to TMO", "Mass", "kg"),
390+
"m_Fe_TMO2S": Vart("FeO mass flux TMO to solid", "Mass", "kg"),
391+
"m_Fe_S2BMO": Vart("FeO mass flux solid to BMO", "Mass", "kg"),
392+
"m_Fe_BMO2S": Vart("FeO mass flux BMO to solid", "Mass", "kg"),
393+
"c_Fe_TMO": Vart("FeO content TMO", "Concentration", "1"),
394+
"c_Fe_BMO": Vart("FeO content BMO", "Concentration", "1"),
395+
"c_Fe_sol": Vart("FeO content solid", "Concentration", "1"),
396+
"denstramin": Vart("Min tracers density", "Density", "kg/m3"),
397+
"denstramean": Vart("Tracers density", "Density", "kg/m3"),
398+
"denstramax": Vart("Max tracers density", "Density", "kg/m3"),
399+
"H_impacts": Vart("Impact heating", "Power", "W"),
400+
"SurfNetRotX": Vart("Surface net rotation around X", "Rotation", "1/s"),
401+
"SurfNetRotY": Vart("Surface net rotation around Y", "Rotation", "1/s"),
402+
"SurfNetRotZ": Vart("Surface net rotation around Z", "Rotation", "1/s"),
348403
}
349404
)
350405
"""Time series output by StagYY."""
@@ -405,18 +460,22 @@
405460
{
406461
"m": attrgetter("length"),
407462
"kg/m3": attrgetter("density"),
463+
"kg": attrgetter("mass"),
464+
"kg/s": lambda scl: scl.mass / scl.time,
408465
"K": attrgetter("temperature"),
409466
"W/m2": attrgetter("heat_flux"),
410467
"Pa": attrgetter("stress"),
411468
"Pa.s": attrgetter("dyn_visc"),
412469
"s": attrgetter("time"),
470+
"W": attrgetter("power"),
413471
"W/(m.K)": attrgetter("th_cond"),
414472
"m2/s": attrgetter("th_diff"),
415473
"W/m3": attrgetter("heat_production"),
416474
"1/s": lambda scl: 1 / scl.time,
417475
"K/s": lambda scl: scl.temperature / scl.time,
418476
"m/s": attrgetter("velocity"),
419477
"m/s2": attrgetter("acceleration"),
478+
"tons/yr": lambda scl: scl.mass / scl.time * 3.15e4,
420479
}
421480
)
422481
"""Scales to make values dimensional, see [`Scales`][stagpy.dimensions.Scales]."""

0 commit comments

Comments
 (0)