PhreeqcUsers Discussion Forum

Processes => Reactive transport modelling => Topic started by: johan_s12345 on August 15, 2019, 02:23:45 PM

Title: Using DUMP, _RAW & _MODIFY in coupled reactive transport
Post by: johan_s12345 on August 15, 2019, 02:23:45 PM
Dear phreeqc users,

we are coupling IPhreeqc (filebased) with a transport simulator and would like to now the correct way to use the _RAW and _MODIFY to pass data between IPhreeqc runs.

Basically, you can use DUMP to store all internal data of a Phreeqc run in a file that can be called in another Phreeqc run via INCLUDE$.
I created a "dry run" example where I would like to output all information of the current Phreeqc run in cell 1 to a file mydump and read and modify this in another run.
If I dry run this with a stand-alone Phreeqc version it results in the error:

"
Initializing...                                                                 
WARNING: Unknown input, no keyword has been specified.
"
I do not understand the cause of the error message because putting the content of mydump instead of "INCLUDE$ mydump" works well.

What is the difference?
Which keyword is requested call before "INCLUDE$ mydump"? (inputs below)


non-working example:
--------------------
DATABASE phreeqc.dat

SOLUTION 1
temp 25
pressure 1
pH 7.62613
units mol/kgw
Cl 0.3
C 0.0004759
S 0.014
Na 0.23985
Ca 0.023819
Mg 0.019449
K 0.0015979
Sr 0.00050917

EQUILIBRIUM_PHASES 1
Calcite 0.0 10

DUMP
-file mydump
-append false
-all

END


INCLUDES$ mydump
                 
SOLUTION_MODIFY              1
  -temp                      25
  -density                   1.0160812031386
  -totals
    C(4)                     0.0004759
    Ca                       0.0238171
    Cl                       0.4
    K                        0.00159754
    Mg                       0.019448
    Na                       0.239835
    S(6)                     0.014
    Sr                       0.000509125
  -pH                        7.62615

END

RUN_CELLS
   -cells 1

END
--------------------


working example:
--------------------
DATABASE phreeqc.dat

SOLUTION 1
temp 25
pressure 1
pH 7.62613
units mol/kgw
Cl 0.3
C 0.0004759
S 0.014
Na 0.23985
Ca 0.023819
Mg 0.019449
K 0.0015979
Sr 0.00050917

EQUILIBRIUM_PHASES 1
Calcite 0.0 10

DUMP
-file use_raw2.dmp
-append false
-all

END

#content of mydump:
SOLUTION_RAW                 1
  -temp                      25
  -pressure                  1
  -potential                 0
  -total_h                   111.01288623274
  -total_o                   55.563633088473
  -cb                        0.00052589579242727
  -density                   1.01111689593
  -totals
    C(4)                     0.00047590000000006
    Ca                       0.023819000000016
    Cl                       0.3
    K                        0.0015979
    Mg                       0.019449000000079
    Na                       0.23985
    S(6)                     0.014000000000017
    Sr                       0.00050917000000118
  -pH                        7.62613
  -pe                        4
  -mu                        0.36619908944892
  -ah2o                      0.98991121029527
  -mass_water                1
  -soln_vol                  1.0078541290546
  -total_alkalinity          0.00047634420773141
  -activities
    C(-4)                    -73.45592022327
    C(4)                     -6.2788314863802
    Ca                       -2.2167653719803
    Cl                       -0.69592893932733
    E                        -4
    H(0)                     -26.40226000018
    K                        -2.9781525383474
    Mg                       -2.277291223021
    Na                       -0.7645259540215
    O(0)                     -39.584287515246
    S(-2)                    -69.706857310054
    S(6)                     -2.7393025537303
    Sr                       -3.8904834016439
  -gammas
EQUILIBRIUM_PHASES_RAW       1
  # EXCHANGE_MODIFY candidates; use new_def=true #
  -new_def                   0
  -component                 Calcite
      # EQUILIBRIUM_PHASES_MODIFY candidate identifiers #
      -si                    0
      -moles                 10
      -force_equality        0
      -dissolve_only         0
      -precipitate_only      0
      # PPassemblage workspace variables #
      -si_org                0
      -delta                 0
      -initial_moles         0
      -totals               
  -eltList                   # List of all elements in phases and alternate reactions
    C                        1
    Ca                       1
    O                        3
  # PPassemblage workspace variables #
  -assemblage_totals
USE mix none
USE reaction none
USE reaction_temperature none
USE reaction_pressure none
                 
SOLUTION_MODIFY              1
  -temp                      25
  -density                   1.0160812031386
  -totals
    C(4)                     0.0004759
    Ca                       0.0238171
    Cl                       0.4
    K                        0.00159754
    Mg                       0.019448
    Na                       0.239835
    S(6)                     0.014
    Sr                       0.000509125
  -pH                        7.62615

END

RUN_CELLS
   -cells 1

END
--------------------

Best,
Title: Re: Using DUMP, _RAW & _MODIFY in coupled reactive transport
Post by: dlparkhurst on August 15, 2019, 07:02:45 PM
Sorry, sometimes PHREEQC is picky. INCLUDE$, not INCLUDES$
Title: Re: Using DUMP, _RAW & _MODIFY in coupled reactive transport
Post by: johan_s12345 on August 16, 2019, 07:34:17 AM
omg.

Thanks a lot for the hint.