From f13eacbc8e5ab714dd3544adab8189c313382c77 Mon Sep 17 00:00:00 2001 From: Ian Jauslin Date: Wed, 22 Jul 2015 13:55:29 +0000 Subject: Support for non-commuting fields --- man/meankondo.1 | 57 ++++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 36 insertions(+), 21 deletions(-) (limited to 'man/meankondo.1') diff --git a/man/meankondo.1 b/man/meankondo.1 index f7a0290..0a299d7 100644 --- a/man/meankondo.1 +++ b/man/meankondo.1 @@ -1,5 +1,5 @@ .Dd $Mdocdate: April 13 2015 $ -.Dt meankondo 1.2.1 +.Dt meankondo 1.3 .Os .Sh NAME .Nm meankondo @@ -67,7 +67,7 @@ recognizes the following entries (unless explicitly mentioned, the entries below .It Sy #!fields A list of the fields of the model. .Pp -The fields entry contains 4 lines which start with 'i:', 'x:', 'h:' and 'f:'. Each of these is followed by a ',' separated list of field indices, which are positive integers. +The fields entry contains 5 lines which start with 'i:', 'x:', 'h:', 'f:' and 'a:'. Each of these is followed by a ',' separated list of field indices, which are positive integers. .Bl -bullet .It The indices following 'i' correspond to internal fields, which are integrated out using the Wick rule and the propagator provided in the '#!propagator' entry. Each internal field is associated a conjugate field, whose index is the opposite of the field's index (e.g. 'i:101' defines a field whose index is -101) @@ -77,6 +77,10 @@ The indices following 'x' correspond to external fields that are associated conj The indices following 'h' correspond to external fields that are not associated a conjugate field. External indices may not appear as internal indices. .It The 'f' line specifies which of the internal and external indices are Fermions, i.e. which fields anti-commute. The fields appearing in the 'f' line should also either appear in the 'i' or 'x' line. WARNING: for the moment, only cases in which all of the internal fields are Fermions are supported. +.It +The 'a' line specifies a list of external fields listed in the 'h' entry that do not commute with each other. Specifying fields in this entry will prevent +.Nm +from sorting them. These fields may not be in the 'i', 'x' or 'f' entries. This entry can be used to treat cases in which the coefficients of the input polynomial are operators that do not commute. Their commutation relations may be specified in the '#!identities' entries (see below). .El .Pp .Em Line breaks are not ignored in this entry. @@ -84,8 +88,9 @@ The 'f' line specifies which of the internal and external indices are Fermions, Example: .D1 i:101,102,201,202 .D1 x:100,200 -.D1 h:301,302,303 +.D1 h:301,302,303,401,402,403 .D1 f:100,101,102 +.D1 a:401,402,403 .It Sy #!propagator The propagator of the model. .Pp @@ -98,31 +103,41 @@ just as easily as propagators with symbolic entries. Such an entry means that .Pp Example: .D1 101;102: 1 , 102;101: -1 , 201;202: s{-1} + (-1)[l10] , 202;201: (-1)s{-1} + [l10] -.It Sy #!symbols -Symbolic variables used as shortcuts for more complicated expressions (optional entry). .Pp -In order to simplify long expressions, symbolic variables can be defined in this entry. Each variable is assigned an index, which is a positive integer that must be different from any of the internel and external indices defined in the '#!fields' entry. +.It Sy #!identities +Identities satisfied by some of the fields (optional entry). .Pp -The symbols entry is a ',' separated list, whose elements are of the form -.D1 index= polynomial -where index is the index of the variable and polynomial is the expression it stands for (see the POLYNOMIALS section below for information on how to format polynomials). Note that polynomial can contain other symbolic variables. There is no safeguard against self-referencing definitions that may cause infinite loops. +In some cases, some of the quantities involved in a model will satisfy an identity (e.g. a vector may be of unit-norm, or non-commuting objects may satisfy non-trivial commutation relations), which should be simplified out from the flow equation. +.Pp +The identities entry is a ',' separated list, whose elements are of the form +.D1 monomial=polynomial +where monomial represents the left side of the identity and is a sequence of field indices of the form '[f index1][f index2]...' and polynomial represents the right side of the identity (see the POLYNOMIALS section below for information on how to format polynomials). .Pp Example: -.D1 1001= (-1)[f-100][f100] + (-1)[f-101][f101] , 2001=[f-100][f100] + [f-201][f201] +.D1 [f301][f301]=(1)+(-1)[f302][f302]+(-1)[f303][f303], +.D1 [f401][f401]=(1), +.D1 [f401][f402]=(s{-1})[f403], +.D1 [f401][f403]=((-1)s{-1})[f402] .Pp This entry is optional. .Pp -.It Sy #!identities -Identities satisfied by some of the fields (optional entry). +.It Sy #!symbols +Symbolic variables used as shortcuts for more complicated expressions (optional entry). .Pp -In some cases, some of the quantities involved in a model will satisfy an identity (e.g. a vector may be of unit-norm), which should simplified out from the flow equation. +In order to simplify long expressions, symbolic variables can be defined in this entry. Each variable is assigned an index, which is a positive integer that must be different from any of the internal and external indices defined in the '#!fields' entry. .Pp -The identities entry is a ',' separated list, whose elements are of the form -.D1 monomial=polynomial -where monomial represents the left side of the identity and is a sequence of field indices of the form '[f index1][f index2]...' and polynomial represents the right side of the identity (see the POLYNOMIALS section below for information on how to format polynomials). +Seemingly similar functionality can be achieved using an '#!identity' entry (see above), though symbols are handled differently from identities. Indeed, while identities are simplified out of the polynomials as soon as they occur, symbols are only resolved when +.Nm +computes the mean of the input polynomial. Using symbols can thereby be a lot faster than using identities. However, as is mentioned below, symbols must commute with each other and all other fields, whereas identities can be made to be fermionic or non-commuting. +.Pp +The symbols entry is a ',' separated list, whose elements are of the form +.D1 index= polynomial +where index is the index of the variable and polynomial is the expression it stands for (see the POLYNOMIALS section below for information on how to format polynomials). Note that polynomial can contain other symbolic variables. There is no safeguard against self-referencing definitions that may cause infinite loops. +.Pp +WARNING: Symbols are assumed to commute with each other and all other Fermions. They should therefore not represent quantities that do not commute (e.g. odd monomials of fermions or non-commuting objects specified in the 'a:' entry in the '#!fields' entry). .Pp Example: -.D1 [f301][f301]=(1)+(-1)[f302][f302]+(-1)[f303][f303] +.D1 1001= (-1)[f-100][f100] + (-1)[f-101][f101] , 2001=[f-100][f100] + [f-201][f201] .Pp This entry is optional. .Pp @@ -157,16 +172,16 @@ computes the mean of a monomial containing elements of different groups, it fact .Nm does not repeatedly try to pair independent fields. .Pp +WARNING: +.Nm +assumes that the symbols and fields in each group are independent but does not check that they are. If symbols or fields that are not independent are put in different groups, or if some are in a group while others are not in any group, then the resulting flow equation may be wrong. +.Pp The groups entry is a list of collections of fields or symbols of the following form .D1 (index1,index2,...) .Pp Example: .D1 (1001,1002) (2001,2002) .Pp -.Em Warning: -.Nm -does not check that the fields in different groups are truly independent, so cases in which fields in different group have a non-vanishing propagator entry may give unexpected results. -.Pp This entry is optional. .El .Pp -- cgit v1.2.3-70-g09d2