PhreeqcUsers Discussion Forum

Registrations currently disabled due to excessive spam. Please email phreeqcusers at gmail.com to request an account.
Welcome Guest
 

  • Forum Home
  • Login
  • Register

  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • Internal running mechanics of PHREEQCRM method RM_SpeciesConcentrations2Module
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: Internal running mechanics of PHREEQCRM method RM_SpeciesConcentrations2Module  (Read 3189 times)

Yongqiang

  • Top Contributor
  • Posts: 131
Internal running mechanics of PHREEQCRM method RM_SpeciesConcentrations2Module
« on: 13/12/23 01:57 »
Quote
IRM_RESULT RM_SpeciesConcentrations2Module   (   int    id,
double *    species_conc
)      
Set solution concentrations in the reaction cells based on the vector of aqueous species concentrations (species_conc). This method is intended for use with multicomponent-diffusion transport calculations, and RM_SetSpeciesSaveOn must be set to true. The list of aqueous species is determined by RM_FindComponents and includes all aqueous species that can be made from the set of components. The method determines the total concentration of a component by summing the molarities of the individual species times the stoichiometric coefficient of the element in each species. Solution compositions in the reaction cells are updated with these component concentrations.

Hi David,

I don't understand the sentence:
Quote
The method determines the total concentration of a component by summing the molarities of the individual species times the stoichiometric coefficient of the element in each species.
What is the stoichiometric coefficient? Is there any method to output the value of stoichiometric coefficient?

Thanks,
Michael
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4211
Re: Internal running mechanics of PHREEQCRM method RM_SpeciesConcentrations2Module
« Reply #1 on: 13/12/23 05:39 »
For the species ZnCl3-, the stoichiometric coefficient of Zn is 1, and Cl is 3. For example the total Cl would be calculated as 1*(Cl-) + 1*(ZnCl+) + 2*(ZnCl2) + 3*ZnCl3- + ... or (Cl) = sum(b(i,Cl)*m(i)), where b(i,Cl) is the stoichiometric coefficient for Cl in the ith species (possibly 0) and m(i) is the molarity of the ith species.

C++ has a method to get the stoichiometry: GetSpeciesStoichiometry(), but the method is not implemented in C or Fortran.

It is also possible to get the stoichiometry of species through USER_PUNCH and  Basic functions SYS("aq"...), which provides a list of species, and  SPECIES_FORMULA$(...), which provides the elements and stoichiometric coefficients for elements in the species.
Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • Internal running mechanics of PHREEQCRM method RM_SpeciesConcentrations2Module
 

  • SMF 2.0.19 | SMF © 2021, Simple Machines | Terms and Policies
  • XHTML
  • RSS
  • WAP2