Public Member Functions | Public Attributes | Private Attributes

Rock_i Class Reference

#include <Rock_i.h>

List of all members.

Public Member Functions

void setTk (CORBA::Double ltk)
 set T in Kelvins
void setPa (CORBA::Double lpa)
 set P in Pascals
void setlogfo2 (rock::dRock::fO2Type mode, CORBA::Double delta)
 set logfo2 mode and delNNO (default none)
void supressPhase (CORBA::Short iphase)
 supress phase number iphase. All suppressed by default.
void enablePhase (CORBA::Short iphase)
 enable phase number iphase. All supressed by default.
void setIsenthalpic (CORBA::Boolean i)
 put rock in isenthalpic mode (default 0);
void setIsentropic (CORBA::Boolean i)
 put rock in isentropic mode (default 0);
void setIsochoric (CORBA::Boolean i)
 put rock in isochoric mode (default 0);
void setBulkCompM (const CORBA::DoubleSeq &bc)
 set bulk composition in mole fraction. Values copied to internal array.
void setBulkCompW (const CORBA::DoubleSeq &bc)
 set bulk composition in weight%. Values copied to internal array.
void fractionateSolids (CORBA::Double scale)
 fractionate solids (scale = fraction removed) from system
void setVolume (CORBA::Double v)
 set system volume in J/Pa
void setEnthalpy (CORBA::Double h)
 set system enthalpy in J/
void setEntropy (CORBA::Double v)
 set system entropy in J/K
CORBA::Double getTk ()
 returns T in Kelvins
CORBA::Double getPa ()
 returns P in Pascals
CORBA::Short getNcomp ()
 returns number of rock components
CORBA::Short getNLiqComp ()
 returns number of liquid components
CORBA::Short getNSolPhases ()
 returns number of potential solid phases (suppressed and enabled)
char * getSolPhaseName (CORBA::Short iphase)
 returns name of solid phase i
char * getSolPhaseFormula (CORBA::Short iphase, CORBA::Short instance)
 returns formula of solid phase i
CORBA::Short getNSolComp (CORBA::Short iphase)
 returns number of components for phase i
char * getSolPhaseCompName (CORBA::Short iphase, CORBA::Short icomp)
char * getSolPhaseCompFormula (CORBA::Short iphase, CORBA::Short icomp)
char * getCompName (CORBA::Short i)
 returns pointer to name of bulk component (oxide)
char * getLiqCompName (CORBA::Short i)
 returns pointer to name of liquid component
CORBA::DoubleSeq * getLiqComp ()
 returns liquid composition in moles of liquid components
CORBA::DoubleSeq * getLiqCompWt ()
 returns liquid composition in wt% oxides
CORBA::DoubleSeq * getLiqMu ()
 returns liquid mu
CORBA::DoubleSeq * getLiqActivity ()
 returns liquid activities
CORBA::Short getNSatSolid ()
 Returns number of saturated solid phases.
CORBA::ShortSeq * getSatSolidList ()
 Returns list of indices for currently saturated solids.
CORBA::Short getSolComp (CORBA::Short iphase, CORBA::Short instance, CORBA::DoubleSeq_out sx)
CORBA::Short getSolCompWt (CORBA::Short iphase, CORBA::Short instance, CORBA::DoubleSeq_out sx)
CORBA::Short getSolMu (CORBA::Short iphase, CORBA::Short instance, CORBA::DoubleSeq_out smu)
CORBA::Double getAffinity (CORBA::Short iphase, CORBA::DoubleSeq_out x)
CORBA::Short getSolVbar (CORBA::Short iphase, CORBA::Short instance, CORBA::DoubleSeq_out svbar)
 Returns solid partial molar volumes in J/Pa. Returns 0 if not present.
CORBA::Double getlogfo2 ()
 get current log10fo2
CORBA::Double getlogfo2relative (rock::dRock::fO2Type mode)
 get current log10fo2 relative to buffer specified in mode
CORBA::DoubleSeq * getBulkCompM ()
 get bulk composition in moles
CORBA::DoubleSeq * getBulkCompW ()
 get bulk composition in grams
CORBA::Double getLiquidMass ()
 get liquid mass in gm
CORBA::Double getSolidMass ()
 get solid mass in gm
CORBA::Double getSolPhaseMass (CORBA::Short iphase, CORBA::Short instance)
CORBA::Double getVolume ()
 returns system volume in J/Pa
CORBA::Double getSolidGibbsFreeEnergyTotal ()
 returns Gibbs free energy of solids in J
CORBA::Double getSolidEnthalpyTotal ()
 returns enthalpy of solids in J
CORBA::Double getSolidEntropyTotal ()
 returns entropy of solids in J/K
CORBA::Double getSolidHeatCapacityTotal ()
 returns heat capacity of solids in J/K
CORBA::Double getSolidVolumeTotal ()
 returns volume of solids in J/Pa
CORBA::Double getSolidGibbsFreeEnergy (CORBA::Short iphase, CORBA::Short instance)
 returns Gibbs free energy of solid iphase in J
CORBA::Double getSolidEnthalpy (CORBA::Short iphase, CORBA::Short instance)
 returns enthalpy of solid iphase in J
CORBA::Double getSolidEntropy (CORBA::Short iphase, CORBA::Short instance)
 returns entropy of solid iphase in J/K
CORBA::Double getSolidHeatCapacity (CORBA::Short iphase, CORBA::Short instance)
 returns heat capacity of solid iphase in J/K
CORBA::Double getSolidVolume (CORBA::Short iphase, CORBA::Short instance)
 returns volume of solid iphase in J/Pa
