- Aug 20, 2022
-
-
bjorn-stevens authored
-
bjorn-stevens authored
-
bjorn-stevens authored
-
bjorn-stevens authored
-
bjorn-stevens authored
-
bjorn-stevens authored
in the earlier commit the changes to the saturation vapor pressure modules were inadvertently negelected. These come with this commit along with some clean up of the directory structure.
-
- Aug 19, 2022
-
-
bjorn-stevens authored
`
-
Bjorn Stevens authored
Revise handling of package metadata and build-system See merge request !4
-
bjorn-stevens authored
To define generic functions we use the closure construct which introduces a way to make a function with the given parameters so that when it is called it is executed with those parameters without having to pass the parameters. This allows the function calls for different quantities to share a common interface, and more allows for a cleaner separation between a function and its parameters, the latter being used to construct the function.
-
- Aug 17, 2022
-
-
Lukas Kluft authored
-
Lukas Kluft authored
-
Lukas Kluft authored
-
Lukas Kluft authored
For further information see PEP517/518
-
Lukas Kluft authored
Ignore python byte code.
-
- Aug 16, 2022
-
-
Bjorn Stevens authored
restructured treatment of saturation vapor pressure See merge request !3
-
bjorn-stevens authored
Replaced use of es_liq by es_liq_default, likewise for ice to make the intent clear. Replaced use of TK and PPa by T and P to ensure consistency.
-
bjorn-stevens authored
Released as version 0.4, includes reformatting of analytic formulation of saturation vapor pressure to better emphasize the commont form of the calculation for ice and liquid, similar to what is done for teten's formulas. Now both it and Teten's serve as 'master' formlae, with liq and ice being particular implementations.
-
bjorn-stevens authored
-
bjorn-stevens authored
Attempted to clean up the presentation of the Teten's and Romps formulae for saturation vapor pressuer, incorporating improved fitting constants for the former. These were derived by fitting to Wagner and Pruss for the temperature range 270 K to 310 K and to Wagner et al for ice over the range 230K to 260 K. The fitting is not particular sensitive and fitting with noice leads to slight changes in the fits, but the new constants are robustly an improvement over the old ones, which had inconsistent triple points vapor pressures over ice and liquid. I also double checked the 'Romp's' formulae, and refrained from calling these Romps as they are just straightforward integrations of the Clausius-Clapeyron equation under the Rankine-Kirchoff assumptions.
-
- Aug 15, 2022
-
-
bjorn-stevens authored
In this branch additional impelmentations of the saturation vapor pressure were impelmented. These different treatments are not meant to be exhaustive, but the teten's murray formulations were introduced because these are used by ICON. The murphy-koop formulation is the standard for super-cooled liquid water. The examples ipynb script was augmented to present the new functionality.
-
- Aug 14, 2022
-
-
bjorn-stevens authored
in the atmospheric sciences there are many different moist static energies. They differ due to the choice of reference enthalpies for water phases, which are connected by the phase change enthalpies, and thus have a single degree of freedom. This we give to the reference enthalpy (enthalpy at T0) for vapor. The choice of hv0 matters because not all reference quantities can be zero for all phases of water, and so the choice influences how the reference quantity weights different water phases. the function has been defined in a rather expressive way to bring out this property and make it possible to compute one or the other of the moist static energies by choosing a different reference state for the vapor enthalpy.
-
- Aug 13, 2022
-
-
bjorn-stevens authored
By passing the function that is to be inverted it is possible to write a generic inversion function, which we call invert_for_temperature and invert_for_pressure respectively. These work for all off the thermodynamic funcions, i.e., theta_e, theta_l, etc. I experimented with an invert_for_humidity, but this often did nto converge so I did not introduce this functionality.
-
- Aug 12, 2022
-
-
bjorn-stevens authored
-
bjorn-stevens authored
-
Bjorn Stevens authored
Add CI to run doctests See merge request m219063/aes_thermo!2
-
bjorn-stevens authored
I added the calculation of the moist adiabat from the integration of the first law to the functions, and a generalized definition of the 'dry' potential temperature, which can account for moisture effects on thermodynamic parameters. An additional example was added to show the added functionality.
-
Lukas Kluft authored
-
bjorn-stevens authored
the murphy and koop (2005) and hardy (1998) formulations for saturation vapor pressure are sometimes desired. The former for their ability to handle saturation over supercooled liquid, the latter because this equation is frequenly used for the processing of radio sonde data
-
Lukas Kluft authored
-
bjorn-stevens authored
added this helper function to make the effect of qt!=qv more clear, a situation that is found when air is saturated, or has condensate in disequilibrium. This is now used in the definition of the moist potential temperatures.
-
bjorn-stevens authored
- added better referenced and more complete docstreams for all of the functions. - modified docstring formatting to better align with standards (google) - cleaned up some stray cells in the examples notebook
-
- Aug 11, 2022
-
-
bjorn-stevens authored
- doctests were corrected and now exist for most functions. ` - repository was restructured so example scripts are not outside of main repository
-
bjorn-stevens authored
Fixed the call and expected outcome statements of the doctest strings in the funciton documentation. In doing noticed that for the mixed supersaturations we should use the minimum, not maximum values, which reverts a false correction from a previous commit.
-
Bjorn Stevens authored
Fix doctests See merge request m219063/aes_thermo!1
-
Lukas Kluft authored
The functions are imported into the top-level namespace directly while the constants are accessible through their submodule namespace.
-
Lukas Kluft authored
-
Lukas Kluft authored
-
- Aug 10, 2022
-
-
bjorn-stevens authored
Some of the routines assume the existence of a directory to collect plots. This adds the directory to the repository.
-
bjorn-stevens authored
This is a new release. In addition to cleaning up existing code, it adds error checking (which identified a few bugs), and a number of examples taken from my archived (unreleased) library. This includes an analysis of different saturation vapor pressure formulations, the effect of the saturation vapor pressure formulation on the potential temperatures, and differences in calculations of ths lifting condensation level.
-