@Silence-017 I’ve had a look at your case and I’m not sure what’s going on.
First, I modified the monitor definitions a little, to monitor, for each of the 4 solid phases (BIOMASS, PAPER, PLASTIC, FABRIC) the particle radius, mass, composition, and all 4 reaction rates.
BIOMASS.csv:#
BIOMASS.csv:# Run type: NEW
BIOMASS.csv:# Monitor type: Arithmetic average over region, Volume = 0.12800000E-02
BIOMASS.csv:# "Time","r_p","pmass","x_p(1)","x_p(2)","x_p(3)","RRates_R1","RRates_R2","RRates_R3","RRates_R4"
BIOMASS.csv: 0.0000000, 0.50000000E-02, 0.44505896E-03, 0.74000000, 0.13000000, 0.13000000, 0.0000000, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 1.0162327, 0.49996051E-02, 0.44495351E-03, 0.73993838, 0.13003081, 0.13003081, 0.59295175E-08, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 2.0147192, 0.49991822E-02, 0.44484061E-03, 0.73987238, 0.13006381, 0.13006381, 0.64155276E-08, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 3.0341349, 0.49987138E-02, 0.44471560E-03, 0.73979926, 0.13010037, 0.13010037, 0.69434009E-08, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 4.0246034, 0.49982208E-02, 0.44458401E-03, 0.73972224, 0.13013888, 0.13013888, 0.74881683E-08, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 5.0695895, 0.49976604E-02, 0.44443450E-03, 0.73963469, 0.13018265, 0.13018265, 0.80990701E-08, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv:#
FABRIC.csv:# Run type: NEW
FABRIC.csv:# Monitor type: Arithmetic average over region, Volume = 0.12800000E-02
FABRIC.csv:# "Time","r_p","pmass","x_p(1)","x_p(2)","x_p(3)","RRates_R1","RRates_R2","RRates_R3","RRates_R4"
FABRIC.csv: 0.0000000, 0.50000000E-02, 0.41887902E-03, 0.84000000, 0.80000000E-01, 0.80000000E-01, 0.0000000, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 1.0162327, 0.49996174E-02, 0.41878287E-03, 0.83996327, 0.80018367E-01, 0.80018367E-01, 0.56573618E-08, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 2.0147192, 0.49992040E-02, 0.41867899E-03, 0.83992356, 0.80038221E-01, 0.80038221E-01, 0.57083747E-08, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 3.0341349, 0.49987772E-02, 0.41857178E-03, 0.83988256, 0.80058722E-01, 0.80058722E-01, 0.57616325E-08, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 4.0246034, 0.49983578E-02, 0.41846642E-03, 0.83984224, 0.80078878E-01, 0.80078878E-01, 0.58145240E-08, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 5.0695895, 0.49979125E-02, 0.41835460E-03, 0.83979944, 0.80100281E-01, 0.80100281E-01, 0.58716093E-08, 0.0000000, 0.0000000, 0.0000000
PAPER.csv:#
PAPER.csv:# Run type: NEW
PAPER.csv:# Monitor type: Arithmetic average over region, Volume = 0.12800000E-02
PAPER.csv:# "Time","r_p","pmass","x_p(1)","x_p(2)","x_p(3)","RRates_R1","RRates_R2","RRates_R3","RRates_R4"
PAPER.csv: 0.0000000, 0.50000000E-02, 0.57595865E-03, 0.78000000, 0.11000000, 0.11000000, 0.0000000, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 1.0162327, 0.49994952E-02, 0.57578422E-03, 0.77993335, 0.11003332, 0.11003332, 0.10090025E-07, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 2.0147192, 0.49989582E-02, 0.57559871E-03, 0.77986243, 0.11006879, 0.11006879, 0.10205716E-07, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 3.0341349, 0.49984025E-02, 0.57540678E-03, 0.77978900, 0.11010550, 0.11010550, 0.10326630E-07, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 4.0246034, 0.49978550E-02, 0.57521771E-03, 0.77971662, 0.11014169, 0.11014169, 0.10446904E-07, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 5.0695895, 0.49972723E-02, 0.57501653E-03, 0.77963955, 0.11018023, 0.11018023, 0.10576665E-07, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv:#
PLASTIC.csv:# Run type: NEW
PLASTIC.csv:# Monitor type: Arithmetic average over region, Volume = 0.12800000E-02
PLASTIC.csv:# "Time","r_p","pmass","x_p(1)","x_p(2)","x_p(3)","RRates_R1","RRates_R2","RRates_R3","RRates_R4"
PLASTIC.csv: 0.0000000, 0.50000000E-02, 0.50265482E-03, 0.90000000, 0.50000000E-01, 0.50000000E-01, 0.0000000, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 1.0162327, 0.49994097E-02, 0.50247682E-03, 0.89996457, 0.50017713E-01, 0.50017713E-01, 0.10070405E-07, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 2.0147192, 0.49987905E-02, 0.50229013E-03, 0.89992739, 0.50036303E-01, 0.50036303E-01, 0.10351706E-07, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 3.0341349, 0.49981389E-02, 0.50209374E-03, 0.89988825, 0.50055874E-01, 0.50055874E-01, 0.10651745E-07, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 4.0246034, 0.49974859E-02, 0.50189697E-03, 0.89984900, 0.50075498E-01, 0.50075498E-01, 0.10956040E-07, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 5.0695895, 0.49967787E-02, 0.50168395E-03, 0.89980648, 0.50096761E-01, 0.50096761E-01, 0.11290980E-07, 0.0000000, 0.0000000, 0.0000000
We can see that for all 4 types of particle, the radius and particle mass decrease (slowly) over time, and the mass fraction of species #1 (“biomass”) decreases while species #2 and #3 increase slightly.
And, furthermore, as you claimed, it seems only reaction #1 is active. Reaction #1 is:
biomass --> 0.0667*CO2 + 0.0881*CO + 0.07585*CH4 +
0.0098*C2H4 + 0.00521*C2H6 + 0.00135*C3H8 + 0.00248*C5H12 +
0.0927*C8H10_C6H5C2H5 + 0.432*H2
The other solids phases do not contain “biomass” as a species so this reaction should not affect them. (There’s a slight potential for confusion in that “biomass” is both the name of a phase and a species within that phase, this is not a problem as long as you don’t get confused. Similar for the other 3 solids phases).
I am a bit confused by this section at the end of usr_rates_des.f
:
lb = NO_OF_RXNS +1
uB = NO_OF_RXNS + NO_OF_DES_RXNS
ReactionRates(IJK,lB) = ReactionRates(IJK,lB) + DES_RATES(R1)
ReactionRates(IJK,lB+1) = ReactionRates(IJK,lB+1) + DES_RATES(R2)
ReactionRates(IJK,lB+2) = ReactionRates(IJK,lB+2) + DES_RATES(R3)
ReactionRates(IJK,lB+3) = ReactionRates(IJK,lB+3) + DES_RATES(R4)
However, commenting this out doesn’t seem to change anything.
I tried with the simples usr_rates_des.f
possible:
subroutine usr_rates_des(np, pm, ijk, des_rates)
use des_rxns, only: no_of_des_rxns
implicit none
include 'species.inc'
integer, intent(in) :: np ! global index of particle
integer, intent(in) :: pm ! solid phase index of particle np
integer, intent(in) :: ijk ! fluid cell index containing np
double precision, intent(out) :: des_rates(no_of_des_rxns) ! computed rates
des_rates(r1)= 0.000002
des_rates(r2)= 0
des_rates(r3)= 0
des_rates(r4)= 0
return
end subroutine usr_rates_des
and this is my result:
BIOMASS.csv:#
BIOMASS.csv:# Run type: NEW
BIOMASS.csv:# Monitor type: Arithmetic average over region, Volume = 0.12800000E-02
BIOMASS.csv:# "Time","r_p","pmass","x_p(1)","x_p(2)","x_p(3)","RRates_R1","RRates_R2","RRates_R3","RRates_R4"
BIOMASS.csv: 0.0000000, 0.50000000E-02, 0.44505896E-03, 0.74000000, 0.13000000, 0.13000000, 0.0000000, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 1.0160345, 0.48564884E-02, 0.40782570E-03, 0.71628441, 0.14185780, 0.14185780, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 2.0054074, 0.46978314E-02, 0.36914740E-03, 0.68663654, 0.15668173, 0.15668173, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 3.0102229, 0.45193159E-02, 0.32864394E-03, 0.64814194, 0.17592903, 0.17592903, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 3.9989596, 0.43099231E-02, 0.28504676E-03, 0.59458779, 0.20270610, 0.20270610, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
BIOMASS.csv: 5.0016396, 0.40936802E-02, 0.24425826E-03, 0.52716375, 0.23641812, 0.23641812, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv:#
FABRIC.csv:# Run type: NEW
FABRIC.csv:# Monitor type: Arithmetic average over region, Volume = 0.12800000E-02
FABRIC.csv:# "Time","r_p","pmass","x_p(1)","x_p(2)","x_p(3)","RRates_R1","RRates_R2","RRates_R3","RRates_R4"
FABRIC.csv: 0.0000000, 0.50000000E-02, 0.41887902E-03, 0.84000000, 0.80000000E-01, 0.80000000E-01, 0.0000000, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 1.0160345, 0.48472336E-02, 0.38164576E-03, 0.82440566, 0.87797169E-01, 0.87797169E-01, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 2.0054074, 0.46776182E-02, 0.34296746E-03, 0.80465964, 0.97670179E-01, 0.97670179E-01, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 3.0102229, 0.44857152E-02, 0.30246400E-03, 0.77859362, 0.11070319, 0.11070319, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 3.9989596, 0.42589179E-02, 0.25886682E-03, 0.74150477, 0.12924762, 0.12924762, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
FABRIC.csv: 5.0016396, 0.40223325E-02, 0.21807832E-03, 0.69337746, 0.15331127, 0.15331127, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PAPER.csv:#
PAPER.csv:# Run type: NEW
PAPER.csv:# Monitor type: Arithmetic average over region, Volume = 0.12800000E-02
PAPER.csv:# "Time","r_p","pmass","x_p(1)","x_p(2)","x_p(3)","RRates_R1","RRates_R2","RRates_R3","RRates_R4"
PAPER.csv: 0.0000000, 0.50000000E-02, 0.57595865E-03, 0.78000000, 0.11000000, 0.11000000, 0.0000000, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 1.0160345, 0.48898483E-02, 0.53872540E-03, 0.76480543, 0.11759728, 0.11759728, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 2.0054074, 0.47699065E-02, 0.50004709E-03, 0.74664908, 0.12667546, 0.12667546, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 3.0102229, 0.46374775E-02, 0.45954363E-03, 0.72437131, 0.13781435, 0.13781435, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 3.9989596, 0.44859254E-02, 0.41594645E-03, 0.69557805, 0.15221097, 0.15221097, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PAPER.csv: 5.0016396, 0.43342200E-02, 0.37515795E-03, 0.66256753, 0.16871624, 0.16871624, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv:#
PLASTIC.csv:# Run type: NEW
PLASTIC.csv:# Monitor type: Arithmetic average over region, Volume = 0.12800000E-02
PLASTIC.csv:# "Time","r_p","pmass","x_p(1)","x_p(2)","x_p(3)","RRates_R1","RRates_R2","RRates_R3","RRates_R4"
PLASTIC.csv: 0.0000000, 0.50000000E-02, 0.50265482E-03, 0.90000000, 0.50000000E-01, 0.50000000E-01, 0.0000000, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 1.0160345, 0.48733644E-02, 0.46542157E-03, 0.89200647, 0.53996766E-01, 0.53996766E-01, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 2.0054074, 0.47344436E-02, 0.42674326E-03, 0.88224091, 0.58879543E-01, 0.58879543E-01, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 3.0102229, 0.45796511E-02, 0.38623980E-03, 0.86992624, 0.65036879E-01, 0.65036879E-01, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 3.9989596, 0.44004171E-02, 0.34264262E-03, 0.85344298, 0.73278512E-01, 0.73278512E-01, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
PLASTIC.csv: 5.0016396, 0.42183806E-02, 0.30185412E-03, 0.83370429, 0.83147857E-01, 0.83147857E-01, 0.20000000E-05, 0.0000000, 0.0000000, 0.0000000
This shows all 4 types of particles shrinking and reacting, not just the Biomass phase. We might be looking at a bug in the chem reaction code, it might also be a bug in the monitor code. Or else I’m just confused too. We will get back to you when I know more!
Thanks for the report.
– Charles