CORBA::Double getSoliddVdT (CORBA::Short iphase, CORBA::Short instance)
 returns dVdT of solid iphase in J/(Pa*K)
CORBA::Double getSoliddVdP (CORBA::Short iphase, CORBA::Short instance)
 returns dVdP of solid iphase in J/(Pa^2)
CORBA::Double getDeltaOxygen ()
 returns moles of oxygen added/removed from system
CORBA::Double getOxygenGibbsFreeEnergy ()
 returns Oxygen Gibbs Free Energy in J/mol
CORBA::Double getOxygenEnthalpy ()
 returns Oxygen enthalpy in J/mol
CORBA::Double getOxygenEntropy ()
 returns Oxygen entropy in J/K-mol
CORBA::Double getOxygenHeatCapacity ()
 returns Oxygen heat capacity in J/K-mol
CORBA::Double getOxygenVolume ()
 returns Oxygen volume in J/Pa-mol
CORBA::Double getLiquidGibbsFreeEnergy ()
 returns liquid Gibbs free energy in J
CORBA::Double getLiquidEnthalpy ()
 returns liquid enthalpy in J
CORBA::Double getLiquidEntropy ()
 returns liquid entropy in J/K
CORBA::Double getLiquidHeatCapacity ()
 returns liquid heat capacity in J/K
CORBA::Double getLiquidVolume ()
 returns liquid volume in J/Pa
CORBA::Double getLiquiddVdT ()
 returns liquid dVdT in J/(Pa*K)
CORBA::Double getLiquiddVdP ()
 returns liquid dVdP in J/Pa^2
CORBA::Double getLiquidViscosity ()
 returns liquid viscosity in log10(poise)
CORBA::Short getPhaseNo (const char *)
 get integer value of solid phase corresponding to label
CORBA::Boolean isSingleComponent (CORBA::Short iphase)
 returns boolean indicating if phase iphase is single-component.
CORBA::Short getNumberCoexistPhase (CORBA::Short iphase)
 returns number of coexisting instances of phase iphase
CORBA::Short findRockLiquidus ()
 find liquidus temperature for this bulk composition and sets state
CORBA::Short equilibrateRock ()
 execute equilibration on current state
CORBA::LongLong getLastAccessTime ()
 get time of last object access (seconds from local reference)
CORBA::UShort isActive ()
 returns 1 if there are still active references to object
char * getStatus ()
 returns a string that idicates the status/state of the object
void remove ()
 cleanup and remove CORBA object

Public Attributes

int verbose
 boolean to indicate whether verbose output is required

Private Attributes

int active
 indicates that there are still active references to object
Rock * rp
 pointer to c++ Rock object
time_t lastAccessTime
 time (seconds) of last access (=time())
double * c
 generic space for translating double vectors
int * ix
 generic space for translating int vectors
char * status
 current status/state of the object

Detailed Description

Implemantation class for basic distributed phase. This is the interface between c++ Rock object and CORBA dRock object.

Id:
Rock_i.h,v 1.19 2007/09/19 21:26:45 kress Exp
Author:
Victor Kress
Revision:
1.19

Definition at line 16 of file Rock_i.h.


Member Function Documentation

CORBA::Double Rock_i::getAffinity ( CORBA::Short  iphase,
CORBA::DoubleSeq_out  x 
)

Returns affinity and composition guess for solid phase. If initial guess fails, Ghiorso's method will be used to try again.

Parameters:
iphase phase number
x estimate for mole fraction of components. Zeroed components will not be considered.
Returns:
affinity if undersaturated or zero if saturated
CORBA::Short Rock_i::getSolComp ( CORBA::Short  iphase,
CORBA::Short  instance,
CORBA::DoubleSeq_out  sx 
)

Returns solid composition in mol frac of phase components.

Parameters:
iphase phase number
instance phase instance index
sx double array to hold returned component moles.
Returns:
number of phase saturated or 0 if supressed or undersaturated.
CORBA::Short Rock_i::getSolCompWt ( CORBA::Short  iphase,
CORBA::Short  instance,
CORBA::DoubleSeq_out  sx 
)

Returns solid composition in wt% oxides.

Parameters:
iphase phase number
instance phase instance index
sx double array to hold returned oxide array.
Returns:
number of phase saturated or 0 if supressed or undersaturated.
CORBA::Short Rock_i::getSolMu ( CORBA::Short  iphase,
CORBA::Short  instance,
CORBA::DoubleSeq_out  smu 
)

Returns solid mu in Joules.

Parameters:
iphase phase number
instance phase instance index
smu double array to hold returned component potentials in Joules.
Returns:
number of phase saturated or 0 if supressed or undersaturated.
char* Rock_i::getSolPhaseCompFormula ( CORBA::Short  iphase,
CORBA::Short  icomp 
)

Returns pointer to the formula of a component in a solid phase

Parameters:
i phase index
j component index
Returns:
pointer to the name of a component in a solid phase
char* Rock_i::getSolPhaseCompName ( CORBA::Short  iphase,
CORBA::Short  icomp 
)

Returns pointer to the name of a component in a solid phase

Parameters:
i phase index
j component index
Returns:
pointer to the name of a component in a solid phase
CORBA::Double Rock_i::getSolPhaseMass ( CORBA::Short  iphase,
CORBA::Short  instance 
)

Returns mass in gm of saturated phase

Parameters:
iphase phase number
instance phase instance index
Returns:
mass in gm of phase in assemblage

The documentation for this class was generated from the following file: