All Projects → FeynCalc → feynhelpers

FeynCalc / feynhelpers

Licence: GPL-3.0 license
FeynHelpers is a collection of intefaces that allow you to use other HEP-related tools from your FeynCalc session

Programming Languages

Mathematica
289 projects

Projects that are alternatives of or similar to feynhelpers

NumericalEFT.jl
Numerical Effective Field Theory for Quantum Materials
Stars: ✭ 21 (+40%)
Mutual labels:  feynman-diagrams, quantum-field-theory
hepipe.js
Pipe arbitrary data rows (logs, events, cdrs, esl, etc) to HEP Server (HOMER)
Stars: ✭ 22 (+46.67%)
Mutual labels:  hep
so stupid search
It's my honor to drive you fucking fire faster, to have more time with your Family and Sunshine.This tool is for those who often want to search for a string Deeply into a directory in Recursive mode, but not with the great tools: grep, ack, ripgrep .........every thing should be Small, Thin, Fast, Lazy....without Think and Remember too much ...一…
Stars: ✭ 135 (+800%)
Mutual labels:  fire
ml-lpi
Materials for ML course at Lebedev Physical Institute
Stars: ✭ 31 (+106.67%)
Mutual labels:  hep
decaylanguage
Package to parse decay files, describe and convert particle decays between digital representations.
Stars: ✭ 34 (+126.67%)
Mutual labels:  hep
paStash
pastaʃ'ʃ = Spaghetti I/O Event Data Processing, Interpolation, Correlation and beyond 🍝
Stars: ✭ 89 (+493.33%)
Mutual labels:  hep
Corpuscles.jl
Julia package for particle physics
Stars: ✭ 25 (+66.67%)
Mutual labels:  hep
root pandas
A Python module for conveniently loading/saving ROOT files as pandas DataFrames
Stars: ✭ 108 (+620%)
Mutual labels:  hep
UnROOT.jl
Native Julia I/O package to work with CERN ROOT files
Stars: ✭ 52 (+246.67%)
Mutual labels:  hep
lumin
LUMIN - a deep learning and data science ecosystem for high-energy physics.
Stars: ✭ 45 (+200%)
Mutual labels:  hep
alibuild
A simple build tool for ALICE software
Stars: ✭ 19 (+26.67%)
Mutual labels:  hep
LatticeQCD.jl
A native Julia code for lattice QCD with dynamical fermions in 4 dimension.
Stars: ✭ 85 (+466.67%)
Mutual labels:  hep
particle
Package to deal with particles, the PDG particle data table, PDGIDs, etc.
Stars: ✭ 113 (+653.33%)
Mutual labels:  hep
pylhe
Lightweight Python interface to read Les Houches Event (LHE) files
Stars: ✭ 29 (+93.33%)
Mutual labels:  hep
alice-rs
Analyze the public data from the CERN base ALICE collaboration with Rust
Stars: ✭ 81 (+440%)
Mutual labels:  hep
Statistics-Notes
Personal notes on statistics with a focus on applications to experimental high energy physics
Stars: ✭ 19 (+26.67%)
Mutual labels:  hep
mobile-app
This project aims to build a modern mobile web-app based on the framework Ionic to improve the functionality of http://mobile.leitstelle122.at/.
Stars: ✭ 22 (+46.67%)
Mutual labels:  fire
alidist
Recipes to build ALICE software
Stars: ✭ 23 (+53.33%)
Mutual labels:  hep
publicbodies
A database of public bodies such as government departments, ministries etc.
Stars: ✭ 56 (+273.33%)
Mutual labels:  fire
tikz-feyn
A LaTeX package to draw Feynman diagrams using TikZ
Stars: ✭ 16 (+6.67%)
Mutual labels:  feynman-diagrams

FeynHelpers

license: GPLv3 latest release compatibility

FeynHelpers is a collection of interfaces that allow you to use other HEP-related tools from your FeynCalc session.

Requirements

FeynHelpers is designed as an add-on for FeynCalc. To use it you need at least FeynCalc 9.2 and Mathematica 8.

Supported tools

Tools that are currently supported are

Installation

Automatic installation

  • Run the following instruction in a Kernel or Notebook session of Mathematica

    Import["https://raw.githubusercontent.com/FeynCalc/feynhelpers/master/install.m"]
    InstallFeynHelpers[]
    

    If the above code fails with URLFetch::invhttp: SSL connect error (e.g. on Mathematica 9 under OS X), try

    ImportString[URLFetch["https://raw.githubusercontent.com/FeynCalc/feynhelpers/master/install.m"]]
    InstallFeynHelpers[]
    
  • The automatic installer can also install Package-X and FIRE for you. It will offer you this possiblity at the end of the installation process

