diff options
author | Ian Jauslin <ian.jauslin@roma1.infn.it> | 2015-07-22 13:55:29 +0000 |
---|---|---|
committer | Ian Jauslin <ian.jauslin@roma1.infn.it> | 2015-07-22 13:55:29 +0000 |
commit | f13eacbc8e5ab714dd3544adab8189c313382c77 (patch) | |
tree | efd35fca778e6e343206f48918898a8b4cda9977 /man | |
parent | 3b591888b5dad7cef02170743a92e2bf9c5831db (diff) |
Support for non-commuting fieldsv1.3
Diffstat (limited to 'man')
-rw-r--r-- | man/kondo_preprocess.1 | 29 | ||||
-rw-r--r-- | man/meankondo.1 | 57 | ||||
-rw-r--r-- | man/meantools-convert.1 | 2 | ||||
-rw-r--r-- | man/meantools.1 | 2 | ||||
-rw-r--r-- | man/numkondo.1 | 2 |
5 files changed, 67 insertions, 25 deletions
diff --git a/man/kondo_preprocess.1 b/man/kondo_preprocess.1 index 5ec1399..e6e5c59 100644 --- a/man/kondo_preprocess.1 +++ b/man/kondo_preprocess.1 @@ -1,5 +1,5 @@ .Dd $Mdocdate: April 14 2015 $ -.Dt kondo_preprocess 1.2.1 +.Dt kondo_preprocess 1.3 .Os .Sh NAME .Nm kondo_preprocess @@ -94,6 +94,30 @@ defines external fields for A and B, denoted by a and b. They can be used as fie .D1 <axb.h> .Pp .It +Scalar products of A's and B's may also be specified using the '<#.#>' syntax: +.D1 <An.An> +.D1 <Bn.Bn> +.D1 <An.Bn> +.D1 <An.h> +.D1 <Bn.h> +.Pp +The difference between '[f #.#]' and '<#.#>' is that the former corresponds to a '#!symbols' entry whereas the latter is replaced by its corresponding polynomial when +.Nm +reads it (see +.Sx meankondo Ns (1)). +.Pp +.It +A vector 't=(t1,t2,t3)' of Pauli matrices (satisfying the Pauli commutation relations [ti,tj]=\\delta_{i,j}1+\\epsilon_{i,j,k}tk) is introduced as a non-commuting object. It can be used in scalar producs: +.D1 <An.t> +.D1 <Bn.t> +.D1 <t.h> +.D1 <a.t> +.D1 <b.t> +.Pp +Note that the '<#,#>' must be used since these scalar products do not commute whereas '#!symbols' entries must commute (see +.Sx meankondo Ns (1)). +.Pp +.It Furthermore, in order to simplify writing products of polynomials over each box index, if the polynomial contains a '%', then .Nm multiplies the polynomial by itself as many times as there are boxes (2^dimension times), replacing '%' with the appropriate box index. For example, if dimension=1 @@ -118,6 +142,9 @@ in which the polynomial can use the fields .D1 <a.h> .D1 <b.h> .D1 <axb.h> +.D1 <t.h> +.D1 <a.t> +.D1 <b.t> defined above. .Pp Example: 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 diff --git a/man/meantools-convert.1 b/man/meantools-convert.1 index fe021bb..4f8b191 100644 --- a/man/meantools-convert.1 +++ b/man/meantools-convert.1 @@ -1,5 +1,5 @@ .Dd $Mdocdate: June 12 2015 $ -.Dt meantools-convert 1.2.1 +.Dt meantools-convert 1.3 .Os .Sh NAME .Nm meantools-convert diff --git a/man/meantools.1 b/man/meantools.1 index 30eb3ff..376a4c1 100644 --- a/man/meantools.1 +++ b/man/meantools.1 @@ -1,5 +1,5 @@ .Dd $Mdocdate: April 14 2015 $ -.Dt meantools 1.2.1 +.Dt meantools 1.3 .Os .Sh NAME .Nm meantools diff --git a/man/numkondo.1 b/man/numkondo.1 index d1ae065..9506cf4 100644 --- a/man/numkondo.1 +++ b/man/numkondo.1 @@ -1,5 +1,5 @@ .Dd $Mdocdate: April 14 2015 $ -.Dt numkondo 1.2.1 +.Dt numkondo 1.3 .Os .Sh NAME .Nm numkondo |