komanawa.gw_age_tools.exponential_piston_flow#

created matt_dumont on: 10/07/23

Functions#

binary_exp_piston_flow(t, mrt_p1, mrt_p2, frac_p1, ...)

produce a binary exponential piston flow model pdf

binary_exp_piston_flow_cdf(t, mrt_p1, mrt_p2, frac_p1, ...)

produce a cdf for a binary exponential piston flow model

check_age_inputs(mrt, mrt_p1, mrt_p2, frac_p1, ...)

convenience function to check BEPM age inputs

exponential_piston_flow(t, tm, f)

produce an exponential piston flow model pdf

exponential_piston_flow_cdf(t, tm, f)

produce a cdf for an exponential piston flow model

make_age_dist(mrt, mrt_p1, mrt_p2, frac_p1, precision, ...)

make an age distribution for the binary exponential piston flow model

Module Contents#

binary_exp_piston_flow(t, mrt_p1, mrt_p2, frac_p1, f_p1, f_p2)[source]#

produce a binary exponential piston flow model pdf

Parameters:
  • t – time steps to calculate pdf for (yrs)

  • mrt_p1 – mean residence time of the first piston flow component (yrs)

  • mrt_p2 – mean residence time of the second piston flow component (yrs)

  • frac_p1 – fraction of the total source that is in the first piston flow component

  • f_p1 – fraction of the first piston flow component that is in the fast flow component

  • f_p2 – fraction of the second piston flow component that is in the fast flow component

Returns:

pdf of the binary exponential piston flow model

binary_exp_piston_flow_cdf(t, mrt_p1, mrt_p2, frac_p1, f_p1, f_p2)[source]#

produce a cdf for a binary exponential piston flow model

Parameters:
  • t – time steps to calculate cdf for (yrs)

  • mrt_p1 – mean residence time of the first piston flow model (yrs)

  • mrt_p2 – mean residence time of the second piston flow model (yrs)

  • frac_p1 – fraction of the total source that is in the first piston flow model

  • f_p1 – fraction of the first piston flow model that is in the fast flow component

  • f_p2 – fraction of the second piston flow model that is in the fast flow component

Returns:

cdf of the binary exponential piston flow model

check_age_inputs(mrt, mrt_p1, mrt_p2, frac_p1, precision, f_p1, f_p2)[source]#

convenience function to check BEPM age inputs

Parameters:
  • mrt – mean residence time of the source (yrs) either mrt or mrt_p2 can be None

  • mrt_p1 – mean residence time of the first piston flow component (yrs)

  • mrt_p2 – mean residence time of the second piston flow component (yrs)

  • frac_p1 – fraction of the total source that is in the first piston flow component

  • precision – precision of the age distribution (decimal places)

  • f_p1 – fraction of the first piston flow component that is in the fast flow component

  • f_p2 – fraction of the second piston flow component that is in the fast flow component

Returns:

exponential_piston_flow(t, tm, f)[source]#

produce an exponential piston flow model pdf

Parameters:
  • t – time steps to calculate pdf for (yrs)

  • tm – mean residence time (yrs)

  • f – fraction of the total source that is in the fast flow component

Returns:

exponential_piston_flow_cdf(t, tm, f)[source]#

produce a cdf for an exponential piston flow model

Parameters:
  • t – time steps to calculate cdf for (yrs)

  • tm – mean residence time (yrs)

  • f – fraction of the total source that is in the fast flow component

Returns:

make_age_dist(mrt, mrt_p1, mrt_p2, frac_p1, precision, f_p1, f_p2, start=np.nan)[source]#

make an age distribution for the binary exponential piston flow model

Parameters:
  • mrt – mean residence time of the source (yrs) either mrt or mrt_p2 can be None

  • mrt_p1 – mean residence time of the first piston flow component (yrs)

  • mrt_p2 – mean residence time of the second piston flow component (yrs)

  • frac_p1 – fraction of the total source that is in the first piston flow component

  • precision – precision of the age distribution (decimal places)

  • f_p1 – fraction of the first piston flow component that is in the fast flow component

  • f_p2 – fraction of the second piston flow component that is in the fast flow component

  • start – start age for the age distribution (yrs) default is np.nan which will use the maximum of the mrt_p1*5 and mrt_p2*5

Returns:

a tuple

  • age_step: the step size of the age distribution (yrs)

  • ages: the ages of the age distribution (yrs)

  • age_fractions: the fractions of the age distribution (decimal)