Commit graph

2938 commits

Author SHA1 Message Date
Harry Moffat
1ab5f6725a Utility commit
- doxygen updates
   - started filling in copy constructors, assignment operator, and dupl function.
2009-12-17 22:13:14 +00:00
John Hewson
d38eea717a Updating Doxygen comments 2009-12-17 19:07:53 +00:00
John Hewson
9782ac76e8 Minor edits 2009-12-16 00:29:32 +00:00
John Hewson
8e8c7ec38f Added methods to compute current and conductivity.
Fixed bug in Stefan_Maxwell_Solve

Adding lots of comments to LiquidTransport
2009-12-16 00:27:39 +00:00
John Hewson
debcff82d9 Added a pointer to a Transport object to the
Phase class.  This allows a ThermoPhase object
to know what Transport object it is associated with.
2009-12-15 21:43:34 +00:00
Harry Moffat
0d6e6bd10b Doxygen update
- No code changes were made.
2009-12-13 18:03:53 +00:00
Harry Moffat
ccd01f5125 Doxygen update
-> no source code changed.
2009-12-13 17:30:36 +00:00
Harry Moffat
d99352f3d1 Doxygen Updates - no changes to the code 2009-12-12 00:15:00 +00:00
Harry Moffat
6b1a1ac27f Merged changes from the trunk. 2009-12-11 15:27:02 +00:00
Harry Moffat
321d387930 MetalSHEelectrons
Added a built-in type to handle electrons in metals that
    follow the SHE convention.

    Took out electrodeElectron, since it was hidden and not used.

    MetalSHEelectrons have a standard concentration of 1, instead
    of the previous treatment where SHE electrons had a standard
    concentration equal to the concentration of an ideal gas.
2009-12-11 01:32:26 +00:00
Harry Moffat
204f6bff33 Made the destructor virtual 2009-12-11 01:19:09 +00:00
Harry Moffat
9b90beb0e0 Merged changes from LiquidTransportDevelopment
There were two changes:

Additions to support some reversible reactions which have fractional
stoichiometries. These were not allowed previously. However, if
the species with fractional stoichiometries are in single-species
phases, this is ok, and actually necessary for some solid-phase
reactions.

Removed comments from DEBUG_MODE about about too high or low an activation
for electrode reactions.
2009-12-10 23:20:44 +00:00
Harry Moffat
9c6080e3c9 Turned on keyword substitution in the cpp files. 2009-12-09 17:50:27 +00:00
Harry Moffat
6d02467b7e Added the change for the bugfix to HMWSoln to the static branch
The function getActivityConcentration in the HMWSoln object had
a bug in it that caused it to be incompatible with standardConcentration()
and getActivities(). This meant that the ROP in kinetics managers
for this object was being calculated incorrectly.

This is now fixed.
2009-12-09 17:34:13 +00:00
Harry Moffat
20c74f21af Added the change for the bugfix to HMWSoln to the main branch.
The function getActivityConcentration in the HMWSoln object had
a bug in it that caused it to be incompatible with standardConcentration
and getActivities(). This meant that the ROP in kinetics managers
for this object was being calculated incorrectly.
2009-12-09 17:29:23 +00:00
Harry Moffat
1687ecaf1b Bug fix involving kinetics operators that use HMWSoln.
The member function getActivityConcentration() calculated the
   standard concentrations for solute species incorrectly. This
   caused the reaction rates of progress for kinetics operations 
   involving HMWSoln to be calculated incorrectly. In particular,
   equilibrium constants (which were and are correct) 
   were not compatible with forward vs.
   reverse ROP's.

   I fixed this error, and worked on more documentation of 
   generalized activity concentrations.
2009-12-09 16:52:16 +00:00
Harry Moffat
392683283a An initial implemention of a string representation of the
phase eos type.  We've not had this until now. 

The idea here is to have a 1 to 1 mapping between an
eosType int and a string, which can be used for writing output.
2009-12-08 17:36:40 +00:00
Harry Moffat
0e85b295cc An initial implementation of a string function that returns
the eosType(). This is something that we've been lacking.
2009-12-08 17:33:06 +00:00
Harry Moffat
47aba7b3fd Took out the FtnTransport.h file. It's no longer used 2009-12-07 17:36:29 +00:00
Harry Moffat
2c712b8c56 Merges from the Trunk. 2009-12-06 19:25:59 +00:00
Harry Moffat
da0cb495c2 Merging trunk changes into the branch 2009-12-06 19:04:54 +00:00
Harry Moffat
443ccf0af5 Added ignore files. 2009-12-06 18:14:40 +00:00
Harry Moffat
6842b761db Added more ignore files. 2009-12-06 18:13:11 +00:00
Harry Moffat
380a10a863 Added another function
initAllPts() 
to handle shallow pointer concerns.
2009-12-06 18:03:35 +00:00
Harry Moffat
a6a6761eae added another function 2009-12-06 18:02:24 +00:00
Harry Moffat
1756f4a65e changes in comments. 2009-12-06 18:01:43 +00:00
Harry Moffat
fe6f8a29d0 Fixed error in the assignment operator. 2009-12-06 18:00:18 +00:00
Harry Moffat
646d31f8be Fixed an error in the assignment operator. 2009-12-06 17:59:27 +00:00
Harry Moffat
05753b6ef1 Fixed an Error in the assignment operator. 2009-12-06 17:58:08 +00:00
Harry Moffat
4f66d852b5 Added more expressive comments. 2009-12-06 17:56:45 +00:00
Harry Moffat
1a3af47eb9 took out checkMFSum() which is inappropriate in that context. 2009-12-06 17:55:43 +00:00
Harry Moffat
ae22fd8aca Added more initializations 2009-12-06 17:54:24 +00:00
Harry Moffat
55a743c2c0 Added more initializations 2009-12-06 17:53:44 +00:00
Harry Moffat
4f3715e119 Added more initializations 2009-12-06 17:52:51 +00:00
Harry Moffat
951420155d Added more initializations 2009-12-06 17:52:04 +00:00
Harry Moffat
b0e4592e77 Added ignore files. 2009-12-05 23:22:43 +00:00
Harry Moffat
50ae4a28b9 Added ignore files. 2009-12-05 23:21:32 +00:00
Harry Moffat
e09bf8c244 Added a note about deprecation. 2009-12-05 23:18:36 +00:00
Harry Moffat
1922aa9fe0 Took executable prop off these files. 2009-12-05 22:42:07 +00:00
Harry Moffat
fc14dfe7f7 Added comments. 2009-12-05 22:40:10 +00:00
Harry Moffat
b229d1d5f9 Added a couple of files. 2009-12-05 22:38:56 +00:00
Harry Moffat
7b3b9b186a Transfering bugfixes from liquidTransport to the main branch.
This mainly involved fixing the copy and assignment operators
for the IonsFromNeutralVPSSTP operator.

