Automated operator construction for effective field theories.
Project description
AutoEFT
Automated operator construction for effective field theories.
Installation
AutoEFT is available on the Python Package Index (PyPI) and the conda-forge channel.
Requirements
Installing AutoEFT from PyPI
To install AutoEFT using pip, an already installed and running version of SageMath is required (see the Sage Installation Guide and Alternative Installation using PyPI).
To install autoeft and its dependencies, run:
sage -pip install autoeft
On macOS using Homebrew, it may be necessary to precede this statement by PYTHONEXECUTABLE=</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 $PATH environment variable.
Installing AutoEFT from conda-forge
To install autoeft and its dependencies, run:
- with conda:
conda install autoeft -c conda-forge
- with mamba:
mamba install autoeft
Building AutoEFT from Source Code
To build the distribution packages, run:
git clone https://gitlab.com/auto_eft/autoeft.git autoeft
cd autoeft
python -m build
Usage
Verify the installation by running:
autoeft --help
Model Files
The model file defines the symmetry groups and field content of a low-energy theory in the YAML format. To produce a sample model file, run:
autoeft sample-model > sm.yml
To define a custom model file, it is recommended to produce a sample file using the sample-model sub-command and modify it according to the desired theory.
Basis Construction
Operator bases are constructed using the construct (alias c) sub-command.
To show the help message, run:
autoeft construct --help
autoeft needs to access form during the construction. If the FORM executable is not on the system PATH, the environment variable AUTOEFT_PATH can be set to specify a different path (multiple paths are separated by :).
To construct an operator basis for a low-energy theory, pass a valid model file and mass dimension to the command. For example, to construct the dimension 6 SMEFT operator basis, run:
autoeft construct sm.yml 6
# ...
# Constructing operator basis for SMEFT @ d=6
# ...
This will create the output directory efts/sm-eft/6/ in the current working directory, containing the file stats.yml and directory basis/.
A different output directory can be passed using the --output argument.
The file stats.yml summarizes the number of families, types, terms, and operators of a constructed basis.
The basis/ directory contains the model (model.json) used to construct the basis and operator files in subdirectories of the form <N>/<family>/<type>.yml.
Loading Operators
Once a basis is constructed, the operator files can be processed further. If you want to work with the operators inside SageMath, autoeft provides functionality to load the basis:
from pathlib import Path
from autoeft.io.basis import BasisFile
basis_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 Theory
LQQQ = basis[{"LL": 1, "QL": 3}]
print(LQQQ)
# LL (1) QL(3)
print(LQQQ.n_terms , LQQQ.n_operators , sep=" & ")
# 3 & 57
Authors
- Robert V. Harlander (RWTH Aachen University)
- Magnus C. Schaaf (RWTH Aachen University)
Cite
If you use AutoEFT in your project, please refer to:
-
Standard model effective field theory up to mass dimension 12
R.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, 055020
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file autoeft-1.0.0rc0.tar.gz.
File metadata
- Download URL: autoeft-1.0.0rc0.tar.gz
- Upload date:
- Size: 151.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09808ba2ba9a521c20a83bc6bc499f1de1c782c245a0f9e274299e1871acbd90
|
|
| MD5 |
c802833f05306fa9ab0b77048ceecd2e
|
|
| BLAKE2b-256 |
16474ca7d9426e6bf178354b3e2c2198c86aa5feaee3e634f5676420fb6276d7
|
File details
Details for the file autoeft-1.0.0rc0-py3-none-any.whl.
File metadata
- Download URL: autoeft-1.0.0rc0-py3-none-any.whl
- Upload date:
- Size: 247.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7bd3e59ddfcb1033f32ecd78815e0f9b2d7cad82979fc772dbd25a0e4a249e88
|
|
| MD5 |
ced64e61bc476de6468f7f57c50402cb
|
|
| BLAKE2b-256 |
8636e5544f58b506219faee0a43644079c7a0d259aed645be5d8a4aabaf64e04
|