21 std::vector< std::vector<BiCubicCellClass> >
cells;
88 double check_randomly(
long iParam,
unsigned int N, std::vector<double> *
p, std::vector<double> *EOSv, std::vector<double> *TTSE);
121 std::vector<double>
h,
p;
139 void matrix_to_file(std::string fName, std::vector< std::vector<double> > *A);
142 void matrix_from_file(std::string fName, std::vector< std::vector<double> > *A);
176 double evaluate(
long iParam,
double p,
double logp,
double h);
182 bool within_range(
long iInput1,
double Input1,
long iInput2,
double Input2);
227 double check_randomly(
long iParam,
unsigned int N, std::vector<double> *
h, std::vector<double> *
p, std::vector<double> *EOSv, std::vector<double> *TTSE);
std::vector< std::vector< double > > d2Tdhdp
std::vector< double > dTdp
std::vector< std::vector< double > > s
std::vector< double > d2hdp2
void nearest_neighbor_ph(int i, int j, double *T0, double *rho0)
std::vector< std::vector< double > > d2sdh2
std::vector< double > * bicubic_cell_coeffs_Trho(long iParam, int i, int j)
double matrix_vector_product(std::vector< double > *x, std::vector< double > *y, double yy)
void nearest_good_neighbor_Trho_interpolate(int *i, int *j)
std::vector< double > alpha_rho_hp
std::vector< double > rho
double interpolate_bicubic_ph(long iParam, double p, double logp, double h)
std::vector< double > alpha_T_hp
void nearest_good_neighbor_Trho(int *i, int *j)
double evaluate(long iParam, double p, double logp, double h)
std::vector< std::vector< double > > d2sdTdrho_Trho
double build(double pmin, double pmax, TTSETwoPhaseTableClass *other=NULL)
std::vector< std::vector< double > > h_Trho
std::vector< double > dhdp
double check_randomly(long iParam, unsigned int N, std::vector< double > *p, std::vector< double > *EOSv, std::vector< double > *TTSE)
std::vector< std::vector< double > > dhdrho_Trho
void nearest_good_neighbor_ph_interpolate(int *i, int *j)
std::vector< double > dsdp
std::vector< std::vector< double > > rho
std::vector< std::vector< double > > T
std::vector< double > alpha_s_Trho
std::vector< double > d2Tdp2
std::vector< double > alpha_s_hp
std::vector< std::vector< double > > p_Trho
std::vector< double > alpha_h_Trho
BiCubicCellsContainerClass bicubic_cells
double bicubic_evaluate_one_other_input(long iInput1, double Input1, long iOther, double Other)
std::vector< std::vector< double > > k_Trho
void set_size_Trho(unsigned int NT=100, unsigned int Nrho=100)
Set the sizes of the matrices with Trho as inputs.
std::vector< std::vector< double > > dkdrho_Trho
~TTSETwoPhaseTableClass()
Destructor.
std::vector< std::vector< double > > dpdT_Trho
TTSETwoPhaseTableClass * SatL
std::vector< double > alpha_k_Trho
double interpolate_bicubic_Trho(long iParam, double T, double rho, double logrho)
std::vector< std::vector< double > > dTdp
std::vector< std::vector< double > > dmudrho_Trho
std::vector< double > alpha_p_Trho
void bicubic_cell_coordinates_Trho(double Tval, double rho, double logrhoval, int *i, int *j)
std::vector< std::vector< double > > mu_Trho
double evaluate_first_derivative(long iOF, long iWRT, long iCONSTANT, double p, double logp, double h)
Fluid is the abstract base class that is employed by all the other fluids.
void bicubic_cell_coordinates_ph(double hval, double p, double logpval, int *i, int *j)
std::vector< std::vector< double > > dkdT_Trho
std::vector< std::vector< double > > d2rhodp2
std::vector< std::vector< double > > d2sdT2_Trho
std::vector< std::vector< double > > dmudT_Trho
bool within_range(long iInput1, double Input1, long iInput2, double Input2)
See if the inputs are within range.
std::vector< std::vector< BiCubicCellClass > > cells
std::vector< std::vector< double > > dsdrho_Trho
std::vector< std::vector< double > > dhdT_Trho
std::vector< std::vector< double > > dsdp
double check_randomly(long iParam, unsigned int N, std::vector< double > *h, std::vector< double > *p, std::vector< double > *EOSv, std::vector< double > *TTSE)
double build_ph(double hmin, double hmax, double pmin, double pmax, TTSETwoPhaseTableClass *SatL=NULL, TTSETwoPhaseTableClass *SatV=NULL)
std::vector< double > x(ncmax, 0)
std::vector< std::vector< double > > drhodh
TTSETwoPhaseTableClass()
Default Instantiator.
void write_dotdrawing_tofile(char fName[])
Write a representation of the ph surface to file with O in each "good" spot and "X" in each "bad" one...
std::vector< std::vector< double > > s_Trho
std::vector< std::vector< double > > d2sdrho2_Trho
std::vector< double > alpha_bicubic
std::vector< std::vector< double > > d2Tdh2
std::vector< double > logrho
std::vector< std::vector< double > > d2kdrho2_Trho
bool within_range_one_other_input(long iInput1, double Input1, long iOther, double Other, int buf)
void update_saturation_boundary_indices()
void set_size(unsigned int N)
std::vector< std::vector< double > > d2pdrho2_Trho
std::vector< double > rho_Trho
double evaluate(long iParam, double p)
std::vector< std::vector< double > > drhodp
std::vector< std::vector< double > > d2mudTdrho_Trho
double evaluate_T(double T)
void vector_from_file(std::string fName, int N, std::vector< double > *A)
std::vector< double > d2rhodp2
TTSETwoPhaseTableClass * SatV
void write_all_to_file(std::string root_path=std::string())
std::vector< std::vector< double > > d2rhodhdp
void update_cell_validity()
double evaluate_randomly(long iParam, unsigned int N)
std::vector< std::vector< double > > d2mudT2_Trho
std::vector< std::vector< double > > d2hdrho2_Trho
double evaluate_randomly(long iParam, unsigned int N)
std::vector< std::vector< double > > d2mudrho2_Trho
double build_Trho(double Tmin, double Tmax, double rhomin, double rhomax, TTSETwoPhaseTableClass *SatL, TTSETwoPhaseTableClass *SatV)
std::vector< std::vector< double > > d2Tdp2
bool read_all_from_file(std::string root_path)
double bicubic_evaluate_first_derivative_ph(long iOF, long iWRT, long iCONSTANT, double p, double logp, double h)
void set_size_ph(unsigned int Np=100, unsigned int Nh=100)
Set the sizes of the matrices with h,p as inputs.
std::vector< double > d2sdp2
std::vector< std::vector< double > > dsdT_Trho
std::vector< double > z_bicubic
std::vector< double > drhodp
std::vector< std::vector< double > > d2sdhdp
std::vector< double > * bicubic_cell_coeffs_ph(long iParam, int i, int j)
std::vector< double > logp
double evaluate_sat_derivative(long iParam, double p)
bool enable_writing_tables_to_files
void matrix_to_file(std::string fName, std::vector< std::vector< double > > *A)
std::vector< std::vector< double > > d2kdTdrho_Trho
std::vector< std::vector< double > > d2pdTdrho_Trho
std::vector< std::vector< double > > d2pdT2_Trho
std::vector< std::vector< double > > d2hdT2_Trho
std::vector< double > alpha_mu_Trho
void vector_to_file(std::string fName, std::vector< double > *A)
std::vector< std::vector< double > > dTdh
void nearest_good_neighbor(int *i, int *j)
std::vector< std::vector< double > > dsdh
TTSESinglePhaseTableClass()
std::vector< std::vector< double > > d2hdTdrho_Trho
std::vector< std::vector< double > > dpdrho_Trho
std::vector< std::vector< double > > d2kdT2_Trho
double evaluate_one_other_input(long iInput1, double Param1, long iOther, double Other)
Evaluate the TTSE using P,S or P,T.
double evaluate_Trho(long iOutput, double T, double rho, double logrho)
std::vector< double > T_Trho
std::vector< std::vector< double > > d2sdp2
std::vector< std::vector< double > > d2rhodh2
void matrix_from_file(std::string fName, std::vector< std::vector< double > > *A)