Manual installation

  • Create a directory FeynHelpers inside

     FileNameJoin[{$UserBaseDirectory, "Applications", "FeynCalc", "AddOns"}]
    

    and put the source code there.

  • Install Package-X and FIRE packages. It should be possible to load Package-X via

     <<X`
    

    and FIRE via

     << FIRE5`
    

Development version

If you like the bleeding edge and you are already using the development version of FeynCalc, you can also install the development version of FeynHelpers

Import["https://raw.githubusercontent.com/FeynCalc/feynhelpers/master/install.m"]
InstallFeynHelpers[InstallFeynHelpersDevelopmentVersion->True]

Experimental Fermat interface

The development version features an interface to the CAS Fermat by R. Lewis. At the moment the main function of this interface is FerSolve, which employs Fermat to solve systems of linear equations. Notice that to run FerSolve you need to download the Fermat binary and put ferl6 (Linux) or ferm6 (macOS) to FileNameJoin[{$FeynHelpersDirectory, "ExternalTools", "Fermat"}].

Some examples for running FerSolve would be

FerSolve[{a x + y == 7, b x - y == 1}, {x, y}]
FerSolve[{2 x + y c == 2, 4 x == c}, {x, y}]
eqs = {M0 == (1 - f1 - f2 - f3 - f4 - f5 - f6 - f7 - f8 - f9 - f10 - 
      f11 - f12 - f13 - f14 - f15 - f16)*m0, 
  M1 == f1*m0 + (1 - f1 - f2 - f3 - f4 - f5 - f6 - f7 - f8 - f9 - 
       f10 - f11 - f12 - f13 - f14 - f15 - f16)*m1, 
  M2 == f1*m1 + 
    f2*m0 + (1 - f1 - f2 - f3 - f4 - f5 - f6 - f7 - f8 - f9 - f10 - 
       f11 - f12 - f13 - f14 - f15 - f16)*m2, 
  M4 == f1*m3 + f2*m2 + f3*m1 + f4*m0, 
  M5 == f2*m3 + f3*m2 + f4*m1 + f5*m0, 
  M6 == f3*m3 + f4*m2 + f5*m1 + f6*m0, 
  M7 == f4*m3 + f5*m2 + f6*m1 + f7*m0, 
  M8 == f5*m3 + f6*m2 + f7*m1 + f8*m0, 
  M9 == f6*m3 + f7*m2 + f8*m1 + f9*m0, 
  M10 == f7*m3 + f8*m2 + f9*m1 + f10*m0, 
  M11 == f8*m3 + f9*m2 + f10*m1 + f11*m0, 
  M12 == f9*m3 + f10*m2 + f11*m1 + f12*m0, 
  M13 == f10*m3 + f11*m2 + f12*m1 + f13*m0, 
  M14 == f11*m3 + f12*m2 + f13*m1 + f14*m0, 
  M15 == f12*m3 + f13*m2 + f14*m1 + f15*m0, 
  M16 == f13*m3 + f14*m2 + f15*m1 + f16*m0};
vars = {f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12, f13, f14, 
  f15, f16}
FerSolve[eqs, vars]

FerSolve can be also employed for calculating new tensor reduction with Tdec. For example,

$LoadAddOns = {"FeynHelpers"};
<< FeynCalc`

Tdec[{{p1, mu1}, {p1, mu2}, {p1, mu3}, {p1, mu4}, {p2, mu5}, {p2, 
   mu6}}, {Q1, Q2}, Solve -> FerSolve, UseTIDL -> False, 
 FCVerbose -> 1]

Experimental QGRAF interface

The interface to QGRAF is still very unstable and full of bugs and missing features. Just to give a general idea of how it is supposed to work, here is a simple QED 2-loop example

SetDirectory[NotebookDirectory[]];
QGLoadInsertions[];
out = QGCreateAmp[2, {"El[p]"} -> {"El[p]"}, QGLoopMomentum -> l, 
  QGModel -> "QEDOneFlavor", QGShowOutput -> False]
  
QGConvertToFC[out[[1]], DiracChainJoin -> True]  

QGPrepareDiagramsTeX[out[[2]], "dias.tex"]
(*or QGPrepareDiagramsTeX[out[[2]], "Dias", Split -> True] *)

Usage

For usage information see the accompanying paper arXiv:1611.06793 and the supplied examples.

Acknowledgments

If you use FeynHelpers in you work, please cite

  • V. Shtabovenko, "FeynHelpers: Connecting FeynCalc to FIRE and Package-X", Comput. Phys. Commun., 218, 48-65, 2017, arXiv:1611.06793

Also don't forget to cite the authors of the tools that you are calling from FeynHelpers, which are

License

  • The code of FeynHelpers is covered by the GNU General Public License 3.
  • This does not apply to the packages for which FeynHelpers provides an interface to FeynCalc. For the licensing of those packages please check the informations provided by the respective authors.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].