MeanFieldToolkit.BDGMFT
MeanFieldToolkit.BDGMFT.BdGMFT
— TypeBdGMFT{T, R, S}
is a data type representing a general mean-field simulation on a BdG model.
Attributes
model :: Model
: The BdG model on which mean-field simulations are going to run, contains info about free hopping and pairing.HoppingOrders :: Vector{Param{2, R}}
: a vector of hopping order parameters to decompose the interactions in during MFT.PairingOrders :: Vector{Param{2, R}}
: a vector of pairing order parameters to decompose the interactions in during MFT.Interactions :: Vector{Param{2, FLoat64}}
: the vector ofParam
containing all the information of the interactions acting on the model.HoppingDecomposition :: Vector{Function}
: the decomposition function which describes how to take an interaction array + hopping expectation values and give back tight-binding hoppings.HoppingDecomposition :: Vector{Function}
: the decomposition function which describes how to take an interaction array + pairing expectation values and give back BdG pairings.HoppingScaling :: Dict{String, Float64}
: relative scaling parameters for different hopping mean-field channels.PairingScaling :: Dict{String, Float64}
: relative scaling parameters for different pairing mean-field channels.HoppingLabels :: Dict{String, String}
: The labels of the different hopping mean-field channels.PairingLabels :: Dict{String, String}
: The labels of the different hopping mean-field channels.
Initialize this structure using
BdGMFT(model::BdGModel, HoppingOrders::Vector{Param{2, R}}, PairingOrders::Vector{Param{2, S}}, Interactions::Vector{Param{T, Float64}} , HoppingDecomposition::Vector{Function}, PairingDecomposition::Vector{Function} ; HoppingLabels::Dict{String, String} = Dict{String, String}("ij" => "Hopping", "ii" => "Hopping On-Site", "jj" => "Hopping On-Site"), PairingLabels::Dict{String, String} = Dict{String, String}("ij" => "Pairing", "ii" => "Pairing On-Site", "jj" => "Pairing On-Site"))
BdGMFT(model::BdGModel, HoppingOrders::Vector{Param{2, R}}, PairingOrders::Vector{Param{2, S}}, Interactions::Vector{Param{T, Float64}} , HoppingDecomposition::Vector{Function}, PairingDecomposition::Vector{Function}, HoppingScaling::Dict{String, Float64}, PairingScaling::Dict{String, Float64} ; HoppingLabels::Dict{String, String} = Dict{String, String}("ij" => "Hopping", "ii" => "Hopping On-Site", "jj" => "Hopping On-Site"), PairingLabels::Dict{String, String} = Dict{String, String}("ij" => "Pairing", "ii" => "Pairing On-Site", "jj" => "Pairing On-Site"))
BdGMFT(model::BdGModel, PairingOrders::Vector{Param{2, S}}, Interactions::Vector{Param{T, Float64}} , HoppingDecomposition::Vector{Function}, PairingDecomposition::Vector{Function} ; HoppingLabels::Dict{String, String} = Dict{String, String}("ij" => "Hopping", "ii" => "Hopping On-Site", "jj" => "Hopping On-Site"), PairingLabels::Dict{String, String} = Dict{String, String}("ij" => "Pairing", "ii" => "Pairing On-Site", "jj" => "Pairing On-Site"))
BdGMFT(model::BdGModel, PairingOrders::Vector{Param{2, S}}, Interactions::Vector{Param{T, Float64}} , HoppingDecomposition::Vector{Function}, PairingDecomposition::Vector{Function}, HoppingScaling::Dict{String, Float64}, PairingScaling::Dict{String, Float64} ; HoppingLabels::Dict{String, String} = Dict{String, String}("ij" => "Hopping", "ii" => "Hopping On-Site", "jj" => "Hopping On-Site"), PairingLabels::Dict{String, String} = Dict{String, String}("ij" => "Pairing", "ii" => "Pairing On-Site", "jj" => "Pairing On-Site"))
MeanFieldToolkit.TBMFT.GetMFTEnergy
— MethodGetMFTEnergy(bdgMFT::BdGMFT{T, R}) --> Float64
Returns the total mean-field energy of the BdG model including decomposed interactions.