PSCF v1.4.0
SolventSpecies.h
1#ifndef PSCF_SOLVENT_SPECIES_H
2#define PSCF_SOLVENT_SPECIES_H
3
4/*
5* PSCF - Polymer Self-Consistent Field
6*
7* Copyright 2015 - 2025, The Regents of the University of Minnesota
8* Distributed under the terms of the GNU General Public License.
9*/
10
11#include <pscf/chem/Species.h> // base class
12
13namespace Pscf {
14
15 using namespace Util;
16
33 template <typename WT = double>
34 class SolventSpecies : public Species<WT>
35 {
36
37 public:
38
43
47 virtual ~SolventSpecies() = default;
48
54 virtual void readParameters(std::istream& in);
55
58
65
75 void setSize(double size);
76
80
84 int monomerId() const;
85
89 double size() const;
90
92
93 private:
94
96 int monomerId_;
97
99 double size_;
100
101 };
102
103 // Inline member functions
104
105 /*
106 * Get the monomer type id.
107 */
108 template <typename WT> inline
110 { return monomerId_; }
111
112 /*
113 * Get the size (number of monomers) in this block.
114 */
115 template <typename WT> inline
117 { return size_; }
118
119 // Explicit template instantiation declaration
120 extern template class SolventSpecies<double>;
121}
122#endif
Descriptor for a solvent species.
SolventSpecies()
Constructor.
void setMonomerId(int monomerId)
Set the monomer id for this solvent.
virtual ~SolventSpecies()=default
Destructor.
virtual void readParameters(std::istream &in)
Read parameters and initialize.
void setSize(double size)
Set the molecular volume of this solvent species.
PSCF package top-level namespace.