David,
Hi -- I've been working with Jim Murray using PHREEQC for our
Environmental Modeling class. I think the class went pretty well; with
some fits and starts we definitely learned a lot more about the problem
implementation, especially using the TRANSPORT block.
We ran into the following problem trying to use the KINETICS block:
One of our students was working on a final project, her input files are
below (the simplest one first). She was trying to model an exponential
growth, and was running into the problem where PHREEQC was taking a long
time to do this calculation (it shouldn't take too long to do this?) and
her values were maxing out at whatever value she chose for the "formula"
for the organic matter, e.g., "phyto" and "12" in her first file.
We weren't sure if this was a coding problem, i.e., PHREEQC just doesn't
like the big numbers or if we just set up the problem wrong. Any input
you have would be very helpful.
Thanks again,
Jennifer
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jennifer W. Tonkin
Ph.D. Candidate
University of Washington
Department of Chemistry
Box 351700
Seattle, WA 98195-1700
Office: 416 Ocean Sciences Building
E-mail: jtonkin@xxxxxxxxxxxxxxxx
Tel: (206) 543-0632
Fax: (206) 685-3351
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
---------- Forwarded message ----------
Date: Fri, 1 Jun 2001 19:39:06 -0700 (PDT)
From: erin jennifer breckel <ebreckel@xxxxxxxxxxxxxxxx>
To: Jennifer Tonkin <jtonkin@xxxxxxxxxxxxxxxx>
Subject: phreeqc files
Hey Jennifer. Here are the three files I've been playing around with.
They are the really stripped donw version, one with everything and
multiple rate blocks, and one with everything and a single rate block.
Thanks for taking the time to look at these for me.
Erin
DATABASE C:\PROGRAM FILES\USGS\PHREEQCI2.3\phreeqc.dat
TITLE NPZ Model (Simple Version)
SOLUTION_MASTER_SPECIES
Phyto Phyto 0.0 Phyto 1.0
Zoo Zoo 0.0 Zoo 1.0
Ntot Ntot 0.0 Ntot 1.0
SOLUTION_SPECIES
Phyto = Phyto
log_k 0.0
Zoo = Zoo
log_k 0.0
Ntot = Ntot
log_k 0.0
SOLUTION 1
temp 25
pH 8.1
pe 4
redox pe
units mmol/l #mmol/m^3
density 1
Phyto 0.2268
Ntot 12.11
Zoo 0.1134
-water 1 # kg
RATES
Phytoplankton
-start
1 rem PARM(1) = phyto photosynthetic rate (day^-1)
2 rem PARM(2) = uptake half saturation constant (mmol N/m^3)
3 rem PARM(3) = grazing max specific ingestion rate (day^-1)
4 rem PARM(4) = half sat constant for grazer ingestion (mmol N/m^3)
5 rem PARM(5) = grazing threshold (mmol N/m^3)
6 rem PARM(6) = diffusivity (m^2/day)
7 rem PARM(7) = mixed layer depth (m)
10 Phyto = TOT("Phyto")
20 Growth = (PARM(1)*Phyto)
50 moles = (Growth) * (TIME/24)
200 SAVE moles
-end
KINETICS 1
Phytoplankton
-parms 0.93 0.5 1.3 0.2142 0.126 7.344 60
-formula Phyto 12
-steps 8765 in 1461 steps
INCREMENTAL_REACTIONS true
SELECTED_OUTPUT
-file Npz_h.sel
-reset false
-molalities Phyto
-time
END
DATABASE C:\PROGRAM FILES\USGS\PHREEQCI2.3\phreeqc.dat
TITLE NPZ Model (Multiple Rate Blocks)
SOLUTION_MASTER_SPECIES
Phyto Phyto 0.0 Phyto 1.0
Zoo Zoo 0.0 Zoo 1.0
Ntot Ntot 0.0 Ntot 1.0
SOLUTION_SPECIES
Phyto = Phyto
log_k 0.0
Zoo = Zoo
log_k 0.0
Ntot = Ntot
log_k 0.0
SOLUTION 1
temp 25
pH 8.1
pe 4
redox pe
units mmol/l #mmol/m^3
density 1
Phyto 0.2268
Ntot 12.11
Zoo 0.1134
-water 1 # kg
RATES
Phytoplankton
-start
1 rem PARM(1) = phyto photosynthetic rate (day^-1)
2 rem PARM(2) = uptake half saturation constant (mmol N/m^3)
3 rem PARM(3) = grazing max specific ingestion rate (day^-1)
4 rem PARM(4) = half sat constant for grazer ingestion (mmol N/m^3)
5 rem PARM(5) = grazing threshold (mmol N/m^3)
6 rem PARM(6) = diffusivity (m^2/day)
7 rem PARM(7) = mixed layer depth (m)
10 Phyto = TOT("Phyto")
20 Growth = ((PARM(1)*Ntot*Phyto)/(PARM(2)+Ntot))
30 Grazing = ((PARM(3)*max(Phyto-PARM(5),0)*Zoo)/(PARM(4)+Phyto-PARM(5)))
40 Diffusion = (Phyto*PARM(6))/(PARM(7)*PARM(7))
50 moles = (Growth) * (TIME/24)
200 SAVE moles
-end
Zooplankton
-start
1 rem PARM(1) = grazer growth efficiency
2 rem PARM(2) = grazing max specific ingestion rate (day^-1)
3 rem PARM(3) = grazing threshold (mmol N/m^3)
4 rem PARM(4) = half sat constant for grazer ingestion (mmol N/m^3)
5 rem PARM(5) = predation rate (day^-1)
6 rem PARM(6) = diffusivity (m^2/day)
7 rem PARM(7) = mixed layer depth (m)
10 Zoo = TOT("Zoo")
20 Growth = (PARM(1)*PARM(2)*max(Phyto-PARM(3),0)*Zoo)/(PARM(4)+Phyto-PARM(3))
30 Predation = PARM(5)*Zoo
40 Diffusion = (Zoo*PARM(6))/(PARM(7)*PARM(7))
50 moles = (Growth) * (TIME/24)
200 SAVE moles
-end
Nitrogen
-start
1 rem PARM(1) = phyto photosynthetic rate (day^-1)
2 rem PARM(2) = uptake half saturation constant (mmol N/m^3)
3 rem PARM(3) = grazing max specific ingestion rate (day^-1)
4 rem PARM(4) = half sat constant for grazer ingestion (mmol N/m^3)
5 rem PARM(5) = grazing threshold (mmol N/m^3)
6 rem PARM(6) = diffusivity (m^2/day)
7 rem PARM(7) = mixed layer depth (m)
8 rem PARM(8) = Nitrogen concentration at 120 m depth (mmol N/m^3)
15 Ntot = TOT("Ntot")
20 Uptake = ((PARM(1)*Ntot*Phyto)/(PARM(2)+Ntot))
30 Remineral = (0.3*(PARM(3)*max(Phyto-PARM(5),0)*Zoo)/(PARM(4)+Phyto-PARM(5)))
40 Diffusion = ((PARM(6))/(PARM(7)*PARM(7)))*(PARM(8)-Ntot)
50 moles = (-Uptake) * (TIME/24)
200 SAVE moles
-end
KINETICS 1
Phytoplankton
-parms 0.93 0.5 1.3 0.2142 0.126 7.344 60
-formula Phyto 1
Zooplankton
-parms 0.3 1.3 0.126 0.2142 0.07 7.344 60
-formula Zoo 1
Nitrogen
-parms 0.93 0.5 1.3 0.2142 0.126 7.344 60 23
-formula Ntot 1
-steps 8765 in 1461 steps
INCREMENTAL_REACTIONS true
SELECTED_OUTPUT
-file Npz_g.sel
-reset false
-molalities Phyto Zoo Ntot
-time
END
DATABASE C:\PROGRAM FILES\USGS\PHREEQCI2.3\phreeqc.dat
TITLE NPZ Model (1 RATE BLOCK)
SOLUTION_MASTER_SPECIES
Phyto Phyto 0.0 Phyto 1.0
Zoo Zoo 0.0 Zoo 1.0
Ntot Ntot 0.0 Ntot 1.0
SOLUTION_SPECIES
Phyto = Phyto
log_k 0.0
Zoo = Zoo
log_k 0.0
Ntot = Ntot
log_k 0.0
SOLUTION 1
temp 25
pH 8.1
pe 4
redox pe
units mmol/l #mmol/m^3
density 1
Phyto 0.2268
Ntot 12.1
Zoo 0.1134
-water 1 # kg
RATES
Npz
-start
1 rem PARM(1) = phyto photosynthetic rate (day^-1)
2 rem PARM(2) = uptake half saturation constant (mmol N/m^3)
3 rem PARM(3) = grazing max specific ingestion rate (day^-1)
4 rem PARM(4) = half sat constant for grazer ingestion (mmol N/m^3)
5 rem PARM(5) = grazing threshold (mmol N/m^3)
6 rem PARM(6) = diffusivity (m^2/day)
7 rem PARM(7) = mixed layer depth (m)
8 rem PARM(8) = grazer growth efficiency
9 rem PARM(9) = predation rate (day^-1)
10 rem PARM(10) = Nitrogen concentration at 120 m depth (mmol N/m^3)
15 Phyto = TOT("Phyto")
20 Pgrowth = ((PARM(1)*Ntot*Phyto)/(PARM(2)+Ntot))
30 Pgrazing = ((PARM(3)*max(Phyto-PARM(5),0)*Zoo)/(PARM(4)+Phyto-PARM(5)))
40 Pdiffusion = (Phyto*PARM(6))/(PARM(7)*PARM(7))
50 Phytom = (Pgrowth - Pgrazing - Pdiffusion) * (TIME/86400)
60 Zoo = TOT("Zoo")
70 Zgrowth = (PARM(8)*PARM(3)*max(Phyto-PARM(5),0)*Zoo)/(PARM(4)+Phyto-PARM(5))
80 Zpredation = PARM(9)*Zoo
90 ZDiffusion = (Zoo*PARM(6))/(PARM(7)*PARM(7))
100 Zoom = (Zgrowth - Zpredation - Zdiffusion) * (TIME/86400)
110 Ntot = TOT("Ntot")
120 Nuptake = ((PARM(1)*Ntot*Phyto)/(PARM(2)+Ntot))
130 Nremineral = (0.3*(PARM(3)*max(Phyto-PARM(5),0)*Zoo)/(PARM(4)+Phyto-PARM(5)))
140 Ndiffusion = ((PARM(6))/(PARM(7)*PARM(7)))*(PARM(10)-Ntot)
150 Ntotm = (-Nuptake + Nremineral + Ndiffusion) * (TIME/86400)
200 SAVE Phytom Zoom Ntotm
-end
KINETICS 1
Npz
-formula Phyto 1 Zoo 1 Ntot 1
-parms 0.93 0.5 1.3 0.2142 0.126 7.344 60 0.3 0.07 23
-steps 31556926 in 1461 steps
INCREMENTAL_REACTIONS true
SELECTED_OUTPUT
-file Npz_f.sel
-reset false
-user_punch true
USER_PUNCH
-heading Days Phyto Zoo Ntot
-start
10 PUNCH SIM_TIME/3600/24
20 PUNCH MOL("Phyto")
30 PUNCH MOL("Zoo")
40 PUNCH MOL("Ntot")
-end
END
Please note that some U.S. Geological Survey (USGS) information accessed through this page may be preliminary in nature and presented prior to final review and approval by the Director of the USGS. This information is provided with the understanding that it is not guaranteed to be correct or complete and conclusions drawn from such information are the sole responsibility of the user.
Any use of trade, product, or firm names in this publication is for descriptive purposes only and does not imply endorsement by the U.S. Government.
The URL of this page is:
https://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc/mail/msg00258.html
Email:dlpark@usgs.gov
Last modified: $Date: 2005-09-13 21:04:21 -0600 (Tue, 13 Sep 2005) $
Visitor number [an error occurred while processing this directive] since Jan 22, 1998.