1#ifndef PRDC_MIXTURE_MODIFIER_REAL_TPP
2#define PRDC_MIXTURE_MODIFIER_REAL_TPP
11#include "MixtureModifierReal.h"
12#include <pscf/chem/Monomer.h>
22 : mixturePtr_(nullptr)
39 mixturePtr_ = &mixture;
49 { mixture().setKuhn(monomerId, kuhn); }
57 { mixture().polymer(polymerId).setPhi(phi); }
65 { mixture().polymer(polymerId).setMu(mu); }
74 { mixture().polymer(polymerId).block(blockId).setLength(length); }
82 { mixture().solvent(solventId).setPhi(phi); }
90 { mixture().solvent(solventId).setMu(mu); }
98 { mixture().solvent(solventId).setSize(size); }
105 { mixture().setVmonomer(vMonomer); }
114 { mixture().clearUnitCellData(); }
122 MT& MixtureModifierReal<MT>::mixture()
MixtureModifierReal()
Constructor.
void setKuhn(int monomerId, double kuhn)
Set the statistical segment length for one monomer type.
void setSolventSize(int solventId, double size)
Set the size (steric volume) for a solvent species.
void clearUnitCellData()
Clear all data that depends on the unit cell parameters.
void setVMonomer(double vMonomer)
Set the monomer reference volume for the mixture.
void setPhiSolvent(int solventId, double phi)
Set the volume fraction for a solvent species.
~MixtureModifierReal()
Destructor.
void setPhiPolymer(int polymerId, double phi)
Set the volume fraction for a polymer species.
void associate(MT &mixture)
Create associations with a Mixture.
void setMuSolvent(int solventId, double mu)
Set the chemical for a solvent species.
void setMuPolymer(int polymerId, double mu)
Set the chemical for a polymer species.
void setBlockLength(int polymerId, int blockId, double length)
Set the length for a block of a block polymer.
#define UTIL_CHECK(condition)
Assertion macro suitable for serial or parallel production code.
Periodic fields and crystallography.
PSCF package top-level namespace.