1#ifndef PSCF_MIXTURE_TMPL_H
2#define PSCF_MIXTURE_TMPL_H
11#include <pscf/chem/MixtureBase.h>
12#include <util/param/ParamComposite.h>
13#include <util/containers/DArray.h>
25 template <
class PT,
class ST>
153 template <
class PT,
class ST>
157 return polymers_[id];
160 template <
class PT,
class ST>
164 return polymers_[id];
167 template <
class PT,
class ST>
171 return solvents_[id];
174 template <
class PT,
class ST>
178 return solvents_[id];
int nMonomer_
Number of monomer types.
int nPolymer_
Number of polymer species.
int nBlock_
Number of blocks total, across all polymers.
int nSolvent_
Number of solvent species.
double vMonomer_
Monomer reference volume (set to 1.0 by default).
MixtureBase()
Constructor.
DArray< Monomer > monomers_
Array of monomer type descriptors.
SolventT & solvent(int id)
Get a solvent solver object.
PolymerSpecies const & polymerSpecies(int id) const final
Get a PolymerSpecies descriptor by const reference.
virtual void readParameters(std::istream &in)
Read parameters from file and initialize.
PT PolymerT
Polymer species solver type.
~MixtureTmpl()
Destructor.
PolymerT & polymer(int id)
Get a polymer solver object by non-const reference.
MixtureTmpl()
Constructor.
SolventSpecies const & solventSpecies(int id) const final
Set a SolventSpecies descriptor object by const reference.
ST SolventT
Solvent species solver type.
Descriptor for a linear or acyclic branched block polymer.
PT PolymerT
Polymer species solver type.
ST SolventT
Solvent species solver type.
Descriptor for a solvent species.
Dynamically allocatable contiguous array template.
ParamComposite()
Constructor.
#define UTIL_CHECK(condition)
Assertion macro suitable for serial or parallel production code.
PSCF package top-level namespace.