Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Untitled #1

Open
wants to merge 71 commits into
base: master
Choose a base branch
from
Open

Untitled #1

wants to merge 71 commits into from

Conversation

yanok
Copy link
Owner

@yanok yanok commented Nov 11, 2010

No description provided.

yanok added 30 commits November 11, 2010 04:39
This patch adds Theory module with Theory datatype defined.
This type will contain all theory-specific data. For now it's
stub implementation has only one field: number of tails in
significant subgraphs. Also sample definition for phi3 theory
added.
This patch changes the definition of signSubgraphs function
to get a desired numbers of tails from theory definition instead
of passing them directly.
Also function to check if cycle set are acceptable added
but it's not complete (we should also check if our cycles
cover all edges in the diagram).
Edges representation of cycles changed to the list
of edges in the form ((node,node),index) where
index is used to distinguish different edges that
connect the same pair of nodes.
Make functions cycleLiesIn, cycleIntersects (and subgraphInternalCycles,
subgraphExternalCycles, subgraphExternalCycles', cyclesAcceptable and
cyclesAcceptable' as a consequence) treat their argument cycles
represented as pair of vertex and edge representation instead of
just vertex representation.
Function cycleCoverGraph now expects paired cycle representation instead
of just edges.
Fix cycleLiesIn so that cycle going through the 0 node (external moment path)
will be counted as external even for the whole diagram.
Added support for calculating optimal set of independent cycles.
Weights for penalties are hardcoded into penaltyForSubgraph function
for now.
Moments are stored as a list of triples (sign,nr of basic moment,list
of multipliers).
Added fields for dimension of the space and for method to get
divergence index of diagram elements. Added these fields to
Phi3 instance. Phi4 intentionally left unchanged!!
and some helper functions.
This version has a bug in dMuSquare: nultilines are deleted.
Added functions to multiply all coefficients in a sum by fixed factor,
to factorize the result and to build the expression for J' we
expect to find.
yanok and others added 30 commits December 21, 2010 21:04
Also functions to zero external moment and set stretch parameter to 1.
For now symbollic representation is very schematic: vertices are
translated into vert(squared_moment,list of modifiers) terms and
lines are translated into prop() terms with the same arguments.
You have to use zeroP action first now because we don't handle angles
with the external moment for now.
function diagramStrProcess (find better name for me!!) takes string
signature for diagram \gamma and returns some kind of symbollic
representation for N\gamma.
actually this function not only puts dots but does everything what needs
to be done before.
jacobian.hs is standalone program that just calls printJacobian phi3
with it's argument and prints result.
Compile it with ghc --make jacobian.hs
jacobian.py is a simple SymPy program to get needed Taylor series
coefficients for the Jacobian. It needs number of loops to be passed as
an argument.
jacobian.sh is a simple shell script that calls jacobian first and that
jacobian.py. It needs two arguments: diagram signature and it's number
of loops (it's weird but let it be so for now).
Generic nrLoops function based on calculation of cycle basis in the
diagram turned to be slow and buggy, so for the time beeing we are going
to use simple version that works for phi3 theory:
 NrLoops = NrEdges - NrVertices + 1
Take four arguments: int-file jac-file out-directory (should exist) and
number of loops.
This script gets signature and number of loops as it's arguments calls
expand.sh and jacobian.sh to get integrand and finally calls makec.py to
produce C-sources.
fix final Jacobian: part with sinuses are common and should not be
dubbed for each loop.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant