GASTLI ====== .. py:module:: GASTLI Classes ------- .. autoapisummary:: GASTLI.int_planet Module Contents --------------- .. py:class:: int_planet(j_max=30, cnt_conv_max=3, conv_prec=1e-05, pow_law=0.32, chk_EOS=0, EOS_lim_P=[500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0], corEOS=1) Class defining objects for carrying out interior structure calculations for a given set of mass, composition and surface conditions Args: path_to_file: path to input data directory j_max (Optional): Maximum number of iterations - must be < 100. cnt_conv_max (Optional): Maximum number of detected oscillations. conv_prec (Optional): Precision of the convergence condition. pow_law (Optional): Power exponent for planet radius estimation. Default is 0.32. Increase if planet is very massive chk_EOS (Optional): Index to check the validity range of the used EOS. Do not change EOS_lim_P (Optional, array): Upper limit in pressure. Do not change corEOS (Optional): Type of correction on the thermodynamical parameters of Vinet EOS. (=0: no correction / =1: range [1:1.5] / =2: range [1:5] / =3: range [1:10]). Do not change .. py:attribute:: path_to_file .. py:attribute:: j_max :value: 30 .. py:attribute:: cnt_conv_max :value: 3 .. py:attribute:: conv_prec :value: 1e-05 .. py:attribute:: pow_law :value: 0.32 .. py:attribute:: chk_EOS :value: 0 .. py:attribute:: EOS_lim_P :value: [500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0, 500000000000.0,... .. py:attribute:: corEOS :value: 1 .. py:attribute:: n_lay .. py:attribute:: n_EOS .. py:attribute:: n_pts .. py:attribute:: n_int .. py:attribute:: n_mat_max .. py:attribute:: f_alloy :value: 0.0 .. py:attribute:: MgD :value: 0.0 .. py:attribute:: MgSi :value: 0.0 .. py:attribute:: M_P :value: 0.0 .. py:attribute:: x_core :value: 0.0 .. py:attribute:: x_H2O :value: 0.0 .. py:attribute:: T_surf :value: 0.0 .. py:attribute:: P_surf :value: 0.0 .. py:attribute:: x_H2Oc :value: 0.0 .. py:attribute:: x_corec :value: 0.0 .. py:attribute:: M_Pc :value: 0.0 .. py:attribute:: R_P :value: 0.0 .. py:attribute:: FeSi :value: 0.0 .. py:attribute:: rho_p :value: 0.0 .. py:attribute:: intrf .. py:attribute:: intrf_hist .. py:attribute:: iter_num .. py:attribute:: g .. py:attribute:: T .. py:attribute:: P .. py:attribute:: rho .. py:attribute:: cv .. py:attribute:: r .. py:method:: setup_parameters(f_alloy=cte.constants.f_alloy_e, MgD=cte.constants.mgd_e, MgSi=cte.constants.mgsi_e) Set up parameters for chemistry of mantle and core Do not change any of the parameters below Args: f_alloy (Optional): if no Fe in core, not applicable MgD (Optional): if not Vinet Eq. for mantle, not applicable MgSi (Optional): if not Vinet Eq. for mantle, not applicable Returns: x: matrix with material properties .. py:method:: calc_radius(M_P, x_core, x_H2O, T_surf, P_surf, Zenv) Function that calculates planet radius and interior structure Args: M_P: Planet mass in Earth masses x_core: Core mass fraction x_H2O: Envelope mass fraction. Defined as 1-x_core in this case T_surf: Outer surface (boundary) temperature in K P_surf: Outer surface (boundary) pressure in Pa Returns: x_H2Oc: Re-computed envelope mass fraction (for checking) x_corec: Re-computed core mass fraction (for checking) M_Pc: Re-computed interior mass in Earth masses (for checking) R_P: Planet radius in Earth radii FeSi: Fe-to-Si ratio (not applicable if no Fe core) rho_p: Planet density in g/cm3 OtoH: Envelope O:H ratio metal: Envelope metallicity ([Fe/H] in x solar units) intrf: Array with indexes of interfaces between layers g: Gravity acceleration profile array, g(r), in cm/s2 T: Temperature profile array, T(r), in K P: Pressure profile array, P(r), in Pa rho: Density profile array, rho(r), in kg/m3 cv: Specific heat capacity at constant volume profile array, Cv(r), in J/kg/K entropy: Entropy profile array, S(r), in J/kg/K r: Radius profile array, r, in m