GithubHelp home page GithubHelp logo

unknowablecoder / qgraf-xml-drawer Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hepcpt/qgraf-xml-drawer

0.0 1.0 0.0 41 KB

Draw your Feynman diagrams automatically using QGRAF and TikZ-Feynman

Python 80.61% TeX 19.39%

qgraf-xml-drawer's Introduction

QGRAF Diagram Drawer

Dependencies

This code uses QGRAF and tikz-feynman. It requires Python 3.* to run (the current author can ensure it works under Python 3.7.4, any other version is still untested but, in principle, should work).

Use

The program qgraf-xml-drawer is a Python 3.* program for drawing Feynman diagrams. The code translates QGRAF diagrams into a LuaLaTeX-compatible description, using tikz-feynman.

QGRAF

The program is provided with a QGRAF style file called xmldraw.sty, which must be used in order to be able to correctly generate the graphs from the output. Any set of Feynman rules compatible with QGRAF can be handled.

Graph Generation

For the graphs to be correctly generated and drawn, the particle dictionnary must be appropriate for the model in use, namely the type of line that corresponds to the propagator of each particle must be provided.

The QGRAF output file and the file to which the user desires to output the LuaLaTeX code can be indicated as the first and second command-line arguments to the program, respectively, in the form python drawer.py <QGRAF_output_file> <LuaLaTeX_target_file>, with the default values being adjustable in the code.

Limitations

The original code handles bundles and tadpoles, which the version here contained does not. For the purposes for which it was developed, these features were not particularly relevant, though they might be added at a later time if such a need arises.

Any other issue that may arise comes from lack of testing, though any and all feedback is appreciated.

Citing

The original code is citeable using the following DOI:

DOI

Original author: Nicolas Deutschmann

Current author: Nuno Fernandes

qgraf-xml-drawer's People

Contributors

ndeutschmann avatar unknowablecoder avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.