Skip to content

Commit 2053510

Browse files
authored
Merge pull request #154 from ReactionMechanismGenerator/new_interface
New interfaces & fix Outlet jacobiany for several domains
2 parents cebcd03 + 7dfb9ab commit 2053510

18 files changed

+16750
-49
lines changed

.DS_Store

-8 KB
Binary file not shown.

.github/workflows/CI.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@ name: CI
22
on:
33
pull_request:
44
branches:
5-
- master
5+
- main
66
push:
77
branches:
8-
- master
8+
- main
99
jobs:
1010
test:
1111
runs-on: ubuntu-latest
1212
steps:
1313
- uses: actions/checkout@v2
1414
- uses: julia-actions/setup-julia@v1
1515
with:
16-
version: 1.5
16+
version: 1.6
1717
- uses: actions/cache@v1
1818
env:
1919
cache-name: cache-artifacts
@@ -30,7 +30,7 @@ jobs:
3030
julia -e 'ENV["PYTHON"]="/home/runner/.julia/conda/3/bin/python"; using Pkg; Pkg.add("PyCall"); Pkg.build("PyCall")'
3131
- name: Build
3232
run: |
33-
julia -e 'using Pkg; Pkg.add(PackageSpec(name="StochasticDiffEq",version="6.36.0")); Pkg.develop(PackageSpec(path="../ReactionMechanismSimulator.jl"));'
33+
julia -e 'using Pkg; Pkg.add(PackageSpec(name="StochasticDiffEq",version="6.36.0")); Pkg.develop(PackageSpec(path="../ReactionMechanismSimulator.jl")); Pkg.build("ReactionMechanismSimulator");'
3434
- name: Run tests
3535
run: |
3636
julia -e 'using Pkg; Pkg.test("ReactionMechanismSimulator";coverage=true)'

.github/workflows/documentation.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Documentation
33
on:
44
push:
55
branches:
6-
- master
6+
- main
77
tags: '*'
88
pull_request:
99

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@
22
*.png
33
*.dot
44
docs/build/
5+
.DS_Store

Project.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ Calculus = "0.4,0.5"
4343
Colors = "0.11,0.12"
4444
Conda = "1"
4545
DiffEqBase = "6"
46-
DiffEqSensitivity = "6.22.0"
46+
DiffEqSensitivity = "6"
4747
ForwardDiff = "0.10"
4848
Images = "0.23"
4949
IterTools = "1.3.0"
@@ -64,4 +64,4 @@ Tracker = "0.2"
6464
Unitful = "1.3.0"
6565
YAML = "0.4"
6666
Zygote = "0.5,0.6"
67-
julia = "1.4"
67+
julia = "1.6"

src/AutomaticMechanismAnalysis.jl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -389,14 +389,14 @@ Generate a string report from the analysis objects
389389
function getrxnanalysisstring(sim,ra;branchingcutoff=1e-2,radbranchfract=0.01)
390390
spcname = sim.names[ra.spcind]
391391
rstr = getrxnstr(sim.domain.phase.reactions[ra.rxnind])
392-
sens = ra.sens
392+
sens = round(ra.sens,sigdigits=6)
393393
s = "Analyzing $spcname sensitivity to $rstr at a value of $sens \n"
394394
s *= "\n"
395395
for branch in ra.branchings
396396
sname = sim.names[branch.spcind]
397397
s *= "Key branching for $sname \n"
398398
for i = 1:length(branch.rxninds)+1
399-
br = branch.branchingratios[i]
399+
br = round(branch.branchingratios[i],sigdigits=6)
400400
if br < branchingcutoff
401401
break
402402
else
@@ -414,22 +414,22 @@ function getrxnanalysisstring(sim,ra;branchingcutoff=1e-2,radbranchfract=0.01)
414414
s *= "Associated key reaction path in $spname loss direction \n"
415415
for i = 1:length(rp.rxninds)
416416
rstr = getrxnstr(sim.reactions[rp.rxninds[i]])
417-
br = rp.branchfracts[i]
417+
br = round(rp.branchfracts[i],sigdigits=6)
418418
s *= "$rstr at path branching of $br \n"
419419
end
420420
else
421421
s *= "Associated key reaction path in $spname production direction \n"
422422
revinds = reverse(rp.rxninds)
423423
for i = 1:length(rp.rxninds)
424424
rstr = getrxnstr(sim.reactions[revinds[i]])
425-
br = rp.branchfracts[i]
425+
br = round(rp.branchfracts[i],sigdigits=6)
426426
s *= "$rstr at path step branching of $br \n"
427427
end
428428
end
429429
s *= "\n"
430430
end
431431
if abs(ra.radprodlossfract) > radbranchfract
432-
radfract = abs(ra.radprodlossfract)
432+
radfract = round(abs(ra.radprodlossfract),sigdigits=6)
433433
if ra.radprodlossfract > 0
434434
s *= "Reaction accounts for $radfract of the net radical production \n"
435435
else