Added docs for PDSS_SSVol

Turned on keyword substitution
2009-12-05 19:08:43 +00:00
Harry Moffat
b6c6d090f6 Expanded the capability of getFloatArray to read the current XML node
or a child node with a specified name. Before it would just read
an XML node named floatArray.
2009-12-05 15:40:33 +00:00
John Hewson
9a142cfd87 Added "LiquidTransport.h" to the files included under transport.h 2009-12-02 23:07:43 +00:00
Harry Moffat
1f9d937d15 Fixed errors in the copy and assignment operator functions
for the IonsFromNeutralVPSSTP object.
2009-12-02 18:06:09 +00:00
Harry Moffat
c0249fa3d2 Modified TransportParams to eliminate a warning message due to the
constructor initialization list being out of order.
2009-12-02 02:07:02 +00:00
John Hewson
2cfa85402c Added parsing of velocityBasis from XML
<transport> 
	<speciesDiffusivity>
		<velocityBasis basis="mass">
Other valid values are "mole" or a species name.
This is loaded into LiquidTransportParams and then copied into
LiquidTransport in the initLiquidTransport() method.
2009-11-30 23:41:38 +00:00
John Hewson
4cee810c18 Added member to TransportBase to allow specification of the reference
velocity.  This allows selection of a mass-averaged, mole-averaged or
solvent specified reference velocity using the member m_velocityBasis
or the methods setVelocityBasis() and getVelocityBasis().  Parsing of
input needs to  be added for this still.  An enum has been added 
  enum VelocityBasis {
    VB_MOLEAVG = -2,
    VB_MASSAVG = -1  };
Other values can correspond to species indices.

In LiquidTransport, the Stefan Maxwell solve now checks to see what
the m_velocityBasis member says the reference velocity should be and
fills the matrix accordingly.  To allow mass averaged we have added
members m_massfracs and m_massfracs_tran.  

Added methods to extract the diffusion velocity in a similar manner to
the diffusive fluxes.  The diffusion velocity will be needed to not
force the porosity/tortuosity into the Transport classes for
porous flow.  These methods are getSpeciesVdiff() and
getSpeciesVdiffES().
2009-11-30 23:21:19 +00:00
John Hewson
36c19bd3a1 In LiquidTransport, we have changed the model for transport property
mixing.  Previously there was a LiquidTranMixingModel specification
and one or more matrices to describe interactions. For example, we had
the following for viscosity:
LiquidTranMixingModel viscMixModel;
DenseMatrix m_visc_Eij;
DenseMatrix m_visc_Sij;

The new model puts all of this into a new class
LiquidTranInteraction.  This class is built in the TransportFactory
and loaded into LiquidTransport Params.  In
LiquidTransport::initLiquid() pointers to these objects are
transferred to the following members:
    LiquidTranInteraction *m_viscMixModel;
    LiquidTranInteraction *m_lambdaMixModel;
    LiquidTranInteraction *m_diffMixModel;
    LiquidTranInteraction *m_radiusMixModel;

With these, the structure of methods that compute the mixture
transport properties is greatly simplified.  It should be possible to
only call these interaction models (they take as arguments the vectors
of individual species models that were previously added), but I need
to check this still.

I have also removed all binary diffusion coefficient matrices except
for m_bdiff.  Mainly this means that I removed the m_DiffCoeff_StefMax
member. Also removed is m_logViscSpecies[k] which was used only in the
mixture viscosity computation now handles outside.
2009-11-30 18:54:31 +00:00
John Hewson
d5dd5d7b22 Added mapping,m_LTImodelMap, between LiquidTranMixingModel and the
model name.

Added new method to build LiquidTranInteraction objects.
    virtual LiquidTranInteraction* newLTI( const XML_Node &trNode, 
					   TransportPropertyList tp_ind, 
					   LiquidTransportParams& trParam) ;
This methods calls teh new operator and the init() method for those
objects.  It also call the setParameters() method for those objects
that require additional trParam access.

In TransportFactory::getLiquidInteractionsTransportData() the majority
of the work is done by a switch statement that fills the different
LiquidTranInteraction* in LiquidTransportParams by calling newLTI().
The switch statement is over the type of transport property
(i.e. viscosity).  After some debugging checks we can remove the rest
of that method. (all of the XML node parsing  is moved to the
LiquidTranInteraction constructor.
2009-11-30 18:53:40 +00:00