(*********************************************************************** Mathematica-Compatible Notebook This notebook can be used on any computer system with Mathematica 3.0, MathReader 3.0, or any compatible application. The data for the notebook starts with the line of stars above. To get the notebook into a Mathematica-compatible application, do one of the following: * Save the data starting with the line of stars above into a file with a name ending in .nb, then open the file inside the application; * Copy the data starting with the line of stars above to the clipboard, then use the Paste menu command inside the application. Data for notebooks contains only printable 7-bit ASCII and can be sent directly in email or through ftp in text mode. Newlines can be CR, LF or CRLF (Unix, Macintosh or MS-DOS style). NOTE: If you modify the data for this notebook not in a Mathematica- compatible application, you must delete the line below containing the word CacheID, otherwise Mathematica-compatible applications may try to use invalid cache data. For more information on notebooks and Mathematica-compatible applications, contact Wolfram Research: web: http://www.wolfram.com email: info@wolfram.com phone: +1-217-398-0700 (U.S.) Notebook reader applications are available free of charge from Wolfram Research. ***********************************************************************) (*CacheID: 232*) (*NotebookFileLineBreakTest NotebookFileLineBreakTest*) (*NotebookOptionsPosition[ 2641078, 83252]*) (*NotebookOutlinePosition[ 2718650, 85957]*) (* CellTagsIndexPosition[ 2711060, 85733]*) (*WindowFrame->Normal*) Notebook[{ Cell[CellGroupData[{ Cell["The FeynCalc Book", "Title", TextAlignment->Center], Cell[TextData[StyleBox["FeynCalc 3.1.14", FontWeight->"Bold"]], "Subtitle", PageBreakBelow->True, TextAlignment->Center], Cell["Tools for Feynman diagram calculations", "Subtitle", TextAlignment->Center], Cell["Rolf Mertig", "Subsubtitle", TextAlignment->Center], Cell["March 12, 1999 ", "Subsubtitle", TextAlignment->Center], Cell[TextData[{ "Copyright \[Copyright]1999 ", ButtonBox["Mertig Research & Consulting", ButtonData:>{ URL[ "http://www.mertig.com"], None}, ButtonStyle->"Hyperlink", ButtonNote->"http://www.mertig.com"] }], "Subsubtitle", TextAlignment->Center], Cell[TextData[{ "HTML version: ", ButtonBox["http://www.feyncalc.com", ButtonData:>{ URL[ "http://www.feyncalc.com"], None}, ButtonStyle->"Hyperlink", ButtonNote->"http://www.feyncalc.com"] }], "Subsubtitle", TextAlignment->Center], Cell[CellGroupData[{ Cell["Table of Contents", "Section", CellTags->"Table of Contents"], Cell[TextData[ButtonBox["Introduction", ButtonData:>"Short Overview", ButtonStyle->"Hyperlink"]], "Contents", GeneratedCell->True], Cell[TextData[ButtonBox["Start FeynCalc", ButtonData:>"Load FeynCalc", ButtonStyle->"Hyperlink"]], "Contents", GeneratedCell->True], Cell[TextData[ButtonBox["Example Calculations", ButtonData:>"Example Calculations", ButtonStyle->"Hyperlink"]], "Contents", GeneratedCell->True], Cell[TextData[ButtonBox["Tree level pair production", ButtonData:>"Tree level", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["A moment integral", ButtonData:>"A moment integral", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Reference Guide", ButtonData:>"Reference Guide", ButtonStyle->"Hyperlink"]], "ContentsSection", GeneratedCell->True], Cell[TextData[ButtonBox["A0", ButtonData:>"A0", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Amplitudes", ButtonData:>"Amplitudes", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["AnomalousDimension", ButtonData:>"AnomalousDimension", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Anti5", ButtonData:>"Anti5", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["AntiCommutator", ButtonData:>"AntiCommutator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["AntiQuarkField", ButtonData:>"AntiQuarkField", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["AntiSymmetrize", ButtonData:>"AntiSymmetrize", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Apart1", ButtonData:>"Apart1", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Apart2", ButtonData:>"Apart2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Apart3", ButtonData:>"Apart3", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["B00", ButtonData:>"B00", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["B0", ButtonData:>"B0", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["B11", ButtonData:>"B11", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["B1", ButtonData:>"B1", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["BackgroundGluonVertex", ButtonData:>"BackgroundGluonVertex", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["C0", ButtonData:>"C0", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Calc", ButtonData:>"Calc", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["CA", ButtonData:>"CA", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Cases2", ButtonData:>"Cases2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["CF", ButtonData:>"CF", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ChangeDimension", ButtonData:>"ChangeDimension", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ChargeConjugationMatrixInv", ButtonData:>"ChargeConjugationMatrixInv", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ChargeConjugationMatrix", ButtonData:>"ChargeConjugationMatrix", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ChiralityProjector", ButtonData:>"ChiralityProjector", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Chisholm", ButtonData:>"Chisholm", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ClearScalarProducts", ButtonData:>"ClearScalarProducts", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Collect2", ButtonData:>"Collect2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Combine", ButtonData:>"Combine", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["CommutatorExplicit", ButtonData:>"CommutatorExplicit", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Commutator", ButtonData:>"Commutator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ComplexConjugate", ButtonData:>"ComplexConjugate", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ComplexIndex", ButtonData:>"ComplexIndex", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Contract", ButtonData:>"Contract", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Convolute", ButtonData:>"Convolute", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["CovariantD", ButtonData:>"CovariantD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["D0", ButtonData:>"D0", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DataType", ButtonData:>"DataType", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DeclareNonCommutative", ButtonData:>"DeclareNonCommutative", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DeltaFunction", ButtonData:>"DeltaFunction", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DeltaFunctionPrime", ButtonData:>"DeltaFunctionPrime", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Dimension", ButtonData:>"Dimension", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracGammaCombine", ButtonData:>"DiracGammaCombine", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracGammaExpand", ButtonData:>"DiracGammaExpand", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracGamma", ButtonData:>"DiracGamma", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracGammaT", ButtonData:>"DiracGammaT", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracMatrix", ButtonData:>"DiracMatrix", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracOrder", ButtonData:>"DiracOrder", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracReduce", ButtonData:>"DiracReduce", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracSigmaExplicit", ButtonData:>"DiracSigmaExplicit", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracSigma", ButtonData:>"DiracSigma", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracSimplify", ButtonData:>"DiracSimplify", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracSimplify2", ButtonData:>"DiracSimplify2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracSlash", ButtonData:>"DiracSlash", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracTrace", ButtonData:>"DiracTrace", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DiracTrick", ButtonData:>"DiracTrick", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["DotSimplify", ButtonData:>"DotSimplify", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["EpsChisholm", ButtonData:>"EpsChisholm", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["EpsEvaluate", ButtonData:>"EpsEvaluate", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Epsilon", ButtonData:>"Epsilon", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Eps", ButtonData:>"Eps", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ExpandPartialD", ButtonData:>"ExpandPartialD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ExpandScalarProduct", ButtonData:>"ExpandScalarProduct", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Explicit", ButtonData:>"Explicit", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ExplicitPartialD", ButtonData:>"ExplicitPartialD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ExplicitSUNIndex", ButtonData:>"ExplicitSUNIndex", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Factor2", ButtonData:>"Factor2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FAD", ButtonData:>"FAD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FCE", ButtonData:>"FCE", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FCI", ButtonData:>"FCI", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FermionSpinSum", ButtonData:>"FermionSpinSum", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynAmpDenominatorCombine", ButtonData:>"FeynAmpDenominatorCombine", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynAmpDenominator", ButtonData:>"FeynAmpDenominator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynAmpDenominatorSimplify", ButtonData:>"FeynAmpDenominatorSimplify", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynAmpDenominatorSplit", ButtonData:>"FeynAmpDenominatorSplit", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynAmp", ButtonData:>"FeynAmp", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynCalc2FORM", ButtonData:>"FeynCalc2FORM", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynCalcExternal", ButtonData:>"FeynCalcExternal", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynCalcInternal", ButtonData:>"FeynCalcInternal", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FeynRule", ButtonData:>"FeynRule", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FieldStrength", ButtonData:>"FieldStrength", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FORM2FeynCalc", ButtonData:>"FORM2FeynCalc", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FourDivergence", ButtonData:>"FourDivergence", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FourLaplacian", ButtonData:>"FourLaplacian", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FourVector", ButtonData:>"FourVector", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FreeQ2", ButtonData:>"FreeQ2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FromTFi", ButtonData:>"FromTFi", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FRH", ButtonData:>"FRH", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FunctionalD", ButtonData:>"FunctionalD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FV", ButtonData:>"FV", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["FVD", ButtonData:>"FVD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GA", ButtonData:>"GA", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GAD", ButtonData:>"GAD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GammaEpsilon", ButtonData:>"GammaEpsilon", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GammaExpand", ButtonData:>"GammaExpand", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GhostPropagator", ButtonData:>"GhostPropagator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GHP", ButtonData:>"GHP", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GaugeField", ButtonData:>"GluonField", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GluonGhostVertex", ButtonData:>"GluonGhostVertex", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GluonPropagator", ButtonData:>"GluonPropagator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GluonVertex", ButtonData:>"GluonVertex", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GSD", ButtonData:>"GSD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["GS", ButtonData:>"GS", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Gstrong", ButtonData:>"Gstrong", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Hill", ButtonData:>"Hill", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["HypergeometricAC", ButtonData:>"HypergeometricAC", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["HypergeometricIR", ButtonData:>"HypergeometricIR", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["HypergeometricSE", ButtonData:>"HypergeometricSE", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["HypExplicit", ButtonData:>"HypExplicit", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Integrate2", ButtonData:>"Integrate2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Integrate3", ButtonData:>"Integrate3", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["IntegrateByParts", ButtonData:>"IntegrateByParts", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["InverseMellin", ButtonData:>"InverseMellin", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Isolate", ButtonData:>"Isolate", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Kummer", ButtonData:>"Kummer", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Lagrangian", ButtonData:>"Lagrangian", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["LC", ButtonData:>"LC", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["LCD", ButtonData:>"LCD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["LeftPartialD", ButtonData:>"LeftPartialD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["LeftRightPartialD", ButtonData:>"LeftRightPartialD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["LeftRightPartialD2", ButtonData:>"LeftRightPartialD2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["LeviCivita", ButtonData:>"LeviCivita", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Li2", ButtonData:>"Li2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Li3", ButtonData:>"Li3", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["LorentzIndex", ButtonData:>"LorentzIndex", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Map2", ButtonData:>"Map2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["MetricTensor", ButtonData:>"MetricTensor", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["MomentumCombine", ButtonData:>"MomentumCombine", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["MomentumExpand", ButtonData:>"MomentumExpand", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Momentum", ButtonData:>"Momentum", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["MT", ButtonData:>"MT", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["MTD", ButtonData:>"MTD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Nielsen", ButtonData:>"Nielsen", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["NTerms", ButtonData:>"NTerms", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["OneLoop", ButtonData:>"OneLoop", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["OneLoopSimplify", ButtonData:>"OneLoopSimplify", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["OPEDelta", ButtonData:>"OPEDelta", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["OPEi, OPEj, OPEk, OPEl, OPEm, OPEn, OPEo", ButtonData:>"OPEi", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["OPESumExplicit", ButtonData:>"OPESumExplicit", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["OPESum", ButtonData:>"OPESum", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["OPESumSimplify", ButtonData:>"OPESumSimplify", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Pair", ButtonData:>"Pair", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PartialD", ButtonData:>"PartialD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PaVe", ButtonData:>"PaVe", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PaVeOrder", ButtonData:>"PaVeOrder", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PaVeReduce", ButtonData:>"PaVeReduce", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PlusDistribution", ButtonData:>"PlusDistribution", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Polarization", ButtonData:>"Polarization", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PolarizationSum", ButtonData:>"PolarizationSum", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PolarizationVector", ButtonData:>"PolarizationVector", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PowerSimplify", ButtonData:>"PowerSimplify", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PropagatorDenominatorExplicit", ButtonData:>"PropagatorDenominatorExplicit", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["PropagatorDenominator", ButtonData:>"PropagatorDenominator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["QuantumField", ButtonData:>"QuantumField", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["QuarkField", ButtonData:>"QuarkField", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["QuarkGluonVertex", ButtonData:>"QuarkGluonVertex", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["QuarkPropagator", ButtonData:>"QuarkPropagator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["RightPartialD", ButtonData:>"RightPartialD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["RussianTrick", ButtonData:>"RussianTrick", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ScalarProduct", ButtonData:>"ScalarProduct", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ScalarProductCancel", ButtonData:>"ScalarProductCancel", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SD", ButtonData:>"SD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SelectFree", ButtonData:>"SelectFree", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SelectNotFree", ButtonData:>"SelectNotFree", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Series2", ButtonData:>"Series2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SimplifyDeltaFunction", ButtonData:>"SimplifyDeltaFunction", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SimplifyPolyLog", ButtonData:>"SimplifyPolyLog", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SOD", ButtonData:>"SOD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Solve2", ButtonData:>"Solve2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SO", ButtonData:>"SO", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SP", ButtonData:>"SP", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SPD", ButtonData:>"SPD", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Spinor", ButtonData:>"Spinor", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SpinorUBar", ButtonData:>"SpinorUBar", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SpinorU", ButtonData:>"SpinorU", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SpinorVBar", ButtonData:>"SpinorVBar", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SpinorV", ButtonData:>"SpinorV", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SplittingFunction", ButtonData:>"SplittingFunction", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SumP", ButtonData:>"SumP", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SumS", ButtonData:>"SumS", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SumT", ButtonData:>"SumT", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SUNDelta", ButtonData:>"SUNDelta", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SUND", ButtonData:>"SUND", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SUNF", ButtonData:>"SUNF", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SUNIndex", ButtonData:>"SUNIndex", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SUNSimplify", ButtonData:>"SUNSimplify", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SUNT", ButtonData:>"SUNT", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["SUNTrace", ButtonData:>"SUNTrace", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Symmetrize", ButtonData:>"Symmetrize", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Tdec", ButtonData:>"Tdec", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Tensorfunction", ButtonData:>"Tensorfunction", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["TFi", ButtonData:>"TFi", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["TIDL", ButtonData:>"TIDL", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["TID", ButtonData:>"TID", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ToDistribution", ButtonData:>"ToDistribution", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ToHypergeometric", ButtonData:>"ToHypergeometric", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ToLarin", ButtonData:>"ToLarin", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["ToTFi", ButtonData:>"ToTFi", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Tr", ButtonData:>"Tr", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["TrickMandelstam", ButtonData:>"TrickMandelstam", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Trick", ButtonData:>"Trick", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Twist2GluonOperator", ButtonData:>"Twist2GluonOperator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Twist2QuarkOperator", ButtonData:>"Twist2QuarkOperator", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Uncontract", ButtonData:>"Uncontract", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["UnDeclareNonCommutative", ButtonData:>"UnDeclareNonCommutative", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Write2", ButtonData:>"Write2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Zeta2", ButtonData:>"Zeta2", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["$FCT", ButtonData:>"$FCT", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["$LorentzIndices", ButtonData:>"$LorentzIndices", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["$PairBrackets", ButtonData:>"$PairBrackets", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["$VeryVerbose", ButtonData:>"$VeryVerbose", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["$West", ButtonData:>"$West", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True], Cell[TextData[ButtonBox["Evaluation time and memory usage", ButtonData:>"Evaluation time and memory usage", ButtonStyle->"Hyperlink"]], "Index", GeneratedCell->True] }, Open ]], Cell[CellGroupData[{ Cell["Introduction", "Section", PageBreakAbove->True, CellTags->"Short Overview"], Cell[TextData[{ "FeynCalc 3.1 is a ", StyleBox["Mathematica", FontSlant->"Italic"], " 3.0 package for algebraic calculations in high energy physics. Tools are \ provided for Lorentz index contraction, Dirac algebra manipulation, color \ factor calculation, automatic Feynman rule derivation, general noncommutative \ algebra as well as various look-up tables for Feynman parameter integrals, \ Mellin transforms (e.g. all integrals - except 57,58 and 59, and correcting a \ minor misprint in 14) of Appendix 7 from ", ButtonBox["hep-ph/9810241", ButtonData:>{ URL[ "http://xxx.lanl.gov/abs/hep-ph/9810241"], None}, ButtonStyle->"Hyperlink"], " are tabulated in ", ButtonBox["Integrate2", ButtonData:>"Integrate2", ButtonStyle->"Hyperlink"], " , convolutions and Feynman rules. Furthermore special translation \ facilities are provided to change the FeynCalc syntax to and from FORM \ syntax. Optimized FORTRAN generation can be done with ", ButtonBox["Isolate", ButtonData:>"Isolate", ButtonStyle->"Hyperlink"], " and ", ButtonBox["Write2", ButtonData:>"Write2", ButtonStyle->"Hyperlink"], "." }], "Text"], Cell[TextData[{ "The more important functions for input of objects like ", Cell[BoxData[ FormBox[ RowBox[{ SuperscriptBox["p", "\[Mu]"], ",", SuperscriptBox["\[Gamma]", "\[Nu]"], ",", SuperscriptBox["g", RowBox[{"\[Mu]", " ", "\[Nu]"}]], ",", " ", SuperscriptBox["\[CurlyEpsilon]", RowBox[{"\[Mu]", " ", "\[Nu]", " ", "\[Rho]", " ", "\[Sigma]"}]], ",", " ", RowBox[{"etc", "."}]}], TraditionalForm]]], " (abbreviations in parentheses) are: ", ButtonBox["DiracMatrix", ButtonData:>"DiracMatrix", ButtonStyle->"Hyperlink"], " (", ButtonBox["GA", ButtonData:>"GA", ButtonStyle->"Hyperlink"], "), ", ButtonBox["DiracSlash", ButtonData:>"DiracSlash", ButtonStyle->"Hyperlink"], " (", ButtonBox["GS", ButtonData:>"GS", ButtonStyle->"Hyperlink"], "), ", ButtonBox["FourVector", ButtonData:>"FourVector", ButtonStyle->"Hyperlink", ButtonNote->"FourVector"], " (", ButtonBox["FV", ButtonData:>"FV", ButtonStyle->"Hyperlink"], "), ", ButtonBox["LeviCivita", ButtonData:>"LeviCivita", ButtonStyle->"Hyperlink"], " (", ButtonBox["LC", ButtonData:>"LC", ButtonStyle->"Hyperlink"], "), ", ButtonBox["MetricTensor", ButtonData:>"MetricTensor", ButtonStyle->"Hyperlink"], " (", ButtonBox["MT", ButtonData:>"MT", ButtonStyle->"Hyperlink"], "), ", ButtonBox["Spinor", ButtonData:>"Spinor", ButtonStyle->"Hyperlink"], ", ", ButtonBox["SUNDelta", ButtonData:>"SUNDelta", ButtonStyle->"Hyperlink"], ", ", ButtonBox["SUNF", ButtonData:>"SUNF", ButtonStyle->"Hyperlink"], ", ", ButtonBox["ScalarProduct", ButtonData:>"ScalarProduct", ButtonStyle->"Hyperlink"], " (", ButtonBox["SP", ButtonData:>"SP", ButtonStyle->"Hyperlink"], "). " }], "Text"], Cell["The more important functions for manipulations are:", "Text"], Cell[TextData[{ ButtonBox["Contract", ButtonData:>"Contract", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Tr", ButtonData:>"Tr", ButtonStyle->"Hyperlink"], ", ", ButtonBox["DiracSimplify", ButtonData:>"DiracSimplify", ButtonStyle->"Hyperlink", ButtonNote->"DiracSimplify"], ", ", ButtonBox["DiracTrick", ButtonData:>"DiracTrick", ButtonStyle->"Hyperlink", ButtonNote->"DiracTrick"], ", ", ButtonBox["Calc", ButtonData:>"Calc", ButtonStyle->"Hyperlink", ButtonNote->"Calc"], ", ", ButtonBox["Convolute", ButtonData:>"Convolute", ButtonStyle->"Hyperlink"], ", ", ButtonBox["FeynRule", ButtonData:>"FeynRule", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Integrate2", ButtonData:>"Integrate2", ButtonStyle->"Hyperlink"], ", ", ButtonBox["FeynCalc2FORM", ButtonData:>"FeynCalc2FORM", ButtonStyle->"Hyperlink"], ", ", ButtonBox["PaVeReduce", ButtonData:>"PaVeReduce", ButtonStyle->"Hyperlink"], " ,", ButtonBox["SimplifyPolyLog", ButtonData:>"SimplifyPolyLog", ButtonStyle->"Hyperlink"], " , ", ButtonBox["SUNSimplify", ButtonData:>"SUNSimplify", ButtonStyle->"Hyperlink"], " , ", ButtonBox["Isolate", ButtonData:>"Isolate", ButtonStyle->"Hyperlink"], " , ", ButtonBox["Collect2", ButtonData:>"Collect2", ButtonStyle->"Hyperlink"], " , ", ButtonBox["OneLoopSimplify", ButtonData:>"OneLoopSimplify", ButtonStyle->"Hyperlink", ButtonNote->"OneLoopSimplify"], ", ", ButtonBox["Series2", ButtonData:>"Series2", ButtonStyle->"Hyperlink", ButtonNote->"Series2"], " , ", ButtonBox["ScalarProductCancel", ButtonData:>"ScalarProductCancel", ButtonStyle->"Hyperlink"], "." }], "Text"], Cell[TextData[{ "FeynCalc 3.1 is still compatible with FeynArts 2.2 if the FeynArts \ function ToFA1Convention is used on the generated amplitudes. The functions \ OneLoop and OneLoopSum for calculation of Standard Model (-like) 1-loop \ diagrams still work in FeynCalc 3.1 but they have not been developed much \ further compared to the FeynCalc 1.0 version. While ", ButtonBox["OneLoop", ButtonData:>"OneLoop", ButtonStyle->"Hyperlink"], " and OneLoopSum still work fine for self-energy, triangle and box diagrams \ not too complicated the reader should be aware of the package FormCalc which \ is more effective for the adventurous researcher calculating thousands of \ diagrams involving four external gauge bosons. Notice however that FormCalc \ does not reduce the Passarino-Veltman integrals to scalar integrals. Also \ FormCalc is limited to the 't Hooft Feynman gauge. FeynCalc provides the \ possibility to reduce Passarino-Veltman integrals to scalar integrals \ algebraically by the function ", ButtonBox["PaVeReduce", ButtonData:>"PaVeReduce", ButtonStyle->"Hyperlink", ButtonNote->"PaVeReduce"], " ." }], "Text"], Cell[TextData[{ "On a Pentium II 300 MHz computer with 128 MB of RAM running ", StyleBox["Mathematica", FontSlant->"Italic"], " 3.0 for Linux this noteboook needs less than 15 minutes to evaluate and \ less than 16 MB of memory." }], "Text"], Cell[TextData[{ "FeynCalc automatically loads any tarcer*.mx file from the \ HighEnergyPhysics directory. For a description of TARCER see ", ButtonBox["hep-ph/9801383", ButtonData:>{ URL[ "http://xxx.lanl.gov/abs/hep-ph/9801383"], None}, ButtonStyle->"Hyperlink"], " or the published version in Computer Physics Communications 111 (1998) \ 265-273." }], "Text"], Cell["\<\ For more detailed information concerning FeynCalc functions you can \ investigate most of the source code in the FeynCalc directory in the \ HighEnergyPhysics directory. The location of the HighEnergyPhysics directory \ is stored upon installation in the fc.m file and you can get its value from \ the global variable $FeynCalcDirectory. A complete list of FeynCalc objects \ is stored in the variable $FeynCalcStuff. Not all functions are documented in \ this notebook. Some are either very special ones (e.g. for tools for 2-loop \ QCD diagrams originating in twist-2 OPE) or still experimental.\ \>", "Text"], Cell[TextData[{ "The ", Cell[BoxData[ FormBox[ SuperscriptBox["\[Gamma]", "5"], TraditionalForm]]], "scheme used in OneLoop is the naive one, i.e., ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"{", RowBox[{ SuperscriptBox["\[Gamma]", "5"], ",", SuperscriptBox["\[Gamma]", "\[Mu]"]}], ")"}], "=", "0"}], TraditionalForm]]], " in 4 and D dimensions. See also ", ButtonBox["ToLarin", ButtonData:>"ToLarin", ButtonStyle->"Hyperlink"] }], "Text"], Cell["The metric used is the one from Bjorken and Drell (+---).", "Text"], Cell[TextData[{ "For suggestions and bug reports please email the author: ", ButtonBox["rolf@mertig.com", ButtonData:>{ URL[ "mailto:rolf@mertig.com"], None}, ButtonStyle->"Hyperlink"], "." }], "Text"] }, Open ]], Cell[CellGroupData[{ Cell["Start FeynCalc", "Section", CellTags->"Load FeynCalc"], Cell["\<\ This is only for timing purposes of this notebook and can be \ omitted in general.\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"absolutestarttime", "=", RowBox[{"AbsoluteTime", "[", "]"}]}]], "Input"], Cell[BoxData[ FormBox["3.130269317`15.5162*^9", TraditionalForm]], "Output"] }, Open ]], Cell["This defines typesetting rules for q1 and q2:", "Text"], Cell[BoxData[ RowBox[{ RowBox[{"q1", "/:", RowBox[{"MakeBoxes", "[", RowBox[{"q1", ",", "TraditionalForm"}], "]"}], ":=", RowBox[{"InterpretationBox", "[", RowBox[{ RowBox[{"SubscriptBox", "[", RowBox[{"q", ",", "1"}], "]"}], ",", "q1"}], "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"q2", "/:", RowBox[{"MakeBoxes", "[", RowBox[{"q2", ",", "TraditionalForm"}], "]"}], ":=", RowBox[{"InterpretationBox", "[", RowBox[{ RowBox[{"SubscriptBox", "[", RowBox[{"q", ",", "2"}], "]"}], ",", "q2"}], "]"}]}], ";"}]], "Input"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"{", RowBox[{"q1", ",", "q2"}], "}"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{ InterpretationBox[ SubscriptBox["q", "1"], q1], ",", InterpretationBox[ SubscriptBox["q", "2"], q2]}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"%", "//", "StandardForm"}]], "Input"], Cell[BoxData[ RowBox[{"{", RowBox[{"q1", ",", "q2"}], "}"}]], "Output"] }, Open ]], Cell[TextData[{ "By loading FeynCalc the setting of the default output format type is \ automatically set to TraditionalForm. You might want to reverse this after \ quitting FeynCalc by clicking on the ", StyleBox["Cell", "TextNormal", FontWeight->"Bold"], " menu, then go to the ", StyleBox["Default Output Format Type ", "TextNormal", FontWeight->"Bold"], "item and select ", StyleBox["StandardForm", FontWeight->"Bold"], ", or by evaluating ", StyleBox[ "SetOptions[$FrontEnd,\"CommonDefaultFormatTypes\"\[Rule]{\"Output\"\[Rule]\ StandardForm}]", "Input"], " ." }], "Text"], Cell["This loads FeynCalc:", "Text"], Cell[BoxData[ RowBox[{"<<", "HighEnergyPhysics`fc`"}]], "Input"], Cell[TextData[{ StyleBox["FeynCalc", FontWeight->"Bold"], " ", "3.1.14", " ", " ", " Evaluate ?FeynCalc for help or visit ", ButtonBox["www.feyncalc.com", ButtonData:>{ URL[ "http://www.feyncalc.com"], None}, ButtonStyle->"Hyperlink", ButtonNote->"http://www.feyncalc.com"] }], "Text", GeneratedCell->True, CellAutoOverwrite->True], Cell[TextData[{ "You can also put the last input line into your init.m file, or use the \ button FCStartButton.nb from ", ButtonBox["http://www.feyncalc.com/download/FCStartButton.nb", ButtonData:>{ URL[ "http://www.feyncalc.com/download/FCStartButton.nb"], None}, ButtonStyle->"Hyperlink"] }], "Text"] }, Open ]], Cell[CellGroupData[{ Cell["Example Calculations", "Section", PageBreakAbove->True, CellTags->"Example Calculations"], Cell["\<\ This section is still under development ... Please send suggestions \ to me ...\ \>", "Commentary"], Cell[TextData[{ "The following subsections are examples from various areas of research or \ education. See also ", ButtonBox["www.feyncalc.com/examples", ButtonData:>{ URL[ "http://www.feyncalc.com/examples"], None}, ButtonStyle->"Hyperlink", ButtonNote->"http://www.feyncalc.com/examples"], "." }], "Text"], Cell[CellGroupData[{ Cell["Standard Model", "Subsection"], Cell[CellGroupData[{ Cell[TextData[{ "Tree level ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"\[Gamma]", " ", "\[Gamma]"}], " ", "\[Rule]", " ", RowBox[{ SuperscriptBox["e", "+"], SuperscriptBox["e", "-"]}]}], TraditionalForm]]] }], "Subsubsection", CellTags->"Tree level"], Cell[TextData[{ "Tree level pair production ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"\[Gamma]", " ", "\[Gamma]"}], " ", "\[Rule]", " ", RowBox[{ SuperscriptBox["e", "+"], SuperscriptBox["e", "-"]}]}], TraditionalForm]]] }], "Text"], Cell["Define typesetting rules for p1, p2, k1, k2", "Text"], Cell["\<\ p1/: MakeBoxes[p1, fmt_] := InterpretationBox[SubscriptBox[p, 1], \ p1]\ \>", "Input"], Cell["\<\ k1/: MakeBoxes[k1, fmt_] := InterpretationBox[SubscriptBox[k, 1], \ k1]\ \>", "Input"], Cell["\<\ p2/: MakeBoxes[p2, fmt_] := InterpretationBox[SubscriptBox[p, 2], \ p2]\ \>", "Input"], Cell["\<\ k2/: MakeBoxes[k2, fmt_] := InterpretationBox[SubscriptBox[k, 2], \ k2]\ \>", "Input"], Cell["Define slashes of external momenta to save future typing.", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"{", RowBox[{"p1sl", ",", "p2sl", ",", "k1sl", ",", "k2sl"}], "}"}], "=", RowBox[{"DiracSlash", "/@", RowBox[{"{", RowBox[{"p1", ",", "p2", ",", "k1", ",", "k2"}], "}"}]}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{ RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], ",", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "2"], p2], "TraditionalForm"]}], ",", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"]}], ",", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"]}]}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell[TextData[{ "Kinematic definitions so that only ", Cell[BoxData[ FormBox[ RowBox[{ SubscriptBox["p", "1"], ".", SubscriptBox["k", "1"]}], TraditionalForm]]], ", ", Cell[BoxData[ FormBox[ RowBox[{ SubscriptBox["p", "1"], ".", SubscriptBox["k", "2"]}], TraditionalForm]]], " appear in final results. I.e., define ", Cell[BoxData[ FormBox[ RowBox[{ SubsuperscriptBox["p", "1", "2"], "=", RowBox[{ SubsuperscriptBox["p", "2", "2"], "=", " ", SuperscriptBox["m", "2"]}]}], TraditionalForm]]], " ", Cell[BoxData[ FormBox[ RowBox[{ SubsuperscriptBox["k", "1", "2"], "=", RowBox[{ SubsuperscriptBox["k", "2", "2"], "=", " ", "0"}]}], TraditionalForm]]], " ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{ SubscriptBox["k", "1"], "\[CenterDot]", SubscriptBox["k", "2"]}], " ", "=", " ", RowBox[{ RowBox[{ SubscriptBox["p", "1"], "\[CenterDot]", SubscriptBox["p", "2"]}], "+", SuperscriptBox["m", "2"]}]}], TraditionalForm]]], " ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{ SubscriptBox["k", "1"], "\[CenterDot]", SubscriptBox["p", "2"]}], " ", "=", " ", RowBox[{ SubscriptBox["k", "2"], "\[CenterDot]", SubscriptBox["p", "1"]}]}], TraditionalForm]]], " ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{ SubscriptBox["k", "2"], "\[CenterDot]", SubscriptBox["p", "2"]}], " ", "=", " ", RowBox[{ SubscriptBox["k", "1"], "\[CenterDot]", SubscriptBox["p", "1"]}]}], TraditionalForm]]], " ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{ SubscriptBox["p", "1"], "\[CenterDot]", SubscriptBox["p", "2"]}], "=", " ", RowBox[{ RowBox[{ SubscriptBox["k", "2"], "\[CenterDot]", SubscriptBox["p", "1"]}], "-", SuperscriptBox["m", "2"], "+", RowBox[{ SubscriptBox["k", "1"], "\[CenterDot]", SubscriptBox["p", "1"]}]}]}], TraditionalForm]]] }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"p1", ",", "p1"}], "]"}], "=", RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"p2", ",", "p2"}], "]"}], "=", SuperscriptBox["m", "2"]}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"k1", ",", "k1"}], "]"}], "=", RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"k2", ",", "k2"}], "]"}], "=", "0"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"k1", ",", "k2"}], "]"}], "=", RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"p1", ",", "p2"}], "]"}], "+", SuperscriptBox["m", "2"]}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"k1", ",", "p2"}], "]"}], "=", RowBox[{"ScalarProduct", "[", RowBox[{"k2", ",", "p1"}], "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"k2", ",", "p2"}], "]"}], "=", RowBox[{"ScalarProduct", "[", RowBox[{"k1", ",", "p1"}], "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"p1", ",", "p2"}], "]"}], "=", RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{"k2", ",", "p1"}], "]"}], "-", SuperscriptBox["m", "2"], "+", RowBox[{"ScalarProduct", "[", RowBox[{"k1", ",", "p1"}], "]"}]}]}], ";"}]], "Input"], Cell["Define the amplitudes.", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"f1", "=", RowBox[{ RowBox[{"DiracMatrix", "[", "\[Mu]", "]"}], ".", RowBox[{"(", RowBox[{"p1sl", "-", "k1sl", "+", "m"}], ")"}], ".", RowBox[{"DiracMatrix", "[", "\[Nu]", "]"}]}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{ SuperscriptBox["\[Gamma]", FormBox[ FormBox["\[Mu]", "TraditionalForm"], "TraditionalForm"]], ".", RowBox[{"(", RowBox[{"m", "-", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"]}], "+", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}], ")"}], ".", SuperscriptBox["\[Gamma]", FormBox[ FormBox["\[Nu]", "TraditionalForm"], "TraditionalForm"]]}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"f2", "=", RowBox[{ RowBox[{"DiracMatrix", "[", "\[Nu]", "]"}], ".", RowBox[{"(", RowBox[{"p1sl", "-", "k2sl", "+", "m"}], ")"}], ".", RowBox[{"DiracMatrix", "[", "\[Mu]", "]"}]}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{ SuperscriptBox["\[Gamma]", FormBox[ FormBox["\[Nu]", "TraditionalForm"], "TraditionalForm"]], ".", RowBox[{"(", RowBox[{"m", "-", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"]}], "+", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}], ")"}], ".", SuperscriptBox["\[Gamma]", FormBox[ FormBox["\[Mu]", "TraditionalForm"], "TraditionalForm"]]}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"f3", "=", RowBox[{ RowBox[{"DiracMatrix", "[", "\[Nu]", "]"}], ".", RowBox[{"(", RowBox[{"p1sl", "-", "k1sl", "+", "m"}], ")"}], ".", RowBox[{"DiracMatrix", "[", "\[Mu]", "]"}]}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{ SuperscriptBox["\[Gamma]", FormBox[ FormBox["\[Nu]", "TraditionalForm"], "TraditionalForm"]], ".", RowBox[{"(", RowBox[{"m", "-", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"]}], "+", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}], ")"}], ".", SuperscriptBox["\[Gamma]", FormBox[ FormBox["\[Mu]", "TraditionalForm"], "TraditionalForm"]]}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"f4", "=", RowBox[{ RowBox[{"DiracMatrix", "[", "\[Mu]", "]"}], ".", RowBox[{"(", RowBox[{"p1sl", "-", "k2sl", "+", "m"}], ")"}], ".", RowBox[{"DiracMatrix", "[", "\[Nu]", "]"}]}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{ SuperscriptBox["\[Gamma]", FormBox[ FormBox["\[Mu]", "TraditionalForm"], "TraditionalForm"]], ".", RowBox[{"(", RowBox[{"m", "-", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"]}], "+", RowBox[{ FormBox["\<\"\[Gamma]\"\>", "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}], ")"}], ".", SuperscriptBox["\[Gamma]", FormBox[ FormBox["\[Nu]", "TraditionalForm"], "TraditionalForm"]]}], TraditionalForm]], "Output"] }, Open ]], Cell[" Calculation of the four traces.", "Text"], Cell[CellGroupData[{ Cell["tr1 = Tr[(p1sl + m) . f1 . (p2sl - m) . f3]", "Input"], Cell[BoxData[ FormBox[ RowBox[{"4", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"-", "8"}], " ", SuperscriptBox["m", "4"]}], "+", RowBox[{"8", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}], "+", RowBox[{"8", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}]}], ")"}]}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell["tr2 = Tr[(p1sl + m) . f1 . (p2sl - m) . f4]", "Input"], Cell[BoxData[ FormBox[ RowBox[{"4", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"-", "8"}], " ", SuperscriptBox["m", "4"]}], "+", RowBox[{"4", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}], "+", RowBox[{"4", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}]}], ")"}]}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell["tr3 = Tr[(p1sl + m) . f2 . (p2sl - m) . f3]", "Input"], Cell[BoxData[ FormBox[ RowBox[{"4", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"-", "8"}], " ", SuperscriptBox["m", "4"]}], "+", RowBox[{"4", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}], "+", RowBox[{"4", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}]}], ")"}]}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell["tr4 = Tr[(p1sl + m) . f2 . (p2sl - m) . f4]", "Input"], Cell[BoxData[ FormBox[ RowBox[{"4", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"-", "8"}], " ", SuperscriptBox["m", "4"]}], "+", RowBox[{"8", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}], "+", RowBox[{"8", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}]}], ")"}]}], TraditionalForm]], "Output"] }, Open ]], Cell["Divide by the denominators and add everything up.", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"matrixsq", "=", RowBox[{ FractionBox["tr1", SuperscriptBox[ RowBox[{"ScalarProduct", "[", RowBox[{ RowBox[{"2", " ", "p1"}], ",", "k1"}], "]"}], "2"]], "+", FractionBox["tr4", SuperscriptBox[ RowBox[{"ScalarProduct", "[", RowBox[{ RowBox[{"2", " ", "p1"}], ",", "k2"}], "]"}], "2"]], "+", FractionBox[ RowBox[{"tr2", "+", "tr3"}], RowBox[{ RowBox[{"ScalarProduct", "[", RowBox[{ RowBox[{"2", " ", "p1"}], ",", "k1"}], "]"}], " ", RowBox[{"ScalarProduct", "[", RowBox[{ RowBox[{"2", " ", "p1"}], ",", "k2"}], "]"}]}]]}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{ FractionBox[ RowBox[{"2", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"-", "8"}], " ", SuperscriptBox["m", "4"]}], "+", RowBox[{"4", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}], "+", RowBox[{"4", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}]}], ")"}]}], RowBox[{ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}]], "+", FractionBox[ RowBox[{ RowBox[{ RowBox[{"-", "8"}], " ", SuperscriptBox["m", "4"]}], "+", RowBox[{"8", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}], "+", RowBox[{"8", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}]}], SuperscriptBox[ RowBox[{"(", FormBox[ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], "TraditionalForm"], ")"}], "2"]], "+", FractionBox[ RowBox[{ RowBox[{ RowBox[{"-", "8"}], " ", SuperscriptBox["m", "4"]}], "+", RowBox[{"8", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", SuperscriptBox["m", "2"]}], "+", RowBox[{"8", " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}]}], SuperscriptBox[ RowBox[{"(", FormBox[ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], "TraditionalForm"], ")"}], "2"]]}], TraditionalForm]], "Output"] }, Open ]], Cell["Collect with respect to powers of m.", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"r", "=", RowBox[{"Collect2", "[", RowBox[{"matrixsq", ",", "m"}], "]"}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"-", FractionBox[ RowBox[{"8", " ", SuperscriptBox[ RowBox[{"(", RowBox[{ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], "+", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}], ")"}], "2"], " ", SuperscriptBox["m", "4"]}], RowBox[{ SuperscriptBox[ RowBox[{"(", FormBox[ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], "TraditionalForm"], ")"}], "2"], " ", SuperscriptBox[ RowBox[{"(", FormBox[ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], "TraditionalForm"], ")"}], "2"]}]]}], "+", FractionBox[ RowBox[{"16", " ", RowBox[{"(", RowBox[{ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], "+", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}], ")"}], " ", SuperscriptBox["m", "2"]}], RowBox[{ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}]], "+", FractionBox[ RowBox[{"8", " ", RowBox[{"(", RowBox[{ SuperscriptBox[ RowBox[{"(", FormBox[ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], "TraditionalForm"], ")"}], "2"], "+", SuperscriptBox[ RowBox[{"(", FormBox[ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], "TraditionalForm"], ")"}], "2"]}], ")"}]}], RowBox[{ RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "1"], k1], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}], " ", RowBox[{ FormBox[ InterpretationBox[ SubscriptBox["k", "2"], k2], "TraditionalForm"], "\[NoBreak]", "\[CenterDot]", "\[NoBreak]", FormBox[ InterpretationBox[ SubscriptBox["p", "1"], p1], "TraditionalForm"]}]}]]}], TraditionalForm]], "Output"] }, Open ]], Cell["\<\ This is a possibility to check the symmetry in k1 and k2 \ explicitly.\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"(", RowBox[{"r", " ", "-", " ", RowBox[{"(", RowBox[{"r", " ", "/.", " ", RowBox[{"{", " ", RowBox[{ RowBox[{"k1", "\[RuleDelayed]", "k2"}], ",", " ", RowBox[{"k2", "\[RuleDelayed]", "k1"}]}], "}"}]}], ")"}]}], ")"}]], "Input"], Cell[BoxData[ FormBox["0", TraditionalForm]], "Output"] }, Open ]], Cell["\<\ Remove the definitions for the scalar products and for the \ typesetting definitions.\ \>", "Text"], Cell[BoxData[ RowBox[{"ClearScalarProducts", ";", " ", RowBox[{"Clear", "[", RowBox[{"p1", ",", "p2", ",", "k1", ",", "k2", ",", "r"}], "]"}], ";"}]], "Input"], Cell[TextData[{ "See also: ", ButtonBox["ClearScalarProducts", ButtonData:>"ClearScalarProducts", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Collect2", ButtonData:>"Collect2", ButtonStyle->"Hyperlink"], ", ", ButtonBox["DiracMatrix", ButtonData:>"DiracMatrix", ButtonStyle->"Hyperlink"], ", ", ButtonBox["DiracSlash", ButtonData:>"DiracSlash", ButtonStyle->"Hyperlink"], ", ", ButtonBox["ScalarProduct", ButtonData:>"ScalarProduct", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Tr", ButtonData:>"Tr", ButtonStyle->"Hyperlink"], "." }], "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Miscellaneous calculations", "Subsection"], Cell[CellGroupData[{ Cell["A moment integral", "Subsubsection", CellTags->"A moment integral"], Cell[TextData[{ "Moments of ", Cell[BoxData[ FormBox[ SubsuperscriptBox[ StyleBox[ OverscriptBox[ StyleBox["A", FontSlant->"Plain"], "^"], FontSlant->"Plain"], "qq", RowBox[{"NS", ",", "PHYS"}]], TraditionalForm]]], " from ", ButtonBox["hep-ph/9801224", ButtonData:>{ URL[ "http://xxx.lanl.gov/abs/hep-ph/9801224"], None}, ButtonStyle->"Hyperlink"] }], "Text"], Cell["\<\ This is an example of integration and of translation from FORM \ syntax.\ \>", "Text"], Cell[TextData[{ "Due to current conservation the first moment of ", Cell[BoxData[ FormBox[ SubsuperscriptBox[ StyleBox[ OverscriptBox[ StyleBox["A", FontSlant->"Plain"], "^"], FontSlant->"Plain"], "qq", RowBox[{"NS", ",", "PHYS"}]], TraditionalForm]]], "should vanish." }], "Text"], Cell["Translate FORM output (jqq12.log) to FeynCalc", "Text"], Cell[TextData[{ "The FORM file ", "jqq12.log ", "was generated by one of the authors of ", ButtonBox["hep-ph/9801224", ButtonData:>{ URL[ "http://xxx.lanl.gov/abs/hep-ph/9801224"], None}, ButtonStyle->"Hyperlink"], ". " }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"e", " ", "=", " ", "Epsilon"}]], "Input"], Cell[BoxData[ FormBox[ TagBox["\[CurlyEpsilon]", TraditionalForm], TraditionalForm]], "Output"] }, Open ]], Cell["\<\ Special FORM convenctions like ln(1-x) can be translated \ automatically by FORM2FeynCalc, but they have to be listed once in the option \ Replace of FORM2FeynCalc :\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{"SetOptions", "[", RowBox[{"FORM2FeynCalc", ",", RowBox[{"Replace", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{ "\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{ "\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{ "\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\<[1+x]^-1\>\"", "\[Rule]", "\"\<(1+x)^-1\>\""}], ",", RowBox[{ "\"\<[(1-x)+]^-1\>\"", "\[Rule]", "\"\<(1-x)^-1\>\""}], ",", RowBox[{"\"\<[1-x]^-1\>\"", "\[Rule]", "\"\<(1-x)^-1\>\""}], ",", RowBox[{ "\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}], ",", RowBox[{"\"\\"", "\[Rule]", "\"\\""}]}], "}"}]}], ",", RowBox[{"Dot", "\[Rule]", "Times"}], ",", RowBox[{"HoldForm", "\[Rule]", "False"}]}], "]"}], ";"}]], "Input"], Cell["\<\ Copy the FORM output from jqq12.log into the next cell and put \ FORM2CFeynCalc[\" \"]//ReleaseHold around it.\ \>", "Text"], Cell["\<\ aqq=FORM2FeynCalc[\" + [(-1)^m]*e^-1*O1*Ca*Cf * ( - 8 + 4*x*Z2 + 8*x + 8*Z2*[1+x]^-1 - 4*Z2 - 4*ln(x) - 4*ln(x)*x - 8*ln(x)*ln(1 + x) + 8*ln(x)*ln(1 + x)*x + 16*ln(x)*ln(1 + x)*[1+x]^-1 + 2*ln(x)*ln(x) - 2*ln(x)*ln(x)*x - 4*ln(x)*ln(x)*[1+x]^-1 - 8*Li2( - x) + 8*Li2( - x)*x + 16*Li2( - x)*[1+x]^-1 ) + [(-1)^m]*e^-1*O1*Cf^2 * ( + 16 - 8*x*Z2 - 16*x - 16*Z2*[1+x]^-1 + 8*Z2 + 8*ln(x) + 8*ln(x)*x + 16*ln(x)*ln(1 + x) - 16*ln(x)*ln(1 + x)*x - 32*ln(x)*ln(1 + x)*[1+x]^-1 - 4*ln(x)*ln(x) + 4*ln(x)*ln(x)*x + 8*ln(x)*ln(x)*[1+x]^-1 + 16*Li2( - x) - 16*Li2( - x)*x - 32*Li2( - x)*[1+x]^-1 ) + [(-1)^m]*O1*Ca*Cf * ( - 41/3 - 6*x*Z2 - 2*x*Z3 + 41/3*x + 16/3*x^2*Z2 + 6*Z2 + 4*Z3*[1+x]^-1 - 6*Z3 - 8*ln(1 - x) + 8*ln(1 - x)*x - 8*ln(1 - x)*Li2(1 - x) + 8*ln(1 - x)*Li2(1 - x)*x + 16*ln(1 - x)*Li2(1 - x)*[1+x]^-1 + 8*ln(1 + x)*x*Z2 + 8*ln(1 + x)*Z2*[1+x]^-1 - 8*ln(1 + x)*Li2(1 - x) + 8*ln(1 + x)*Li2(1 - x)*x + 16*ln(1 + x)*Li2(1 - x)*[1+x]^-1 + 16*ln(1 + x)*Li2( - x)*x + 16*ln(1 + x)*Li2( - x)*[1+x]^-1 - 37/3*ln(x) - 25/3*ln(x)*x - 4*ln(x)*ln(1 - x) - 4*ln(x)*ln(1 - x)*x - 4*ln(x)*ln(1 - x)*ln(1 - x) + 4*ln(x)*ln(1 - x)*ln(1 - x)*x + 8*ln(x)*ln(1 - x)*ln(1 - x)*[1+x]^-1 - 8*ln(x)*ln(1 - x)*ln(1 + x) + 8*ln(x)*ln(1 - x)*ln(1 + x)*x + 16*ln(x)*ln(1 - x)*ln(1 + x)*[1+x]^-1 + 4/3*ln(x)*ln(1 + x)*x^-1 + 4*ln(x)*ln(1 + x)*x + 16/3*ln(x)*ln(1 + x)*x^2 + 8*ln(x)*ln(1 + x)*ln(1 + x)*x + 8*ln(x)*ln(1 + x)*ln(1 + x)*[1+x]^-1 - 6*ln(x)*ln(x) - 8/3*ln(x)*ln(x)*x^2 + 2*ln(x)*ln(x)*ln(1 - x) - 2*ln(x)*ln(x)*ln(1 - x)*x - 4*ln(x)*ln(x)*ln(1 - x)*[1+x]^-1 - 6*ln(x)*ln(x)*ln(1 + x) + 2*ln(x)*ln(x)*ln(1 + x)*x + 8*ln(x)*ln(x)*ln(1 + x)*[1+x]^-1 + ln(x)*ln(x)*ln(x) - ln(x)*ln(x)*ln(x)*x - 2*ln(x)*ln(x)*ln(x)*[1+x]^-1 + 4*ln(x)*Li2(1 - x) - 4*ln(x)*Li2(1 - x)*x - 8*ln(x)*Li2(1 - x)*[1+x]^-1 - 4*ln(x)*Li2( - x) + 4*ln(x)*Li2( - x)*x + 8*ln(x)*Li2( - x)*[1+x]^-1 - 4*Li2(1 - x) - 4*Li2(1 - x)*x + 4/3*Li2( - x)*x^-1 + 4*Li2( - x)*x + 16/3*Li2( - x)*x^2 + 8*Li3(1 - x) - 8*Li3(1 - x)*x - 16*Li3(1 - x)*[1+x]^-1 - 4*Li3( - x) - 4*Li3( - x)*x + 4*S12(1 - x) - 4*S12(1 - x)*x - 8*S12(1 - x)*[1+x]^-1 - 8*S12( - x) + 24*S12( - x)*x + 32*S12( - x)*[1+x]^-1 + 4*S12(x^2) - 4*S12(x^2)*x - 8*S12(x^2)*[1+x]^-1 ) + [(-1)^m]*O1*Cf^2 * ( + 82/3 + 12*x*Z2 + 4*x*Z3 - 82/3*x - 32/3*x^2*Z2 - 12*Z2 - 8*Z3*[1+x]^-1 + 12*Z3 + 16*ln(1 - x) - 16*ln(1 - x)*x + 16*ln(1 - x)*Li2(1 - x) - 16*ln(1 - x)*Li2(1 - x)*x - 32*ln(1 - x)*Li2(1 - x)*[1+x]^-1 - 16*ln(1 + x)*x*Z2 - 16*ln(1 + x)*Z2*[1+x]^-1 + 16*ln(1 + x)*Li2(1 - x) - 16*ln(1 + x)*Li2(1 - x)*x - 32*ln(1 + x)*Li2(1 - x)*[1+x]^-1 - 32*ln(1 + x)*Li2( - x)*x - 32*ln(1 + x)*Li2( - x)*[1+x]^-1 + 74/3*ln(x) + 50/3*ln(x)*x + 8*ln(x)*ln(1 - x) + 8*ln(x)*ln(1 - x)*x + 8*ln(x)*ln(1 - x)*ln(1 - x) - 8*ln(x)*ln(1 - x)*ln(1 - x)*x - 16*ln(x)*ln(1 - x)*ln(1 - x)*[1+x]^-1 + 16*ln(x)*ln(1 - x)*ln(1 + x) - 16*ln(x)*ln(1 - x)*ln(1 + x)*x - 32*ln(x)*ln(1 - x)*ln(1 + x)*[1+x]^-1 - 8/3*ln(x)*ln(1 + x)*x^-1 - 8*ln(x)*ln(1 + x)*x - 32/3*ln(x)*ln(1 + x)*x^2 - 16*ln(x)*ln(1 + x)*ln(1 + x)*x - 16*ln(x)*ln(1 + x)*ln(1 + x)*[1+x]^-1 + 12*ln(x)*ln(x) + 16/3*ln(x)*ln(x)*x^2 - 4*ln(x)*ln(x)*ln(1 - x) + 4*ln(x)*ln(x)*ln(1 - x)*x + 8*ln(x)*ln(x)*ln(1 - x)*[1+x]^-1 + 12*ln(x)*ln(x)*ln(1 + x) - 4*ln(x)*ln(x)*ln(1 + x)*x - 16*ln(x)*ln(x)*ln(1 + x)*[1+x]^-1 - 2*ln(x)*ln(x)*ln(x) + 2*ln(x)*ln(x)*ln(x)*x + 4*ln(x)*ln(x)*ln(x)*[1+x]^-1 - 8*ln(x)*Li2(1 - x) + 8*ln(x)*Li2(1 - x)*x + 16*ln(x)*Li2(1 - x)*[1+x]^-1 + 8*ln(x)*Li2( - x) - 8*ln(x)*Li2( - x)*x - 16*ln(x)*Li2( - x)*[1+x]^-1 + 8*Li2(1 - x) + 8*Li2(1 - x)*x - 8/3*Li2( - x)*x^-1 - 8*Li2( - x)*x - 32/3*Li2( - x)*x^2 - 16*Li3(1 - x) + 16*Li3(1 - x)*x + 32*Li3(1 - x)*[1+x]^-1 + 8*Li3( - x) + 8*Li3( - x)*x - 8*S12(1 - x) + 8*S12(1 - x)*x + 16*S12(1 - x)*[1+x]^-1 + 16*S12( - x) - 48*S12( - x)*x - 64*S12( - x)*[1+x]^-1 - 8*S12(x^2) + 8*S12(x^2)*x + 16*S12(x^2)*[1+x]^-1 ) + [(-1)^m]*O2*Ca*Cf * ( + 8/3 - 8/3*x - 16/3*x^2*Z2 - 8/3*ln(x) + 16/3*ln(x)*x + 8/3*ln(x)*ln(1 + x)*x^-1 - 8*ln(x)*ln(1 + x)*x - 16/3*ln(x)*ln(1 + x)*x^2 + 8/3*ln(x)*ln(x)*x^2 + 8/3*Li2( - x)*x^-1 - 8*Li2( - x)*x - 16/3*Li2( - x)*x^2 ) + [(-1)^m]*O2*Cf^2 * ( - 16/3 + 16/3*x + 32/3*x^2*Z2 + 16/3*ln(x) - 32/3*ln(x)*x - 16/3*ln(x)*ln(1 + x)*x^-1 + 16*ln(x)*ln(1 + x)*x + 32/3*ln(x)*ln(1 + x)*x^2 - 16/3*ln(x)*ln(x)*x^2 - 16/3*Li2( - x)*x^-1 + 16*Li2( - x)*x + 32/3*Li2( - x)*x^2 ) + e^-2*delta*O1*Ca*Cf * ( - 22 ) + e^-2*delta*O1*Cf*Tf * ( + 8 ) + e^-2*delta*O1*Cf^2 * ( - 18 + 32*Z2 ) + e^-2*O1*Ca*Cf * ( + 44/3 + 44/3*x - 88/3*[(1-x)+]^-1 ) + e^-2*O1*Cf*Tf * ( - 16/3 - 16/3*x + 32/3*[(1-x)+]^-1 ) + e^-2*O1*Cf^2 * ( + 40 + 8*x - 48*[(1-x)+]^-1 + 32*ln(1 - x) + 32*ln(1 - x)*x - 64*ln(1 - x)*[(1-x)+]^-1 - 24*ln(x) - 24*ln(x)*x + 32*ln(x)*[1-x]^-1 ) + e^-1*delta*O1*Ca*Cf * ( + 325/6 - 44/3*Z2 - 12*Z3 ) + e^-1*delta*O1*Cf*Tf * ( - 58/3 + 16/3*Z2 ) + e^-1*delta*O1*Cf^2 * ( + 87/2 - 36*Z2 - 8*Z3 ) + e^-1*O1*Ca*Cf * ( - 158/9 + 4*x*Z2 + 22/9*x - 8*Z2*[(1-x)+]^-1 + 4*Z2 + 238/9*[(1-x)+]^-1 + 44/3*ln(1 - x) + 44/3*ln(1 - x)*x - 88/3*ln(1 - x)*[(1-x)+]^-1 + 34/3*ln(x) + 34/3*ln(x)*x - 44/3*ln(x)*[1-x]^-1 - 2*ln(x)*ln(x) - 2*ln(x)*ln(x)*x + 4*ln(x)*ln(x)*[1-x]^-1 ) + e^-1*O1*Cf*Tf * ( + 88/9 - 56/9*x - 56/9*[(1-x)+]^-1 - 16/3*ln(1 - x) - 16/3*ln(1 - x)*x + 32/3*ln(1 - x)*[(1-x)+]^-1 - 8/3*ln(x) - 8/3*ln(x)*x + 16/3*ln(x)*[1-x]^-1 ) + e^-1*O1*Cf^2 * ( - 40 - 4*x + 56*[(1-x)+]^-1 - 4*ln(1 - x) + 44*ln(1 - x)*x - 24*ln(1 - x)*[(1-x)+]^-1 + 24*ln(1 - x)*ln(1 - x) + 24*ln(1 - x)*ln(1 - x)*x - 48*ln(1 - x)*ln(1 - x)*[(1-x)+]^-1 + 36*ln(x) - 20*ln(x)*x - 36*ln(x)*[1-x]^-1 - 16*ln(x)*ln(1 - x)*[1-x]^-1 - 14*ln(x)*ln(x) - 14*ln(x)*ln(x)*x + 16*ln(x)*ln(x)*[1-x]^-1 - 8*Li2(1 - x) - 8*Li2(1 - x)*x ) + e^-1*O2*Ca*Cf * ( + 20/3 - 88/3*x ) + e^-1*O2*Cf*Tf * ( - 16/3 + 32/3*x ) + e^-1*O2*Cf^2 * ( - 16 - 8*x - 32*ln(1 - x)*x + 16*ln(x)*x ) + delta*O1*Ca*Cf * ( - 7081/72 + 301/18*Z2 + 49/5*Z2^2 + 28*Z3 ) + delta*O1*Cf*Tf * ( + 569/18 - 46/9*Z2 - 8*Z3 ) + delta*O1*Cf^2 * ( - 541/8 + 97/2*Z2 - 74/5*Z2^2 + 54*Z3 ) + O1*Ca*Cf * ( + 941/27 + 17/3*x*Z2 - 8*x*Z3 - 580/27*x - 16/3*x^2*Z2 - 24*x^2*Z3 - 28/3*Z2*[(1-x)+]^-1 - 1/3*Z2 + 12*Z3*[1-x]^-1 + 22*Z3*[(1-x)+]^-1 - 20*Z3 - 670/27*[(1-x)+]^-1 - 122/9*ln(1 - x) + 6*ln(1 - x)*x*Z2 - 32/9*ln(1 - x)*x + 8*ln(1 - x)*x^2*Z2 - 10*ln(1 - x)*Z2*[(1-x)+]^-1 + 2*ln(1 - x)*Z2 + 238/9*ln(1 - x)*[(1-x)+]^-1 + 22/3*ln(1 - x)*ln(1 - x) + 22/3*ln(1 - x)*ln(1 - x)*x - 44/3*ln(1 - x)*ln(1 - x)*[(1-x)+]^-1 + 2*ln(1 - x)*Li2(1 - x) - 2*ln(1 - x)*Li2(1 - x)*x + 8*ln(1 - x)*Li2(1 - x)*x^2 - 2*ln(1 - x)*Li2(1 - x)*[1-x]^-1 + 14/9*ln(x) - 2*ln(x)*x*Z2 + 176/9*ln(x)*x - 8*ln(x)*x^2*Z2 + 10*ln(x)*Z2*[1-x]^-1 - 6*ln(x)*Z2 + 101/9*ln(x)*[1-x]^-1 + 28/3*ln(x)*ln(1 - x) + 10/3*ln(x)*ln(1 - x)*x - 38/3*ln(x)*ln(1 - x)*[1-x]^-1 - 12*ln(x)*ln(1 + x) - 4/3*ln(x)*ln(1 + x)*x^-1 - 16*ln(x)*ln(1 + x)*x - 16/3*ln(x)*ln(1 + x)*x^2 + 47/6*ln(x)*ln(x) + 47/6*ln(x)*ln(x)*x + 8/3*ln(x)*ln(x)*x^2 - 11/3*ln(x)*ln(x)*[1-x]^-1 + ln(x)*ln(x)*ln(1 - x) - ln(x)*ln(x)*ln(1 - x)*x + 4*ln(x)*ln(x)*ln(1 - x)*x^2 - ln(x)*ln(x)*ln(1 - x)*[1-x]^-1 - ln(x)*ln(x)*ln(x) - ln(x)*ln(x)*ln(x)*x + 2*ln(x)*ln(x)*ln(x)*[1-x]^-1 + 8*ln(x)*Li2(1 - x) + 16*ln(x)*Li2(1 - x)*x^2 - 12*ln(x)*Li2(1 - x)*[1-x]^-1 + 8*ln(x)*Li2( - x) - 8*ln(x)*Li2( - x)*[1-x]^-1 - 12*Li2(1 - x)*x + 4*Li2(1 - x)*[1-x]^-1 - 12*Li2( - x) - 4/3*Li2( - x)*x^-1 - 16*Li2( - x)*x - 16/3*Li2( - x)*x^2 - 6*Li3(1 - x) + 6*Li3(1 - x)*x - 24*Li3(1 - x)*x^2 + 6*Li3(1 - x)*[1-x]^-1 - 16*Li3( - x) + 16*Li3( - x)*[1-x]^-1 + 14*S12(1 - x) - 6*S12(1 - x)*x + 24*S12(1 - x)*x^2 - 14*S12(1 - x)*[1-x]^-1 ) + O1*Cf*Tf * ( - 88/27 - 4/3*x*Z2 + 20/27*x + 8/3*Z2*[(1-x)+]^-1 - 4/3*Z2 + 128/27*[(1-x)+]^-1 + 88/9*ln(1 - x) - 56/9*ln(1 - x)*x - 56/9*ln(1 - x)*[(1-x)+]^-1 - 8/3*ln(1 - x)*ln(1 - x) - 8/3*ln(1 - x)*ln(1 - x)*x + 16/3*ln(1 - x)*ln(1 - x)*[(1-x)+]^-1 + 44/9*ln(x) - 28/9*ln(x)*x - 28/9*ln(x)*[1-x]^-1 - 8/3*ln(x)*ln(1 - x) - 8/3*ln(x)*ln(1 - x)*x + 16/3*ln(x)*ln(1 - x)*[1-x]^-1 - 2/3*ln(x)*ln(x) - 2/3*ln(x)*ln(x)*x + 4/3*ln(x)*ln(x)*[1-x]^-1 ) + O1*Cf^2 * ( + 188/3 - 4*x*Z2 - 24*x*Z3 + 4/3*x + 32/3*x^2*Z2 + 48*x^2*Z3 - 4*Z2*[(1-x)+]^-1 + 20*Z2 - 24*Z3*[1-x]^-1 + 24*Z3 - 56*[(1-x)+]^-1 - 38*ln(1 - x) + 8*ln(1 - x)*x*Z2 + 38*ln(1 - x)*x - 16*ln(1 - x)*x^2*Z2 - 8*ln(1 - x)*Z2*[(1-x)+]^-1 + 8*ln(1 - x)*Z2 + 28*ln(1 - x)*[(1-x)+]^-1 - 13*ln(1 - x)*ln(1 - x) + 31*ln(1 - x)*ln(1 - x)*x - 6*ln(1 - x)*ln(1 - x)*[(1-x)+]^-1 + 28/3*ln(1 - x)*ln(1 - x)*ln(1 - x) + 28/3*ln(1 - x)*ln(1 - x)*ln(1 - x)*x - 56/3*ln(1 - x)*ln(1 - x)*ln(1 - x)*[(1-x)+]^-1 - 12*ln(1 - x)*Li2(1 - x) + 4*ln(1 - x)*Li2(1 - x)*x - 16*ln(1 - x)*Li2(1 - x)*x^2 - 68/3*ln(x) - 14*ln(x)*x*Z2 - 68/3*ln(x)*x + 16*ln(x)*x^2*Z2 + 2*ln(x)*Z2 + 44*ln(x)*[1-x]^-1 - 6*ln(x)*ln(1 - x) + 34*ln(x)*ln(1 - x)*x - 20*ln(x)*ln(1 - x)*[1-x]^-1 + 6*ln(x)*ln(1 - x)*ln(1 - x) + 6*ln(x)*ln(1 - x)*ln(1 - x)*x - 20*ln(x)*ln(1 - x)*ln(1 - x)*[1-x]^-1 + 24*ln(x)*ln(1 + x) + 8/3*ln(x)*ln(1 + x)*x^-1 + 32*ln(x)*ln(1 + x)*x + 32/3*ln(x)*ln(1 + x)*x^2 + 11*ln(x)*ln(x) - 23*ln(x)*ln(x)*x - 16/3*ln(x)*ln(x)*x^2 - 15*ln(x)*ln(x)*[1-x]^-1 - 6*ln(x)*ln(x)*ln(1 - x) + 2*ln(x)*ln(x)*ln(1 - x)*x - 8*ln(x)*ln(x)*ln(1 - x)*x^2 - 4*ln(x)*ln(x)*ln(1 - x)*[1-x]^-1 - 5*ln(x)*ln(x)*ln(x) - 5*ln(x)*ln(x)*ln(x)*x + 16/3*ln(x)*ln(x)*ln(x)*[1-x]^-1 - 8*ln(x)*Li2(1 - x) + 24*ln(x)*Li2(1 - x)*x - 32*ln(x)*Li2(1 - x)*x^2 - 16*ln(x)*Li2(1 - x)*[1-x]^-1 - 16*ln(x)*Li2( - x) + 16*ln(x)*Li2( - x)*[1-x]^-1 - 24*Li2(1 - x) + 48*Li2(1 - x)*x - 4*Li2(1 - x)*[1-x]^-1 + 24*Li2( - x) + 8/3*Li2( - x)*x^-1 + 32*Li2( - x)*x + 32/3*Li2( - x)*x^2 + 20*Li3(1 - x) - 28*Li3(1 - x)*x + 48*Li3(1 - x)*x^2 + 32*Li3( - x) - 32*Li3( - x)*[1-x]^-1 - 8*S12(1 - x) + 56*S12(1 - x)*x - 48*S12(1 - x)*x^2 - 32*S12(1 - x)*[1-x]^-1 ) + O2*Ca*Cf * ( - 26/9 - 8*x*Z2 - 24*x*Z3 + 232/9*x + 16/3*x^2*Z2 + 24*x^2*Z3 + 4*Z2 - 16/3*ln(1 - x) + 8*ln(1 - x)*x*Z2 - 64/3*ln(1 - x)*x - 8*ln(1 - x)*x^2*Z2 + 8*ln(1 - x)*Li2(1 - x)*x - 8*ln(1 - x)*Li2(1 - x)*x^2 + 6*ln(x) - 8*ln(x)*x*Z2 - 28*ln(x)*x + 8*ln(x)*x^2*Z2 - 4*ln(x)*ln(1 - x) + 8*ln(x)*ln(1 - x)*x - 8/3*ln(x)*ln(1 + x)*x^-1 + 8*ln(x)*ln(1 + x)*x + 16/3*ln(x)*ln(1 + x)*x^2 - 8/3*ln(x)*ln(x)*x^2 + 4*ln(x)*ln(x)*ln(1 - x)*x - 4*ln(x)*ln(x)*ln(1 - x)*x^2 + 16*ln(x)*Li2(1 - x)*x - 16*ln(x)*Li2(1 - x)*x^2 - 8*Li2(1 - x) + 16*Li2(1 - x)*x - 8/3*Li2( - x)*x^-1 + 8*Li2( - x)*x + 16/3*Li2( - x)*x^2 - 24*Li3(1 - x)*x + 24*Li3(1 - x)*x^2 + 24*S12(1 - x)*x - 24*S12(1 - x)*x^2 ) + O2*Cf*Tf * ( - 8/9 - 32/9*x - 16/3*ln(1 - x) + 32/3*ln(1 - x)*x - 8/3*ln(x) + 16/3*ln(x)*x ) + O2*Cf^2 * ( - 32/3 + 16*x*Z2 + 48*x*Z3 - 16/3*x - 32/3*x^2*Z2 - 48*x^2*Z3 - 8*Z2 - 16*ln(1 - x)*x*Z2 - 44*ln(1 - x)*x + 16*ln(1 - x)*x^2*Z2 - 24*ln(1 - x)*ln(1 - x)*x - 16*ln(1 - x)*Li2(1 - x)*x + 16*ln(1 - x)*Li2(1 - x)*x^2 - 40/3*ln(x) + 16*ln(x)*x*Z2 + 68/3*ln(x)*x - 16*ln(x)*x^2*Z2 + 8*ln(x)*ln(1 - x) - 32*ln(x)*ln(1 - x)*x + 16/3*ln(x)*ln(1 + x)*x^-1 - 16*ln(x)*ln(1 + x)*x - 32/3*ln(x)*ln(1 + x)*x^2 + 12*ln(x)*ln(x)*x + 16/3*ln(x)*ln(x)*x^2 - 8*ln(x)*ln(x)*ln(1 - x)*x + 8*ln(x)*ln(x)*ln(1 - x)*x^2 - 32*ln(x)*Li2(1 - x)*x + 32*ln(x)*Li2(1 - x)*x^2 + 16*Li2(1 - x) - 48*Li2(1 - x)*x + 16/3*Li2( - x)*x^-1 - 16*Li2( - x)*x - 32/3*Li2( - x)*x^2 + 48*Li3(1 - x)*x - 48*Li3(1 - x)*x^2 - 48*S12(1 - x)*x + 48*S12(1 - x)*x^2 ) \"]//ReleaseHold;\ \>", "Input"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Short", "[", "aqq", "]"}]], "Input"], Cell[BoxData[ FormBox[ TagBox[ RowBox[{ FractionBox[ RowBox[{"O1", " ", RowBox[{"(", RowBox[{ RowBox[{"32", " ", RowBox[{"\[Zeta]", "(", "2", ")"}]}], "-", "18"}], ")"}], " ", RowBox[{"\[Delta]", "(", FormBox[ RowBox[{"1", "-", "x"}], "TraditionalForm"], ")"}], " ", SubsuperscriptBox["C", "F", "2"]}], SuperscriptBox[ TagBox["\[CurlyEpsilon]", TraditionalForm], "2"]], "+", RowBox[{"\[LeftSkeleton]", "29", "\[RightSkeleton]"}], "+", RowBox[{ SuperscriptBox[ RowBox[{"(", RowBox[{"-", "1"}], ")"}], "m"], " ", SubscriptBox["C", "A"], " ", "O1", " ", RowBox[{"(", RowBox[{"\[LeftSkeleton]", "1", "\[RightSkeleton]"}], ")"}], " ", SubscriptBox["C", "F"]}]}], Short], TraditionalForm]], "Output"] }, Open ]], Cell["\<\ Comment: By default all bracketed FORM expressions are translated \ to a Hold[] expression.\ \>", "Commentary"], Cell[CellGroupData[{ Cell["FORM2FeynCalc[\"-[(-1)^m]\"]", "Input"], Cell[BoxData[ FormBox[ RowBox[{"-", RowBox[{"Hold", "(", SuperscriptBox[ RowBox[{"(", RowBox[{"-", "1"}], ")"}], "m"], ")"}]}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"%", "//", "ReleaseHold"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"-", SuperscriptBox[ RowBox[{"(", RowBox[{"-", "1"}], ")"}], "m"]}], TraditionalForm]], "Output"] }, Open ]], Cell["Calculate moments", "Text"], Cell["\<\ The first moment should be zero, which is verified by Integrate2 in \ a reasonable amount of time. The variable O2 can be set to zero since it is \ the coefficient of unphysical matrix elements.\ \>", "Text"], Cell[TextData[{ "This calculates for m=1 the integral ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{ SubsuperscriptBox["\[Integral]", "0", RowBox[{"1", " "}]], " ", RowBox[{ SubsuperscriptBox[ StyleBox[ OverscriptBox[ StyleBox["A", FontSlant->"Plain"], "^"], FontSlant->"Plain"], "qq", RowBox[{"NS", ",", "PHYS"}]], " ", RowBox[{"\[DifferentialD]", "x"}]}]}], " "}], TraditionalForm]]] }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Timing", "[", RowBox[{"Integrate2", "[", RowBox[{ RowBox[{ RowBox[{"aqq", "/.", RowBox[{"m", "\[Rule]", "1"}]}], "/.", RowBox[{"O2", "\[Rule]", "0"}]}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], "]"}], "]"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{ RowBox[{"18.6500000000000021`", " ", "Second"}], ",", "0"}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell["\<\ If you know that no partial fraction decomposition has to be done \ then Integrate3 will be much faster on an expanded or collected \ integral:\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Timing", "[", RowBox[{"Expand", "[", RowBox[{"Integrate3", "[", RowBox[{ RowBox[{"Expand", "[", RowBox[{ RowBox[{"aqq", "/.", RowBox[{"m", "\[Rule]", "1"}]}], "/.", RowBox[{"O2", "\[Rule]", "0"}]}], "]"}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], "]"}], "]"}], "]"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{ RowBox[{"3.6700000000000017`", " ", "Second"}], ",", "0"}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell["Define an auxiliary typesetting function.", "Text"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"MakeBoxes", "[", RowBox[{ RowBox[{"big", "[", "a_", "]"}], ",", " ", "f_"}], "]"}], " ", ":=", " ", RowBox[{"StyleBox", "[", RowBox[{ RowBox[{"MakeBoxes", "[", RowBox[{"a", ",", " ", "f"}], "]"}], ",", " ", RowBox[{"FontColor", " ", "->", " ", RowBox[{"RGBColor", "[", RowBox[{"0", ",", " ", "0", ",", " ", "1"}], "]"}]}], ",", " ", " ", " ", RowBox[{"FontSize", " ", "->", " ", "18"}]}], "]"}]}], ";"}]], "Input"], Cell["The second moment takes a little bit longer.", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"Timing", "[", RowBox[{"Collect2", "[", RowBox[{ RowBox[{"Integrate2", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"x", " ", "aqq"}], "/.", RowBox[{"m", "\[Rule]", "2"}]}], "/.", RowBox[{"O2", "\[Rule]", "0"}]}], "/.", RowBox[{"O1", "\[Rule]", "1"}]}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], "]"}], ",", RowBox[{"{", RowBox[{"CA", ",", "CF", ",", "Tf"}], "}"}], ",", RowBox[{"Factoring", "\[Rule]", "False"}]}], "]"}], "]"}], "/.", " ", RowBox[{"{", RowBox[{ RowBox[{ RowBox[{"CA", " ", "CF"}], " ", "\[RuleDelayed]", " ", RowBox[{"big", "[", " ", RowBox[{"CA", " ", "CF"}], "]"}]}], ",", RowBox[{ RowBox[{"CF", "^", "2"}], "\[RuleDelayed]", RowBox[{"big", "[", RowBox[{"CF", "^", "2"}], "]"}]}], ",", RowBox[{ RowBox[{"a_", " ", "CF", " ", "Tf"}], " ", "\[RuleDelayed]", RowBox[{"HoldForm", "[", " ", RowBox[{ RowBox[{"big", "[", RowBox[{"CF", " ", "Tf"}], "]"}], " ", "a"}], "]"}]}]}], "}"}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{ RowBox[{"24.260000000000006`", " ", "Second"}], ",", RowBox[{ TagBox[ RowBox[{ RowBox[{"(", StyleBox[ RowBox[{ SubscriptBox["C", "F"], " ", SubscriptBox["T", "f"]}], FontSize->18, FontColor->RGBColor[0, 0, 1]], ")"}], " ", RowBox[{"(", RowBox[{ FractionBox[ RowBox[{"16", " ", RowBox[{"\[Zeta]", "(", "2", ")"}]}], "9"], "+", FractionBox["376", RowBox[{"27", " ", TagBox["\[CurlyEpsilon]", TraditionalForm]}]], "-", FractionBox["64", RowBox[{"9", " ", SuperscriptBox[ TagBox["\[CurlyEpsilon]", TraditionalForm], "2"]}]], "-", FractionBox["2086", "81"]}], ")"}]}], HoldForm], "+", RowBox[{ RowBox[{"(", StyleBox[ RowBox[{ SubscriptBox["C", "A"], " ", SubscriptBox["C", "F"]}], FontSize->18, FontColor->RGBColor[0, 0, 1]], ")"}], " ", RowBox[{"(", RowBox[{ RowBox[{"-", FractionBox[ RowBox[{"44", " ", RowBox[{"\[Zeta]", "(", "2", ")"}]}], "9"]}], "-", FractionBox["1166", RowBox[{"27", " ", TagBox["\[CurlyEpsilon]", TraditionalForm]}]], "+", FractionBox["176", RowBox[{"9", " ", SuperscriptBox[ TagBox["\[CurlyEpsilon]", TraditionalForm], "2"]}]], "-", RowBox[{"12", " ", TagBox[ RowBox[{"\[Zeta]", "(", TagBox["3", (Editable -> True)], ")"}], InterpretTemplate[ Zeta[ #]&]]}], "+", FractionBox["12133", "162"]}], ")"}]}], "+", RowBox[{ StyleBox[ SubsuperscriptBox["C", "F", "2"], FontSize->18, FontColor->RGBColor[0, 0, 1]], " ", RowBox[{"(", RowBox[{ FractionBox[ RowBox[{"32", " ", RowBox[{"\[Zeta]", "(", "2", ")"}]}], "9"], "+", FractionBox["752", RowBox[{"27", " ", TagBox["\[CurlyEpsilon]", TraditionalForm]}]], "-", FractionBox["128", RowBox[{"9", " ", SuperscriptBox[ TagBox["\[CurlyEpsilon]", TraditionalForm], "2"]}]], "+", RowBox[{"8", " ", TagBox[ RowBox[{"\[Zeta]", "(", TagBox["3", (Editable -> True)], ")"}], InterpretTemplate[ Zeta[ #]&]]}], "-", FractionBox["3452", "81"]}], ")"}]}]}]}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell["\<\ Try to do the general Mellin transform (replace m by OPEm, which \ has special properties).\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{"gqq", " ", "=", " ", RowBox[{"Collect2", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ SuperscriptBox["x", RowBox[{"OPEm", "-", "1"}]], RowBox[{"(", RowBox[{"aqq", "/.", RowBox[{"m", "\[Rule]", "OPEm"}]}], ")"}]}], "/.", RowBox[{"O2", "\[Rule]", "0"}]}], "/.", RowBox[{"O1", "\[Rule]", "1"}]}], ",", "x"}], "]"}]}], ";"}]], "Input"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"gqq", "//", "Length"}]], "Input"], Cell[BoxData[ FormBox["102", TraditionalForm]], "Output"] }, Open ]], Cell["\<\ There are 102 integrals. However, some of the Mellin transforms \ cannot be done at the moment.\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{"ww", "=", RowBox[{"Integrate3", "[", RowBox[{"gqq", ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], "]"}]}], ";"}]], "Input"], Cell["\<\ If an integral cannot be performed the head Hold[Integrate3] is \ substituted for Integrate3. Thus, in order to find the list of integrals not \ done you can do:\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Cases2", "[", RowBox[{"ww", ",", RowBox[{"Hold", "[", "Integrate3", "]"}]}], "]"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"Hold", "(", "Integrate3", ")"}], ")"}], "(", RowBox[{ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{ SubscriptBox["S", RowBox[{ FormBox["1", "TraditionalForm"], "\[NoBreak]", FormBox["2", "TraditionalForm"]}]], "(", FormBox[ SuperscriptBox["x", "2"], "TraditionalForm"], ")"}]}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], ")"}], ",", RowBox[{ RowBox[{"(", RowBox[{"Hold", "(", "Integrate3", ")"}], ")"}], "(", RowBox[{ RowBox[{ SuperscriptBox["x", "m"], " ", RowBox[{ SubscriptBox["S", RowBox[{ FormBox["1", "TraditionalForm"], "\[NoBreak]", FormBox["2", "TraditionalForm"]}]], "(", FormBox[ SuperscriptBox["x", "2"], "TraditionalForm"], ")"}]}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], ")"}], ",", RowBox[{ RowBox[{"(", RowBox[{"Hold", "(", "Integrate3", ")"}], ")"}], "(", RowBox[{ FractionBox[ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{ SubscriptBox["S", RowBox[{ FormBox["1", "TraditionalForm"], "\[NoBreak]", FormBox["2", "TraditionalForm"]}]], "(", FormBox[ SuperscriptBox["x", "2"], "TraditionalForm"], ")"}]}], RowBox[{"x", "+", "1"}]], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], ")"}], ",", RowBox[{ RowBox[{"(", RowBox[{"Hold", "(", "Integrate3", ")"}], ")"}], "(", RowBox[{ FractionBox[ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{"log", "(", RowBox[{"1", "-", "x"}], ")"}], " ", RowBox[{ SubscriptBox["Li", "2"], "(", RowBox[{"1", "-", "x"}], ")"}]}], RowBox[{"x", "+", "1"}]], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], ")"}], ",", RowBox[{ RowBox[{"(", RowBox[{"Hold", "(", "Integrate3", ")"}], ")"}], "(", RowBox[{ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{"log", "(", RowBox[{"x", "+", "1"}], ")"}], " ", RowBox[{ SubscriptBox["Li", "2"], "(", RowBox[{"1", "-", "x"}], ")"}]}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], ")"}], ",", RowBox[{ RowBox[{"(", RowBox[{"Hold", "(", "Integrate3", ")"}], ")"}], "(", RowBox[{ RowBox[{ SuperscriptBox["x", "m"], " ", RowBox[{"log", "(", RowBox[{"x", "+", "1"}], ")"}], " ", RowBox[{ SubscriptBox["Li", "2"], "(", RowBox[{"1", "-", "x"}], ")"}]}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], ")"}], ",", RowBox[{ RowBox[{"(", RowBox[{"Hold", "(", "Integrate3", ")"}], ")"}], "(", RowBox[{ FractionBox[ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{"log", "(", RowBox[{"x", "+", "1"}], ")"}], " ", RowBox[{ SubscriptBox["Li", "2"], "(", RowBox[{"1", "-", "x"}], ")"}]}], RowBox[{"x", "+", "1"}]], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "1"}], "}"}]}], ")"}]}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell[TextData[{ "Change the appearance and retain only those integrals with ", Cell[BoxData[ FormBox[ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], ":"}], TraditionalForm]]] }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"Select2", "[", RowBox[{"%", ",", SuperscriptBox["x", RowBox[{"OPEm", "-", "1"}]]}], "]"}], "/.", " ", RowBox[{ RowBox[{ RowBox[{"Hold", "[", "Integrate3", "]"}], "[", "z__", "]"}], "\[RuleDelayed]", " ", RowBox[{"HoldForm", "[", RowBox[{"Integrate", "[", "z", "]"}], "]"}]}]}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{ TagBox[ RowBox[{ SubsuperscriptBox["\[Integral]", "0", "1"], RowBox[{ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{ SubscriptBox["S", RowBox[{ FormBox["1", "TraditionalForm"], "\[NoBreak]", FormBox["2", "TraditionalForm"]}]], "(", FormBox[ SuperscriptBox["x", "2"], "TraditionalForm"], ")"}]}], RowBox[{"\[DifferentialD]", "x"}]}]}], HoldForm], ",", TagBox[ RowBox[{ SubsuperscriptBox["\[Integral]", "0", "1"], RowBox[{ FractionBox[ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{ SubscriptBox["S", RowBox[{ FormBox["1", "TraditionalForm"], "\[NoBreak]", FormBox["2", "TraditionalForm"]}]], "(", FormBox[ SuperscriptBox["x", "2"], "TraditionalForm"], ")"}]}], RowBox[{"x", "+", "1"}]], RowBox[{"\[DifferentialD]", "x"}]}]}], HoldForm], ",", TagBox[ RowBox[{ SubsuperscriptBox["\[Integral]", "0", "1"], RowBox[{ FractionBox[ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{"log", "(", RowBox[{"1", "-", "x"}], ")"}], " ", RowBox[{ SubscriptBox["Li", "2"], "(", RowBox[{"1", "-", "x"}], ")"}]}], RowBox[{"x", "+", "1"}]], RowBox[{"\[DifferentialD]", "x"}]}]}], HoldForm], ",", TagBox[ RowBox[{ SubsuperscriptBox["\[Integral]", "0", "1"], RowBox[{ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{"log", "(", RowBox[{"x", "+", "1"}], ")"}], " ", RowBox[{ SubscriptBox["Li", "2"], "(", RowBox[{"1", "-", "x"}], ")"}]}], RowBox[{"\[DifferentialD]", "x"}]}]}], HoldForm], ",", TagBox[ RowBox[{ SubsuperscriptBox["\[Integral]", "0", "1"], RowBox[{ FractionBox[ RowBox[{ SuperscriptBox["x", RowBox[{"m", "-", "1"}]], " ", RowBox[{"log", "(", RowBox[{"x", "+", "1"}], ")"}], " ", RowBox[{ SubscriptBox["Li", "2"], "(", RowBox[{"1", "-", "x"}], ")"}]}], RowBox[{"x", "+", "1"}]], RowBox[{"\[DifferentialD]", "x"}]}]}], HoldForm]}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell["\<\ If you do know the answers for these integrals please share the \ knowledge.\ \>", "Text"], Cell[BoxData[ RowBox[{"Clear", "[", RowBox[{"e", ",", "ww", ",", "gqq", ",", "big", ",", "aqq"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"SetOptions", "[", RowBox[{"FORM2FeynCalc", ",", RowBox[{"Replace", "\[Rule]", RowBox[{"{", "}"}]}]}], "]"}], ";"}]], "Input"], Cell[TextData[{ "See also: ", ButtonBox["CA", ButtonData:>"CA", ButtonStyle->"Hyperlink"], ", ", ButtonBox["CF", ButtonData:>"CF", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Cases2", ButtonData:>"Cases2", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Collect2", ButtonData:>"Collect2", ButtonStyle->"Hyperlink"], ", ", ButtonBox["DeltaFunction", ButtonData:>"DeltaFunction", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Epsilon", ButtonData:>"Epsilon", ButtonStyle->"Hyperlink"], ", ", ButtonBox["FORM2FeynCalc", ButtonData:>"FORM2FeynCalc", ButtonStyle->"Hyperlink", ButtonNote->"FORM2FeynCalc"], ", ", ButtonBox["Integrate2", ButtonData:>"Integrate3", ButtonStyle->"Hyperlink", ButtonNote->"Integrate3"], ", ", ButtonBox["Integrate3", ButtonData:>"Integrate3", ButtonStyle->"Hyperlink", ButtonNote->"Integrate3"], ", ", ButtonBox["Li2", ButtonData:>"Li2", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Li3", ButtonData:>"Li3", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Nielsen", ButtonData:>"Nielsen", ButtonStyle->"Hyperlink"], ", ", ButtonBox["Zeta2", ButtonData:>"Zeta2", ButtonStyle->"Hyperlink"], "." }], "Text"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Reference Guide", "Section", CellTags->"Reference Guide"], Cell[CellGroupData[{ Cell["A0", "Subsection", PageBreakAbove->True, CellTags->"A0"], Cell[CellGroupData[{ Cell["Description", "Subsubsection"], Cell[TextData[Cell[BoxData[ FormBox[ RowBox[{ RowBox[{ RowBox[{"A0", "[", SuperscriptBox["m", "2"], "]"}], " ", "is", "the", "Passarino"}], "-", RowBox[{"Veltman", "one"}], "-", RowBox[{"point", " ", " ", "integral", " ", " ", SubscriptBox["A", "0."]}]}], TraditionalForm]]]], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Options", "[", " ", "A0", "]"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{"A0ToB0", "\[Rule]", "True"}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell[TextData[{ "See also: ", " ", ButtonBox["B0", ButtonData:>"B0", ButtonStyle->"Hyperlink", ButtonNote->"B0"], ", ", ButtonBox["C0", ButtonData:>"C0", ButtonStyle->"Hyperlink", ButtonNote->"C0"], ", ", ButtonBox["D0", ButtonData:>"D0", ButtonStyle->"Hyperlink", ButtonNote->"D0"], ", ", ButtonBox["PaVe", ButtonData:>"PaVe", ButtonStyle->"Hyperlink", ButtonNote->"PaVe"], "." }], "Text"] }, Open ]], Cell[CellGroupData[{ Cell["Examples", "Subsubsection"], Cell[TextData[{ "By default any ", Cell[BoxData[ FormBox[ SubscriptBox["A", "0"], TraditionalForm]]], " is expressed in terms of ", Cell[BoxData[ FormBox[ SubscriptBox["B", "0"], TraditionalForm]]], "'s." }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"A0", "[", SuperscriptBox["m", "2"], "]"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{ RowBox[{ RowBox[{ SubscriptBox["B", "0"], "(", "0", ",", SuperscriptBox["m", "2"], ",", SuperscriptBox["m", "2"], ")"}], " ", SuperscriptBox["m", "2"]}], "+", SuperscriptBox["m", "2"]}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"A0", "[", RowBox[{ SuperscriptBox["m", "2"], ",", RowBox[{"A0ToB0", "\[Rule]", "False"}]}], "]"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{ RowBox[{ RowBox[{ SubscriptBox["B", "0"], "(", "0", ",", SuperscriptBox["m", "2"], ",", SuperscriptBox["m", "2"], ")"}], " ", SuperscriptBox["m", "2"]}], "+", SuperscriptBox["m", "2"]}], TraditionalForm]], "Output"] }, Open ]], Cell[TextData[{ "According to the rules of dimensional regularization ", Cell[BoxData[ FormBox[ RowBox[{ SubscriptBox["A", "0"], "(", "0", ")"}], TraditionalForm]]], " is set to 0." }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"A0", "[", "0", "]"}]], "Input"], Cell[BoxData[ FormBox["0", TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"A0", "[", RowBox[{"SmallVariable", "[", RowBox[{"M", "^", "2"}], "]"}], "]"}]], "Input"], Cell[BoxData[ FormBox["0", TraditionalForm]], "Output"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Amplitudes", "Subsection", CellTags->"Amplitudes"], Cell[CellGroupData[{ Cell["Description", "Subsubsection"], Cell[TextData[ "Amplitudes[name] is a database of Feynman amplitudes. Gauge \[Rule] 1 means \ `t Hooft Feynman gauge; Polarization \[Rule] 0 gives unpolarized OPE-type \ amplitudes, Polarization \[Rule] 1 the polarized ones."], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Options", "[", "Amplitudes", "]"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"{", RowBox[{ RowBox[{"Dimension", "\[Rule]", "D"}], ",", RowBox[{"Gauge", "\[Rule]", "1"}], ",", RowBox[{"QuarkMass", "\[Rule]", "0"}], ",", RowBox[{"Polarization", "\[Rule]", "1"}]}], "}"}], TraditionalForm]], "Output"] }, Open ]], Cell[TextData[{ "See also: ", " ", ButtonBox["FeynAmp", ButtonData:>"FeynAmp", ButtonStyle->"Hyperlink", ButtonNote->"FeynAmp"], "." }], "Text"] }, Open ]], Cell[CellGroupData[{ Cell["Examples", "Subsubsection"], Cell["This is the amplitude of a gluon self-energy diagram.", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Amplitudes", "[", "\"\\"", "]"}]], "Input"], Cell[BoxData[ FormBox[ RowBox[{"-", FractionBox[ RowBox[{ SubsuperscriptBox["g", "s", "2"], " ", RowBox[{ SuperscriptBox["V", RowBox[{ FormBox[ FormBox["\[Nu]", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["\[Rho]", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["\[Sigma]", "TraditionalForm"], "TraditionalForm"]}]], "(", RowBox[{ FormBox[ RowBox[{"-", "p"}], "TraditionalForm"], "\[NoBreak]", RowBox[{",", " "}], "\[NoBreak]", FormBox[ RowBox[{"p", "-", "q"}], "TraditionalForm"], "\[NoBreak]", RowBox[{",", " "}], "\[NoBreak]", FormBox["q", "TraditionalForm"]}], ")"}], " ", RowBox[{ SuperscriptBox["V", RowBox[{ FormBox[ FormBox["\[Mu]", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["\[Alpha]", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["\[Beta]", "TraditionalForm"], "TraditionalForm"]}]], "(", RowBox[{ FormBox["p", "TraditionalForm"], "\[NoBreak]", RowBox[{",", " "}], "\[NoBreak]", FormBox[ RowBox[{"q", "-", "p"}], "TraditionalForm"], "\[NoBreak]", RowBox[{",", " "}], "\[NoBreak]", FormBox[ RowBox[{"-", "q"}], "TraditionalForm"]}], ")"}], " ", SuperscriptBox["g", RowBox[{ FormBox[ FormBox["\[Alpha]", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["\[Rho]", "TraditionalForm"], "TraditionalForm"]}]], " ", SuperscriptBox["g", RowBox[{ FormBox[ FormBox["\[Beta]", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["\[Sigma]", "TraditionalForm"], "TraditionalForm"]}]], " ", SubscriptBox["\[Delta]", RowBox[{ FormBox[ FormBox["c", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["d", "TraditionalForm"], "TraditionalForm"]}]], " ", SubscriptBox["\[Delta]", RowBox[{ FormBox[ FormBox["e", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["f", "TraditionalForm"], "TraditionalForm"]}]], " ", SubscriptBox["f", RowBox[{ FormBox[ FormBox["a", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["c", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["e", "TraditionalForm"], "TraditionalForm"]}]], " ", SubscriptBox["f", RowBox[{ FormBox[ FormBox["b", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[ FormBox["d", "TraditionalForm"], "TraditionalForm"], "\[NoBreak]", FormBox[