src/Calculators/kLAkH.jl

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
using Parameters
2+
3+
abstract type AbstractHenryLawConstant end
4+
export AbstractHenryLawConstant
5+
6+
struct EmptyHenryLawConstant <: AbstractHenryLawConstant end
7+
(eh::EmptyHenryLawConstant)(;T::N) where {N<:Number} = Inf
8+
export EmptyHenryLawConstant
9+
10+
@with_kw struct ConstantHenryLawConstant{N<:Number} <: AbstractHenryLawConstant
11+
kH::N
12+
end
13+
(ch::ConstantHenryLawConstant)(;T::N) where {N<:Number} = ch.kH
14+
export ConstantHenryLawConstant
15+
16+
struct TemperatureDependentHenryLawConstant{N<:Function} <: AbstractHenryLawConstant
17+
kH::N
18+
end
19+
20+
function TemperatureDependentHenryLawConstant(;Ts::N1,kHs::N2) where {N1<:AbstractArray,N2<:AbstractArray}
21+
return TemperatureDependentHenryLawConstant(getspline(Ts,kHs))
22+
end
23+
24+
(th::TemperatureDependentHenryLawConstant)(;T::N) where {N<:Number} = th.kH(T)
25+
export TemperatureDependentHenryLawConstant
26+
27+
abstract type AbstractLiquidVolumetricMassTransferCoefficient end
28+
export AbstractLiquidVolumetricMassTransferCoefficient
29+
30+
struct EmptyLiquidVolumetricMassTransferCoefficient <: AbstractLiquidVolumetricMassTransferCoefficient end
31+
(eh::EmptyLiquidVolumetricMassTransferCoefficient)(;T::N) where {N<:Number} = 0
32+
export EmptyLiquidVolumetricMassTransferCoefficient
33+
34+
@with_kw struct ConstantLiquidVolumetricMassTransferCoefficient{N<:Number} <: AbstractLiquidVolumetricMassTransferCoefficient
35+
kLA::N
36+
end
37+
(cv::ConstantLiquidVolumetricMassTransferCoefficient)(;T::N) where {N<:Number} = cv.kLA
38+
export ConstantLiquidVolumetricMassTransferCoefficient
39+
40+
struct TemperatureDependentLiquidVolumetricMassTransferCoefficient{N<:Function} <: AbstractLiquidVolumetricMassTransferCoefficient
41+
kLA::N
42+
end
43+
44+
function TemperatureDependentLiquidVolumetricMassTransferCoefficient(;Ts::N1,kLAs::N2) where {N1<:AbstractArray,N2<:AbstractArray}
45+
return TemperatureDependentLiquidVolumetricMassTransferCoefficient(getspline(Ts,kLAs))
46+
end
47+
48+
(tv::TemperatureDependentLiquidVolumetricMassTransferCoefficient)(;T::N) where {N<:Number} = tv.kLA(T)
49+
export TemperatureDependentLiquidVolumetricMassTransferCoefficient

0 commit comments

Comments
 (0)