Package: autoeft
AutoEFTAutomated operator construction for effective field theories.InstallationAutoEFT is available on thePython Package Index (PyPI)and theconda-forgechannel.RequirementsPython>= 3.8SageMath>= 9.3FORM>= 4.3Installing AutoEFT from PyPITo install AutoEFT usingpip, an already installed and running version of SageMath is required (see theSage Installation GuideandAlternative Installation using PyPI).To installautoeftand its dependencies, run:sage-pipinstallautoeftOnmacOSusingHomebrew, it may be necessary to precede this statement byPYTHONEXECUTABLE=</path/to/sage>with the proper path to the SageMath executable inserted.
In addition, it may be necessary to add the path to SageMath’s executables to the$PATHenvironment variable.Installing AutoEFT from conda-forgeTo installautoeftand its dependencies, run:withconda:condainstallautoeft-cconda-forgewithmamba:mambainstallautoeftBuilding AutoEFT from Source CodeTo build the distribution packages, run:gitclonehttps://gitlab.com/auto_eft/autoeft.gitautoeftcdautoeft
python-mbuildUsageVerify the installation by running:autoeft--helpModel FilesThemodel filedefines the symmetry groups and field content of a low-energy theory in theYAMLformat.
To produce a samplemodel file, run:autoeftsample-model>sm.ymlTo define a custommodel file, it is recommended to produce a sample file using thesample-modelsub-command and modify it according to the desired theory.Basis ConstructionOperator bases are constructed using theconstruct(aliasc) sub-command.
To show the help message, run:autoeftconstruct--helpautoeftneeds to accessformduring the construction. If theFORMexecutable is not on the systemPATH, the environment variableAUTOEFT_PATHcan be set to specify a different path (multiple paths are separated by:).To construct an operator basis for a low-energy theory, pass a validmodel fileandmass dimensionto the command.
For example, to construct the dimension 6 SMEFT operator basis, run:autoeftconstructsm.yml6# ...# Constructing operator basis for SMEFT @ d=6# ...This will create the output directoryefts/sm-eft/6/in the current working directory, containing the filestats.ymland directorybasis/.
A different output directory can be passed using the--outputargument.The filestats.ymlsummarizes the number offamilies,types,terms, andoperatorsof a constructed basis.Thebasis/directory contains the model (model.json) used to construct the basis and operator files in subdirectories of the form<N>/<family>/<type>.yml.Loading OperatorsOnce a basis is constructed, the operator files can be processed further.
If you want to work with the operators inside SageMath,autoeftprovides functionality to load the basis:frompathlibimportPathfromautoeft.io.basisimportBasisFilebasis_path=Path("efts/sm-eft/6/basis")basis_file=BasisFile(basis_path)model=basis_file.get_model()basis=basis_file.get_basis()print(model)# SMEFT: Standard Model Effective Field TheoryLQQQ=basis[{"LL":1,"QL":3}]print(LQQQ)# LL (1) QL(3)print(LQQQ.n_terms,LQQQ.n_operators,sep=" & ")# 3 & 57AuthorsRobert V. Harlander (RWTH Aachen University)Magnus C. Schaaf (RWTH Aachen University)CiteIf you use AutoEFT in your project, please refer to:Standard model effective field theory up to mass dimension 12R.V. Harlander(RWTH Aachen U.),T. Kempkens(RWTH Aachen U.),M.C. Schaaf(RWTH Aachen U.)e-Print:2305.06832[hep-ph]DOI:10.1103/PhysRevD.108.055020(publication)Published in:Phys.Rev.D 108 (2023) 5, 055020AutoEFT: Automated Operator Construction for Effective Field TheoriesRobert V. Harlander(RWTH Aachen U.),Magnus C. Schaaf(RWTH Aachen U.)e-Print:2309.15783[hep-ph]