Skip to content

Class TempLat::AbstractModel

template <class R, size_t NPOTTERMS, size_t NS, size_t NC, size_t NU1FLDS, size_t NSU2DOUBLET, size_t NSU2FLDS, typename CSU1COUPLINGS, typename SU2DOUBLETU1COUPLINGS, typename SU2DOUBLETSU2COUPLINGS, typename SCALARU1AXIONCOUPLINGS, typename NONMINCOUPLINGS, typename T, int NDIM, bool DEFECTSMODEL>

ClassList > TempLat > AbstractModel

A class which contains everything a model should have; models derive from here. Mother of all the models. The arguments are passed as template parameters.

  • #include <abstractmodel.h>

Inherits the following classes: TempLat::ScalarBase, TempLat::ComplexScalarBase, TempLat::SU2DoubletSectorBase, TempLat::ScalarU1AxionBase, TempLat::NonMinimalCouplingBase, TempLat::ScaleFactorBase, TempLat::ModelParametersBase, TempLat::GWBase, TempLat::U1Base, TempLat::SU2Base

Public Types inherited from TempLat::ScalarBase

See TempLat::ScalarBase

Type Name
typedef T FloatType

Public Types inherited from TempLat::ComplexScalarBase

See TempLat::ComplexScalarBase

Type Name
typedef typename CSU1COUPLINGS::template Container< T > CsU1Couplings

Public Types inherited from TempLat::SU2DoubletSectorBase

See TempLat::SU2DoubletSectorBase

Type Name
typedef typename SU2DOUBLETSU2COUPLINGS::template Container< T > SU2DoubletSU2Couplings
typedef typename SU2DOUBLETU1COUPLINGS::template Container< T > SU2DoubletU1Couplings

Public Types inherited from TempLat::ScalarU1AxionBase

See TempLat::ScalarU1AxionBase

Type Name
typedef typename SCALARU1AXIONCOUPLINGS::template Container< T > ScalarU1AxionCouplings

Public Types inherited from TempLat::NonMinimalCouplingBase

See TempLat::NonMinimalCouplingBase

Type Name
typedef typename NONMINCOUPLINGS::template Container< T > NonMinimalCouplings

Public Attributes

Type Name
T pot0
T pot0SI
T potAvI
T potAvSI

Public Attributes inherited from TempLat::ScalarBase

See TempLat::ScalarBase

Type Name
std::array< std::string, NS > extPS
FieldCollection< Field< T, NDIM >, NS, true > fldS
TempLatArray< T, NS > fldS0
T grad2AvI
T grad2AvSI
bool isInitialized
TempLatArray< T, NS > masses2S
T pi2AvI
T pi2AvIM
T pi2AvSI
T pi2AvSIM
FieldCollection< Field< T, NDIM >, NS, true > piS
TempLatArray< T, NS > piS0

Public Attributes inherited from TempLat::ComplexScalarBase

See TempLat::ComplexScalarBase

Type Name
T CSgrad2AvI
T CSgrad2AvSI
T CSpi2AvI
T CSpi2AvIM
T CSpi2AvSI
T CSpi2AvSIM
FieldCollection< ComplexField< T, NDIM >, NC > fldCS
TempLatArray< ComplexFieldWrapper< T, T >, NC > fldCS0
CsU1Couplings gQ_CsU1
TempLatArray< ComplexFieldWrapper< T, T >, NC > masses2CS
FieldCollection< ComplexField< T, NDIM >, NC > piCS
TempLatArray< ComplexFieldWrapper< T, T >, NC > piCS0

Public Attributes inherited from TempLat::SU2DoubletSectorBase

See TempLat::SU2DoubletSectorBase

Type Name
T SU2DblGrad2AvI
T SU2DblGrad2AvSI
T SU2DblPi2AvI
T SU2DblPi2AvIM
T SU2DblPi2AvSI
T SU2DblPi2AvSIM
FieldCollection< SU2Doublet< T, NDIM >, NSU2DOUBLET > fldSU2Doublet
TempLatArray< SU2DoubletWrapper< T, T, T, T >, NSU2DOUBLET > fldSU2Doublet0
SU2DoubletSU2Couplings gQ_SU2DblSU2
SU2DoubletU1Couplings gQ_SU2DblU1
TempLatArray< SU2DoubletWrapper< T, T, T, T >, NSU2DOUBLET > masses2SU2Doublet
FieldCollection< SU2Doublet< T, NDIM >, NSU2DOUBLET > piSU2Doublet
TempLatArray< SU2DoubletWrapper< T, T, T, T >, NSU2DOUBLET > piSU2Doublet0

