2 #ifndef INCOMPRESSIBLE_BASE_H
3 #define INCOMPRESSIBLE_BASE_H
64 bool checkCoefficients(std::vector< std::vector<double> >
const& coefficients,
unsigned int rows,
unsigned int columns);
80 DEPRECATED(
double simplePolynomial(std::vector<double>
const& coefficients,
double T));
81 DEPRECATED(
double simplePolynomial(std::vector<std::vector<double> >
const& coefficients,
double x,
double T));
87 double simplePolynomialInt(std::vector<double>
const& coefficients,
double T);
90 double simplePolynomialInt(std::vector<double>
const& coefficients,
double T1,
double T0);
92 double simplePolynomialInt(std::vector<std::vector<double> >
const& coefficients,
double x,
double T);
94 double simplePolynomialInt(std::vector<std::vector<double> >
const& coefficients,
double x,
double T1,
double T0);
100 double simpleFracInt(std::vector<double>
const& coefficients,
double T);
103 double simpleFracInt(std::vector<double>
const& coefficients,
double T1,
double T0);
105 double simpleFracInt(std::vector<std::vector<double> >
const& coefficients,
double x,
double T);
107 double simpleFracInt(std::vector<std::vector<double> >
const& coefficients,
double x,
double T1,
double T0);
117 double factorial(
double nValue);
119 double binom(
double nValue,
double nValue2);
120 std::vector<double> fracIntCentralDvector(
int m,
double T,
double Tbase);
121 std::vector<double> fracIntCentralDvector(
int m,
double T1,
double T0,
double Tbase);
123 double fracIntCentral(std::vector<double>
const& coefficients,
double T,
double Tbase);
125 double fracIntCentral(std::vector<double>
const& coefficients,
double T1,
double T0,
double Tbase);
133 double baseHorner(std::vector<double>
const& coefficients,
double T);
134 double baseHorner(std::vector< std::vector<double> >
const& coefficients,
double x,
double T);
136 double baseHornerInt(std::vector<double>
const& coefficients,
double T);
138 double baseHornerInt(std::vector<double>
const& coefficients,
double T1,
double T0);
140 double baseHornerInt(std::vector<std::vector<double> >
const& coefficients,
double x,
double T);
142 double baseHornerInt(std::vector<std::vector<double> >
const& coefficients,
double x,
double T1,
double T0);
144 double baseHornerFra(std::vector<double>
const& coefficients,
double T);
146 double baseHornerFra(std::vector<double>
const& coefficients,
double T1,
double T0);
148 double baseHornerFra(std::vector<std::vector<double> >
const& coefficients,
double x,
double T);
150 double baseHornerFra(std::vector<std::vector<double> >
const& coefficients,
double x,
double T1,
double T0);
161 std::vector<double> integrateCoeffs(std::vector<double>
const& coefficients);
162 std::vector< std::vector<double> > integrateCoeffs(std::vector< std::vector<double> >
const& coefficients,
bool axis);
170 DEPRECATED(std::vector<double> deriveCoeffs(std::vector<double>
const& coefficients));
171 DEPRECATED(std::vector< std::vector<double> > deriveCoeffs(std::vector< std::vector<double> >
const& coefficients,
unsigned int axis));
178 double integrateIn2Steps(std::vector<double>
const& coefficients,
double T);
181 double integrateIn2Steps(std::vector<double>
const& coefficients,
double T1,
double T0);
183 double integrateIn2Steps(std::vector< std::vector<double> >
const& coefficients,
double x,
double T,
bool axis);
185 double integrateIn2Steps(std::vector< std::vector<double> >
const& coefficients,
double x,
double T1,
double T0);
187 double fracIntIn2Steps(std::vector<double>
const& coefficients,
double T);
189 double fracIntIn2Steps(std::vector<double>
const& coefficients,
double T1,
double T0);
191 double fracIntIn2Steps(std::vector<std::vector<double> >
const& coefficients,
double x,
double T);
193 double fracIntIn2Steps(std::vector<std::vector<double> >
const& coefficients,
double x,
double T1,
double T0);
195 double fracIntCentral2Steps(std::vector<std::vector<double> >
const& coefficients,
double x,
double T,
double Tbase);
197 double fracIntCentral2Steps(std::vector<std::vector<double> >
const& coefficients,
double x,
double T1,
double T0,
double Tbase);
207 double polyval(std::vector<double>
const& coefficients,
double x){
212 return baseHorner(coefficients,x);
219 double polyval(std::vector< std::vector<double> >
const& coefficients,
double x,
double y){
221 return baseHorner(coefficients,x,y);
227 double polyint(std::vector<double>
const& coefficients,
double T){
229 return baseHornerInt(coefficients,T);
237 double polyint(std::vector<double>
const& coefficients,
double T1,
double T0){
239 return baseHornerInt(coefficients,T1,T0);
247 double polyint(std::vector< std::vector<double> >
const& coefficients,
double x,
double T){
249 return baseHornerInt(coefficients,x,T);
258 double polyint(std::vector< std::vector<double> >
const& coefficients,
double x,
double T1,
double T0){
260 return baseHornerInt(coefficients,x,T1,T0);
267 double polyfracint(std::vector<double>
const& coefficients,
double T){
269 return baseHornerFra(coefficients,T);
277 double polyfracint(std::vector<double>
const& coefficients,
double T1,
double T0){
280 return fracIntIn2Steps(coefficients,T1,T0);
287 double polyfracint(std::vector< std::vector<double> >
const& coefficients,
double x,
double T){
289 return baseHornerFra(coefficients,x,T);
298 double polyfracint(std::vector< std::vector<double> >
const& coefficients,
double x,
double T1,
double T0){
300 return baseHornerFra(coefficients,x,T1,T0);
309 return fracIntCentral(coefficients,T,Tbase);
317 double polyfracintcentral(std::vector<double>
const& coefficients,
double T1,
double T0,
double Tbase){
318 return fracIntCentral(coefficients,T1,T0,Tbase);
326 double polyfracintcentral(std::vector< std::vector<double> >
const& coefficients,
double x,
double T,
double Tbase){
327 return fracIntCentral2Steps(coefficients,x,T,Tbase);
336 double polyfracintcentral(std::vector< std::vector<double> >
const& coefficients,
double x,
double T1,
double T0,
double Tbase){
337 return fracIntCentral2Steps(coefficients,x,T1,T0,Tbase);
346 double expval(std::vector<double>
const& coefficients,
double T,
int n);
353 double expval(std::vector< std::vector<double> >
const& coefficients,
double x,
double T,
int n);
double polyfracint(std::vector< double > const &coefficients, double T)
double polyint(std::vector< double > const &coefficients, double T1, double T0)
The base class for incompressible fluids only.
double polyint(std::vector< std::vector< double > > const &coefficients, double x, double T1, double T0)
double polyfracintcentral(std::vector< double > const &coefficients, double T, double Tbase)
std::string getReference() const
double polyfracintcentral(std::vector< double > const &coefficients, double T1, double T0, double Tbase)
std::string getName() const
double polyint(std::vector< double > const &coefficients, double T)
double polyint(std::vector< std::vector< double > > const &coefficients, double x, double T)
std::string get_name() const
double getTminPsat() const
Fluid is the abstract base class that is employed by all the other fluids.
std::string getDescription() const
std::vector< double > x(ncmax, 0)
double polyfracint(std::vector< std::vector< double > > const &coefficients, double x, double T)
double expval(std::vector< double > const &coefficients, double T, int n)
double polyfracint(std::vector< std::vector< double > > const &coefficients, double x, double T1, double T0)
double polyfracintcentral(std::vector< std::vector< double > > const &coefficients, double x, double T, double Tbase)
bool checkCoefficients(std::vector< double > const &coefficients, unsigned int n)
Basic checks for coefficient vectors.
double polyval(std::vector< double > const &coefficients, double x)
double polyval(std::vector< std::vector< double > > const &coefficients, double x, double y)
virtual ~IncompressibleClass()
double polyfracintcentral(std::vector< std::vector< double > > const &coefficients, double x, double T1, double T0, double Tbase)
double polyfracint(std::vector< double > const &coefficients, double T1, double T0)
void setDebug(bool debug)