vcs_volPhase update: more members are private

This commit is contained in:
Harry Moffat 2008-07-22 19:40:57 +00:00
parent 081f98bdbd
commit 3df90ebff6
5 changed files with 37 additions and 35 deletions

View file

@ -946,17 +946,11 @@ namespace VCSnonideal {
ne++;
}
/*
* Assign and malloc structures
*/
VolPhase->nElemConstraints = ne;
VolPhase->elemResize(ne);
VolPhase->ElName.resize(ne);
VolPhase->ElActive.resize(ne+1, 1);
VolPhase->m_elType.resize(ne, VCS_ELEM_TYPE_ABSPOS);
if (VolPhase->ChargeNeutralityElement >= 0) {
VolPhase->m_elType[VolPhase->ChargeNeutralityElement] =
@ -998,7 +992,7 @@ namespace VCSnonideal {
string ename = "E";
VolPhase->ElName[ne] = ename;
ne++;
VolPhase->nElemConstraints = ne;
VolPhase->elemResize(ne);
}
}

View file

@ -36,7 +36,7 @@ namespace VCSnonideal {
m_singleSpecies(true),
m_gasPhase(false),
m_eqnState(VCS_EOS_CONSTANT),
nElemConstraints(0),
m_numElemConstraints(0),
ChargeNeutralityElement(-1),
m_elemGlobalIndex(0),
NVolSpecies(0),
@ -98,7 +98,7 @@ namespace VCSnonideal {
m_singleSpecies(b.m_singleSpecies),
m_gasPhase(b.m_gasPhase),
m_eqnState(b.m_eqnState),
nElemConstraints(b.nElemConstraints),
m_numElemConstraints(b.m_numElemConstraints),
ChargeNeutralityElement(b.ChargeNeutralityElement),
NVolSpecies(b.NVolSpecies),
m_totalMolesInert(b.m_totalMolesInert),
@ -153,20 +153,20 @@ namespace VCSnonideal {
m_eqnState = b.m_eqnState;
NVolSpecies = b.NVolSpecies;
nElemConstraints = b.nElemConstraints;
m_numElemConstraints = b.m_numElemConstraints;
ChargeNeutralityElement = b.ChargeNeutralityElement;
ElName.resize(b.nElemConstraints);
for (int e = 0; e < b.nElemConstraints; e++) {
ElName.resize(b.m_numElemConstraints);
for (int e = 0; e < b.m_numElemConstraints; e++) {
ElName[e] = b.ElName[e];
}
ElActive = b.ElActive;
m_elType = b.m_elType;
FormulaMatrix.resize(nElemConstraints, NVolSpecies, 0.0);
for (int e = 0; e < nElemConstraints; e++) {
FormulaMatrix.resize(m_numElemConstraints, NVolSpecies, 0.0);
for (int e = 0; e < m_numElemConstraints; e++) {
for (int k = 0; k < NVolSpecies; k++) {
FormulaMatrix[e][k] = b.FormulaMatrix[e][k];
}
@ -242,8 +242,10 @@ namespace VCSnonideal {
}
/***************************************************************************/
void vcs_VolPhase::resize(int phaseNum, int nspecies, int numElem, const char *phaseName,
double molesInert) {
void vcs_VolPhase::resize(const int phaseNum, const int nspecies,
const int numElem, const char * const phaseName,
const double molesInert) {
#ifdef DEBUG_MODE
if (nspecies <= 0) {
plogf("nspecies Error\n");
std::exit(-1);
@ -252,7 +254,7 @@ namespace VCSnonideal {
plogf("phaseNum should be greater than 0\n");
std::exit(-1);
}
#endif
setTotalMolesInert(molesInert);
m_phi = 0.0;
m_phiVarIndex = -1;
@ -279,7 +281,7 @@ namespace VCSnonideal {
m_singleSpecies = true;
}
if (NVolSpecies == nspecies && numElem == nElemConstraints) {
if (NVolSpecies == nspecies && numElem == m_numElemConstraints) {
return;
}
@ -289,7 +291,7 @@ namespace VCSnonideal {
}
IndSpecies.resize(nspecies,-1);
IndSpecies.resize(nspecies, -1);
if ((int) ListSpeciesPtr.size() >= NVolSpecies) {
for (int i = 0; i < NVolSpecies; i++) {
@ -336,18 +338,14 @@ namespace VCSnonideal {
ElName.resize(numElemConstraints);
ElActive.resize(numElemConstraints, 1);
ElActive.resize(numElemConstraints+1, 1);
m_elType.resize(numElemConstraints, VCS_ELEM_TYPE_ABSPOS);
FormulaMatrix.resize(numElemConstraints, NVolSpecies, 0.0);
ElName.resize(numElemConstraints, "");
m_elemGlobalIndex.resize(numElemConstraints, -1);
nElemConstraints = numElemConstraints;
m_numElemConstraints = numElemConstraints;
}
/***************************************************************************/
@ -1317,15 +1315,20 @@ namespace VCSnonideal {
//! Returns the global index of the local element index for the phase
int vcs_VolPhase::elemGlobalIndex(const int e) const {
DebugAssertThrowVCS(e >= 0, " vcs_VolPhase::elemGlobalIndex") ;
DebugAssertThrowVCS(e < nElemConstraints, " vcs_VolPhase::elemGlobalIndex") ;
DebugAssertThrowVCS(e < m_numElemConstraints, " vcs_VolPhase::elemGlobalIndex") ;
return m_elemGlobalIndex[e];
}
//! Returns the global index of the local element index for the phase
void vcs_VolPhase::setElemGlobalIndex(const int eLocal, const int eGlobal) {
DebugAssertThrowVCS(eLocal >= 0, "vcs_VolPhase::setElemGlobalIndex");
DebugAssertThrowVCS(eLocal < nElemConstraints, "vcs_VolPhase::setElemGlobalIndex");
DebugAssertThrowVCS(eLocal < m_numElemConstraints, "vcs_VolPhase::setElemGlobalIndex");
m_elemGlobalIndex[eLocal] = eGlobal;
}
int vcs_VolPhase::nElemConstraints() const {
return m_numElemConstraints;
}
}

View file

@ -143,8 +143,9 @@ namespace VCSnonideal {
* @param phaseName String name for the phase
* @param molesInert kmoles of inert in the phase (defaults to zero)
*/
void resize(int phaseNum, int numSpecies, int numElem, const char *phaseName,
double molesInert = 0.0);
void resize(const int phaseNum, const int numSpecies,
const int numElem, const char * constphaseName,
const double molesInert = 0.0);
void elemResize(const int numElemConstraints);
@ -477,6 +478,8 @@ namespace VCSnonideal {
*/
void setElemGlobalIndex(const int eLocal, const int eGlobal);
int nElemConstraints() const;
private:
//! Evaluate the activity coefficients at the current conditions
@ -591,12 +594,14 @@ namespace VCSnonideal {
*/
int m_eqnState;
private:
//! Number of element constraints within the problem
/*!
* This is usually equal to the number of elements.
*/
int nElemConstraints;
int m_numElemConstraints;
public:
//! This is the element number for the charge neutrality
//! condition of the phase
/*!

View file

@ -237,7 +237,7 @@ namespace VCSnonideal {
*/
for (int iph = 0; iph < m_numPhases; iph++) {
volPhase = m_VolPhaseList[iph];
for (int e = 0; e < volPhase->nElemConstraints; e++) {
for (int e = 0; e < volPhase->nElemConstraints(); e++) {
if (volPhase->elemGlobalIndex(e) == ipos) {
volPhase->setElemGlobalIndex(e, jpos);
}

View file

@ -361,7 +361,7 @@ namespace VCSnonideal {
void VCS_PROB::addPhaseElements(vcs_VolPhase *volPhase) {
int e, eVP;
int foundPos = -1;
int neVP = volPhase->nElemConstraints;
int neVP = volPhase->nElemConstraints();
std::string en;
std::string enVP;
/*
@ -443,7 +443,7 @@ namespace VCSnonideal {
exit(-1);
}
double *const *const fm = volPhase->FormulaMatrix.baseDataAddr();
for (eVP = 0; eVP < volPhase->nElemConstraints; eVP++) {
for (eVP = 0; eVP < volPhase->nElemConstraints(); eVP++) {
e = volPhase->elemGlobalIndex(eVP);
#ifdef DEBUG_MODE
if (e < 0) {