Public Attributes inherited from TempLat::ScalarU1AxionBase

See TempLat::ScalarU1AxionBase

Type Name
ScalarU1AxionCouplings alphaLambda_SU1
T tNonLinearAxionU1

Public Attributes inherited from TempLat::NonMinimalCouplingBase

See TempLat::NonMinimalCouplingBase

Type Name
T RI
TempLatArray< T, NS > fld2AvSI_i
TempLatArray< T, NS > fldPiAvSI
TempLatArray< T, NS > fldVpAvSI
TempLatArray< T, NS > grad2AvSI_i
TempLatArray< T, NS > pi2AvSI_i
T piAI
NonMinimalCouplings xis

Public Attributes inherited from TempLat::ScaleFactorBase

See TempLat::ScaleFactorBase

Type Name
T aDotI
T aDotIM
T aDotSI
T aDotSIM
T aI
T aIM
T aSI
T b0
T resolutionPreservingFactor

Public Attributes inherited from TempLat::ModelParametersBase

See TempLat::ModelParametersBase

Type Name
T alpha
T dt
T dx
T fStar
T kIR
std::string name
T omegaStar
T t
T t0

Public Attributes inherited from TempLat::GWBase

See TempLat::GWBase

Type Name
std::unique_ptr< SymTracelessField< T, NDIM > > fldGWs
std::unique_ptr< SymTracelessField< T, NDIM > > piGWs

Public Attributes inherited from TempLat::U1Base

See TempLat::U1Base

Type Name
T U1Mag2AvI
T U1Mag2AvSI
T U1pi2AvI
T U1pi2AvIM
T U1pi2AvSI
T U1pi2AvSIM
VectorFieldCollection< Field< T, NDIM >, NU1FLDS > fldU1
VectorFieldCollection< Field< T, NDIM >, NU1FLDS > piU1

Public Attributes inherited from TempLat::SU2Base

See TempLat::SU2Base

Type Name
T SU2Mag2AvI
T SU2Mag2AvSI
T SU2pi2AvI
T SU2pi2AvIM
T SU2pi2AvSI
T SU2pi2AvSIM
VectorFieldCollection< SU2Field< T, NDIM >, NSU2FLDS > fldSU2
VectorFieldCollection< SU2LieAlgebraField< T, NDIM >, NSU2FLDS > piSU2

Public Static Attributes

Type Name
constexpr size_t DefectsModel = DEFECTSMODEL
constexpr size_t NPotTerms = NPOTTERMS
constexpr std::array< size_t, FieldsNumbering::maxNum+1 > fieldCounts = /* multi line expression */

Public Static Attributes inherited from TempLat::ScalarBase

See TempLat::ScalarBase

Type Name
constexpr int NDim = NDIM
constexpr size_t Ns = NS

Public Static Attributes inherited from TempLat::ComplexScalarBase

See TempLat::ComplexScalarBase

Type Name
constexpr size_t NCs = NC

Public Static Attributes inherited from TempLat::SU2DoubletSectorBase

See TempLat::SU2DoubletSectorBase

Type Name
constexpr size_t NSU2Doublet = NSU2DOUBLET

Public Static Attributes inherited from TempLat::ScalarU1AxionBase

See TempLat::ScalarU1AxionBase

Type Name
constexpr bool IsAxionU1Coupled = SCALARU1AXIONCOUPLINGS::howManyCouples() &gt; 0

Public Static Attributes inherited from TempLat::NonMinimalCouplingBase

See TempLat::NonMinimalCouplingBase

Type Name
constexpr bool IsNonMinimallyCoupled = NONMINCOUPLINGS::howManyCouples() &gt; 0

Public Static Attributes inherited from TempLat::ScaleFactorBase

See TempLat::ScaleFactorBase

Type Name
constexpr T MPl = Constants::reducedMPlanck&lt;T&gt;

Public Static Attributes inherited from TempLat::U1Base

See TempLat::U1Base

Type Name
constexpr size_t NU1 = NU1FLDS

Public Static Attributes inherited from TempLat::SU2Base

See TempLat::SU2Base

Type Name
constexpr size_t NSU2 = NSU2FLDS

Public Functions

