PennyWieser / Thermobar

Python thermobarometry tool
41 stars 10 forks source link

pt.calculate_opx_liq_press metadata typo #53

Closed Volcano-padawan closed 1 week ago

Volcano-padawan commented 1 week ago
help(pt.calculate_opx_liq_press)
Help on function calculate_opx_liq_press in module Thermobar.orthopyroxene_thermobarometry:

calculate_opx_liq_press(*, equationP, opx_comps=None, liq_comps=None, meltmatch=None, T=None, eq_tests=False, H2O_Liq=None, Fe3Fet_Liq=None)
    Orthopyroxene-Liquid barometer, user specifies equation, and calculates pressure in kbar.
    Also has option to calculate equilibrium tests.

    Parameters
    -------

    opx_comps: pandas.DataFrame
        Orthopyroxene compositions with column headings SiO2_Opx, MgO_Opx etc.

    liq_comps: pandas.DataFrame
        Liquid compositions with column headings SiO2_Liq, MgO_Liq etc.

    Or:

    meltmatch: pandas.DataFrame
        Combined Opx-Liquid compositions.
        Used for calculate_opx_liq_press_temp_matching.

    EquationP: str

        choose from:

        |  P_Put2008_eq28a
        |  P_Put2008_eq28b
        |  P_Put2008_eq28c
        |  P_Put_Global_Opx
        |  P_Put_Felsic_Opx

    T: float, int, pandas.Series, str  ("Solve")
        Temperature in Kelvin
        Only needed for T-sensitive barometers.
        If enter T="Solve", returns a partial function
        Else, enter an integer, float, or panda series

    eq_tests: bool
        If False, just returns pressure (default) as a panda series
        If True, returns pressure, Values of Eq tests,
        as well as user-entered opx and liq comps and components.

    Returns
    -------
    If eq_tests=False
        pandas.Series: Pressure in kbar (if eq_tests=False)
    If eq_tests=True
        pandas.DataFrame: Pressure in kbar + Kd-Fe-Mg + opx+liq comp

The list of available opx-liquid pressure functions below and the EquationP options above do not match. From Putirka 2008 I believe the options below are the correct ones.

pt.Opx_Liq_P_funcs # list opx functions
{<function Thermobar.orthopyroxene_thermobarometry.P_Put2008_eq29a(T, *, Si_Liq_cat_frac, Mg_Liq_cat_frac, Fet_Opx_cat_6ox, FmAl2SiO6, Na_Liq_cat_frac, Al_Liq_cat_frac, K_Liq_cat_frac, H2O_Liq, NaAlSi2O6)>,
 <function Thermobar.orthopyroxene_thermobarometry.P_Put2008_eq29b(T, *, ln_FmAl2SiO6_liq, Al_Liq_cat_frac, Mg_Liq_cat_frac, Fet_Liq_cat_frac, Si_Opx_cat_6ox, Fet_Opx_cat_6ox, Na_Liq_cat_frac, K_Liq_cat_frac, H2O_Liq)>,
 <function Thermobar.orthopyroxene_thermobarometry.P_Put2008_eq29c(T, *, Al_Opx_cat_6ox, Ca_Opx_cat_6ox, Cr_Opx_cat_6ox)>,
 <function Thermobar.orthopyroxene_thermobarometry.P_Put2008_eq29cnoCr(T, *, Al_Opx_cat_6ox, Ca_Opx_cat_6ox, Cr_Opx_cat_6ox)>,
 <function Thermobar.orthopyroxene_thermobarometry.P_Put_Felsic_Opx(T=None, *, Al2O3_Opx, Al2O3_Liq)>,
 <function Thermobar.orthopyroxene_thermobarometry.P_Put_Global_Opx(T=None, *, MgO_Liq, Al2O3_Opx, Al2O3_Liq, Na2O_Liq, K2O_Liq)>}
help(pt.calculate_opx_liq_press)
help(pt.calculate_opx_liq_press)
PennyWieser commented 1 week ago

Great spot, I had accidently copy-pasted over from the T function and forgot to change the numbers. Just pushing an update!