Package: inflatox
Inflatox - multifield inflation consistency conditions in pythonInflatox provides utilities to compute slow-roll parameters and turn-rates for
two-field inflation models, based on the consistency condition from Anguelova &
Lazaroiu (2023)[^1]. These can be used in a parameter sweep of a two-field
model to find possible inflation trajectories.If this software has proven useful to your research, please consider citing
(paper in preparation).Featuressymbolic solver for components of the Hesse matrix of an inflationary model
with non-canonical kinetic terms, powered bysympy.transpiler to transformsympyexpressions into executable compiled (C) code.built-in multithreadedrustmodule for high-performance calculations of
consistency conditions that interfaces directly withnumpyand python.utilities for performing parameter sweeps.extendability: inflatox' exposes a python interface to calculate any intermediate
quantity, which can be used to extend it with additional consistency conditions.no need to read, write or compile anyrustorCcode manually
(this is all done automatically behind the scenes).no system dependencies, everything needed to run the package can be automatically
installed bypip.Installation and DependenciesInflatox requires at least python (ABI) version3.7. The latest version of
inflatox can be installed using pip:pip install inflatoxInflatox can be updated using:pip install --upgrade inflatoxExample programmeThe following code example shows howinflatoxcan be used to calculate the
potential and components of the Hesse matrix for a two-field hyperinflation model.#import inflatoximportinflatoximportsympyasspimportnumpyasnpsp.init_printing()#define modelφ,θ,L,m,φ0=sp.symbols('φ θ L m φ0')fields=[φ,θ]V=(1/2*m**2*(φ-φ0)**2).nsimplify()g=[[1,0],[0,L**2*sp.sinh(φ/L)**2]]#print metric and potentialdisplay(g,V)#symbolic calculationcalc=inflatox.SymbolicCalculation.new_from_list(fields,g,V)hesse=calc.execute([[0,1]])#run the compilerout=inflatox.Compiler(hesse).compile()#evaluate the compiled potential and Hesse matrixfrominflatox.consistency_conditionsimportAnguelovaLazaroiuConditionanguelova=AnguelovaLazaroiuCondition(out)p=np.array([1.0,1.0,1.0])x=np.array([2.0,2.0])print(anguelova.calc_V(x,p))print(anguelova.calc_H(x,p))extent=(-1,1,-1,1)consistency_condition,epsilon_V,epsilon_H,eta_H,delta,omega=anguelova.full_analysis(p,*extent)Supported ArchitecturesIntel/AMD x86/i686 (32 bit)linux/gnu (glibc >= 2.17, kernel >= 3.2)windows 7+ [^2]ARM armv7 (32 bit)linux/gnu (glibc >= 2.17, kernel >= 3.2, hard float)Intel/AMD x86_64/amd64 (64 bit)linux/gnu (glibc >= 2.17, kernel >= 3.2)windows 7+ [^2]macOS 10.12+ / Sierra+ARM aarch64 (64 bit)linux/gnu (glibc >= 2.17, kernel >= 4.1)macOS 11.0+ / Big Sur+PowerPC ppc64le (64 bit)linux/gnu (glibc >= 2.17, kernel >= 3.10)IBM s390x (64 bit)linux/gnu (glibc >= 2.17, kernel >= 3.2)Note: Apple silicon M-series chips are supported (aarch64)CitingIf this software package contributed meaningfully to your research, please
consider citing the following papers:(in preparation)LicenseInflatox is explicitly not licensed under the dual
Apache/MIT license common to the Rust ecosystem. Instead it is licensed under
the terms of theEuropean Union Public License v1.2.Inflatox is a science project and embraces the values of open science and free
and open software. Closed and paid scientific software suites hinder the
development of new technologies and research methods, as well as diverting much-
needed public funds away from researchers to large publishing and software
companies.See theLICENSE.mdfile for the EUPL text in all 22 official
languages of the EU, andLICENSE-EN.txtfor a plain text
English version of the license.References and footnotes[^1]: Anguelova, L., & Lazaroiu, C. (2023). Dynamical consistency conditions for
rapid-turn inflation.Journal of Cosmology and Astroparticle Physics,
May 2023(20).https://doi.org/10.1088/1475-7516/2023/05/020
[^2]: Windows 7 is no longer considered a tier-1 target by the rust project. Usage
of Windows 10+ is recommended.