Type Name
AbstractModel (ParameterParser & parser, const LatticeParameters< T > & par, device::memory::host_ptr< MemoryToolBox< NDIM > > toolBox, T pDt, std::string pName="")
AbstractModel (const AbstractModel &) = delete
auto getField (Tag< N >)
auto getFluctuationRatio (Tag< N >)
Field< T, NDIM > getOneField () const
device::memory::host_ptr< MemoryToolBox< NDIM > > getToolBox () const
AbstractModel & operator= (const AbstractModel &) = delete
void setInitialPotentialAndMassesFromPotential ()
void setInitialPotentialFromPotential ()

Public Functions inherited from TempLat::ScalarBase

See TempLat::ScalarBase

Type Name
auto potDeriv (Tag< N >)
auto potDeriv2 (Tag< N >)
auto potentialTerms (Tag< N >)

Public Functions inherited from TempLat::ComplexScalarBase

See TempLat::ComplexScalarBase

Type Name
auto potDeriv2NormCS (Tag< N >)
auto potDerivNormCS (Tag< N >)

Public Functions inherited from TempLat::SU2DoubletSectorBase

See TempLat::SU2DoubletSectorBase

Type Name
auto potDeriv2NormSU2Doublet (Tag< N >)
auto potDerivNormSU2Doublet (Tag< N >)

Public Functions inherited from TempLat::ModelParametersBase

See TempLat::ModelParametersBase

Type Name
std::string extraInfoFn (int verbosity)

Public Functions inherited from TempLat::U1Base

See TempLat::U1Base

Type Name
InitialConditionsType::U1 getU1IC ()

Public Static Functions

Type Name
constexpr size_t getNFields (Tag< N >)

Protected Functions inherited from TempLat::ScalarBase

See TempLat::ScalarBase

Type Name
ScalarBase (device::memory::host_ptr< MemoryToolBox< NDIM > > toolBox, const LatticeParameters< T > & par)
ScalarBase (ParameterParser & parser, device::memory::host_ptr< MemoryToolBox< NDIM > > toolBox, const LatticeParameters< T > & par)

Protected Functions inherited from TempLat::ComplexScalarBase

See TempLat::ComplexScalarBase

Type Name
ComplexScalarBase (ParameterParser & parser, device::memory::host_ptr< MemoryToolBox< NDIM > > toolBox, const LatticeParameters< T > & par)

Protected Functions inherited from TempLat::SU2DoubletSectorBase

See TempLat::SU2DoubletSectorBase

Type Name
SU2DoubletSectorBase (ParameterParser & parser, device::memory::host_ptr< MemoryToolBox< NDIM > > toolBox, const LatticeParameters< T > & par)

Protected Functions inherited from TempLat::ScalarU1AxionBase

See TempLat::ScalarU1AxionBase

Type Name
ScalarU1AxionBase (ParameterParser & parser)

Protected Functions inherited from TempLat::NonMinimalCouplingBase

See TempLat::NonMinimalCouplingBase

Type Name
NonMinimalCouplingBase (ParameterParser & parser)

Protected Functions inherited from TempLat::ScaleFactorBase

See TempLat::ScaleFactorBase

Type Name
ScaleFactorBase ()

Protected Functions inherited from TempLat::ModelParametersBase

See TempLat::ModelParametersBase

Type Name
ModelParametersBase (const LatticeParameters< T > & par, T pDt, std::string pName)

Protected Functions inherited from TempLat::GWBase

See TempLat::GWBase

Type Name
GWBase (ParameterParser & parser, device::memory::host_ptr< MemoryToolBox< NDIM > > toolBox, const LatticeParameters< T > & par)

Protected Functions inherited from TempLat::U1Base

See TempLat::U1Base

Type Name
U1Base (device::memory::host_ptr< MemoryToolBox< NDIM > > toolBox, const LatticeParameters< T > & par)

Protected Functions inherited from TempLat::SU2Base

See TempLat::SU2Base

Type Name
SU2Base (device::memory::host_ptr< MemoryToolBox< NDIM > > toolBox, const LatticeParameters< T > & par)

Public Attributes Documentation

variable pot0

T TempLat::AbstractModel< R, NPOTTERMS, NS, NC, NU1FLDS, NSU2DOUBLET, NSU2FLDS, CSU1COUPLINGS, SU2DOUBLETU1COUPLINGS, SU2DOUBLETSU2COUPLINGS, SCALARU1AXIONCOUPLINGS, NONMINCOUPLINGS, T, NDIM, DEFECTSMODEL >::pot0;

variable pot0SI

T TempLat::AbstractModel< R, NPOTTERMS, NS, NC, NU1FLDS, NSU2DOUBLET, NSU2FLDS, CSU1COUPLINGS, SU2DOUBLETU1COUPLINGS, SU2DOUBLETSU2COUPLINGS, SCALARU1AXIONCOUPLINGS, NONMINCOUPLINGS, T, NDIM, DEFECTSMODEL >::pot0SI;

variable potAvI

T TempLat::AbstractModel< R, NPOTTERMS, NS, NC, NU1FLDS, NSU2DOUBLET, NSU2FLDS, CSU1COUPLINGS, SU2DOUBLETU1COUPLINGS, SU2DOUBLETSU2COUPLINGS, SCALARU1AXIONCOUPLINGS, NONMINCOUPLINGS, T, NDIM, DEFECTSMODEL >::potAvI;

variable potAvSI

T TempLat::AbstractModel< R, NPOTTERMS, NS, NC, NU1FLDS, NSU2DOUBLET, NSU2FLDS, CSU1COUPLINGS, SU2DOUBLETU1COUPLINGS, SU2DOUBLETSU2COUPLINGS, SCALARU1AXIONCOUPLINGS, NONMINCOUPLINGS, T, NDIM, DEFECTSMODEL >::potAvSI;

Public Static Attributes Documentation

variable DefectsModel

constexpr size_t TempLat::AbstractModel< R, NPOTTERMS, NS, NC, NU1FLDS, NSU2DOUBLET, NSU2FLDS, CSU1COUPLINGS, SU2DOUBLETU1COUPLINGS, SU2DOUBLETSU2COUPLINGS, SCALARU1AXIONCOUPLINGS, NONMINCOUPLINGS, T, NDIM, DEFECTSMODEL >::DefectsModel;

variable NPotTerms

constexpr size_t TempLat::AbstractModel< R, NPOTTERMS, NS, NC, NU1FLDS, NSU2DOUBLET, NSU2FLDS, CSU1COUPLINGS, SU2DOUBLETU1COUPLINGS, SU2DOUBLETSU2COUPLINGS, SCALARU1AXIONCOUPLINGS, NONMINCOUPLINGS, T, NDIM, DEFECTSMODEL >::NPotTerms;

variable fieldCounts

constexpr std::array<size_t, FieldsNumbering::maxNum + 1> TempLat::AbstractModel< R, NPOTTERMS, NS, NC, NU1FLDS, NSU2DOUBLET, NSU2FLDS, CSU1COUPLINGS, SU2DOUBLETU1COUPLINGS, SU2DOUBLETSU2COUPLINGS, SCALARU1AXIONCOUPLINGS, NONMINCOUPLINGS, T, NDIM, DEFECTSMODEL >::fieldCounts;

Public Functions Documentation

function AbstractModel [1/2]

inline TempLat::AbstractModel::AbstractModel (
    ParameterParser & parser,
    const LatticeParameters < T > & par,
    device::memory::host_ptr < MemoryToolBox < NDIM > > toolBox,
    T pDt,
    std::string pName=""
) 

function AbstractModel [2/2]

TempLat::AbstractModel::AbstractModel (
    const AbstractModel &
) = delete

function getField

template<int N>
inline auto TempLat::AbstractModel::getField (
    Tag < N >
) 

function getFluctuationRatio

template<int N>
inline auto TempLat::AbstractModel::getFluctuationRatio (
    Tag < N >
) 

function getOneField

inline Field < T, NDIM > TempLat::AbstractModel::getOneField () const

function getToolBox

inline device::memory::host_ptr < MemoryToolBox < NDIM > > TempLat::AbstractModel::getToolBox () const

function operator=

AbstractModel & TempLat::AbstractModel::operator= (
    const AbstractModel &
) = delete

function setInitialPotentialAndMassesFromPotential

inline void TempLat::AbstractModel::setInitialPotentialAndMassesFromPotential () 

function setInitialPotentialFromPotential

inline void TempLat::AbstractModel::setInitialPotentialFromPotential () 

Public Static Functions Documentation

function getNFields

template<int N>
static inline constexpr size_t TempLat::AbstractModel::getNFields (
    Tag < N >
) 


The documentation for this class was generated from the following file cosmolatticeweb/tmp/code_source/cosmolattice/include/CosmoInterface/abstractmodel.h