Skip to content

Commit

Permalink
Merge pull request #209 from rogersamso/bump_mt
Browse files Browse the repository at this point in the history
Add compatibility with ModelingToolkit 9
  • Loading branch information
aurorarossi authored Apr 18, 2024
2 parents 7615f12 + 994a309 commit a7aa378
Show file tree
Hide file tree
Showing 26 changed files with 86 additions and 86 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/Documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@latest
with:
version: '1.6'
version: '1.10'
- name: Install dependencies
run: julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()'
- name: Build and deploy
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/Test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ jobs:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@latest
with:
version: '1.6'
version: '1.10'
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
12 changes: 6 additions & 6 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ ModelingToolkit = "961ee093-0014-501f-94e3-6117800e7a78"
PlotlyJS = "f0f68f2c-4968-5e81-91da-67840de0976a"

[compat]
ColorSchemes = "3.0 - 3.24"
ColorTypes = "0.7 - 0.11.4"
DifferentialEquations = "7.1 - 7.12"
ColorSchemes = "3.0"
ColorTypes = "0.7 - 0.11.5"
DifferentialEquations = "7.1"
IfElse = "0.1.1"
ModelingToolkit = "8.26 - 8.75"
PlotlyJS = "0.13 - 0.18.12"
julia = "1.6 - 1.10"
ModelingToolkit = "9.0"
PlotlyJS = "0.13 - 0.18.13"
julia = "1.10"

[extras]
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
Expand Down
2 changes: 1 addition & 1 deletion docs/src/tutorial.md
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,7 @@ function non_renewable_stock(; name, params=_params, inits=_inits, tables=_table
maximum_investment ~ capital_funds / cost_per_investment
investment ~ min(desired_investment, maximum_investment)
]
ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
```
The arguments of the function are the dictionaries corresponding to the variable initial values and to the parameter values, and the dictionaries corresponding to the tables and the ranges used for the linear of non-linear functions. The first two dictionaries are used to assign a value to all the parameters and an initial value to two variables. The ODE system is a vector of differential and algebraic equations (as specified in the chapter of the above mentioned book). Note that the two differential equations correspond to the two variables whose initial value has been specified. The variable `extraction_efficiency_per_unit_capital` is defined as a linear interpolation of the variable `resource`, by using the table `tables[:eepuc]` together with the range `ranges[:eepuc]`. The table and the corresponding range are defined in the file `tables.jl`, which define two dictionaries as follows.
Expand Down
2 changes: 1 addition & 1 deletion src/World1/world1/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -104,5 +104,5 @@ function world1(; name, params=_params, inits=_inits, tables=_tables, ranges=_ra
qlp ~ interpolate(polr, tables[:qlp], ranges[:qlp])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
2 changes: 1 addition & 1 deletion src/World1A/world1a/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ function world1a(; name, params=_params, inits=_inits, tables=_tables, ranges=_r
nrmm ~ interpolate(msl, tables[:nrmm], ranges[:nrmm])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
2 changes: 1 addition & 1 deletion src/World1B/world1b/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ function world1b(; name, params=_params, inits=_inits, tables=_tables, ranges=_r
ciqr ~ interpolate(qlm / qlf, tables[:ciqr], ranges[:ciqr])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
2 changes: 1 addition & 1 deletion src/World2/agricultureinvestment/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@ function agriculture_investment(; name, params=_params, inits=_inits, tables=_ta
ciqr ~ interpolate(qlm / qlf, tables[:ciqr], ranges[:ciqr])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
6 changes: 3 additions & 3 deletions src/World2/capitalinvestment/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ function capital_investment(; name, params=_params, inits=_inits, tables=_tables
D(ci) ~ cig - cid
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function capital_investment_generation(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -44,7 +44,7 @@ function capital_investment_generation(; name, params=_params, inits=_inits, tab
cim ~ interpolate(msl, tables[:cim], ranges[:cim])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function capital_investment_discard(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -60,5 +60,5 @@ function capital_investment_discard(; name, params=_params, inits=_inits, tables
cid ~ ci * clip(cidn, cidn1, swt5, t)
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
4 changes: 2 additions & 2 deletions src/World2/naturalresources/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ function natural_resources(; name, params=_params, inits=_inits, tables=_tables,
D(nr) ~ -nrur
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function natural_resources_usage_rate(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -33,5 +33,5 @@ function natural_resources_usage_rate(; name, params=_params, inits=_inits, tabl
nrmm ~ interpolate(msl, tables[:nrmm], ranges[:nrmm])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
6 changes: 3 additions & 3 deletions src/World2/pollution/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ function pollution(; name, params=_params, inits=_inits, tables=_tables, ranges=
D(pol) ~ polg - pola
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function pollution_absorption(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -30,7 +30,7 @@ function pollution_absorption(; name, params=_params, inits=_inits, tables=_tabl
polat ~ interpolate(polr, tables[:polat], ranges[:polat])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function pollution_generation(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -49,5 +49,5 @@ function pollution_generation(; name, params=_params, inits=_inits, tables=_tabl
polcm ~ interpolate(cir, tables[:polcm], ranges[:polcm])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
6 changes: 3 additions & 3 deletions src/World2/population/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ function population(; name, params=_params, inits=_inits, tables=_tables, ranges
cr ~ p / (la * pdn)
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function birth_rate(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand Down Expand Up @@ -44,7 +44,7 @@ function birth_rate(; name, params=_params, inits=_inits, tables=_tables, ranges
brpm ~ interpolate(polr, tables[:brpm], ranges[:brpm])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function death_rate(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand Down Expand Up @@ -72,5 +72,5 @@ function death_rate(; name, params=_params, inits=_inits, tables=_tables, ranges
drpm ~ interpolate(polr, tables[:drpm], ranges[:drpm])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
2 changes: 1 addition & 1 deletion src/World2/qualitylife/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,5 @@ function quality_life(; name, params=_params, inits=_inits, tables=_tables, rang
qlp ~ interpolate(polr, tables[:qlp], ranges[:qlp])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
2 changes: 1 addition & 1 deletion src/World3/SupplementaryEquations.jl
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ function supplementary_equations(; name)
fos ~ so / (0.22 * f + so + io) # Line 149 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end


Expand Down
20 changes: 10 additions & 10 deletions src/World3/agriculture/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ function population(; name, params=_params, inits=_inits, tables=_tables, ranges
pop2 ~ popi * exp(exppop * (eyear - 1900.0))
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function industrial_output(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -31,7 +31,7 @@ function industrial_output(; name, params=_params, inits=_inits, tables=_tables,
iopc ~ io / pop
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function persistent_pollution(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -46,7 +46,7 @@ function persistent_pollution(; name, params=_params, inits=_inits, tables=_tabl
ppolx2 ~ ppolxi * exp(0.03 * (eyear - 1900.0))
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function land_development(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand Down Expand Up @@ -79,7 +79,7 @@ function land_development(; name, params=_params, inits=_inits, tables=_tables,
dcph ~ interpolate(pal / palt, tables[:dcph], ranges[:dcph]) # Line 97 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function agricultural_inputs(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand Down Expand Up @@ -107,7 +107,7 @@ function agricultural_inputs(; name, params=_params, inits=_inits, tables=_table
lymap2 ~ interpolate(io / io70, tables[:lymap2], ranges[:lymap2]) # Line 106 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function investment_allocation_decision(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -123,7 +123,7 @@ function investment_allocation_decision(; name, params=_params, inits=_inits, ta
mlymc ~ interpolate(aiph, tables[:mlymc], ranges[:mlymc]) # Line 111 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function land_erosion_urban_industrial_use(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -148,7 +148,7 @@ function land_erosion_urban_industrial_use(; name, params=_params, inits=_inits,
D(uil) ~ lrui # Line 120 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function land_fertility_degradation(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -162,7 +162,7 @@ function land_fertility_degradation(; name, params=_params, inits=_inits, tables
lfd ~ lfert * lfdr # Line 123 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function land_fertility_regeneration(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -176,7 +176,7 @@ function land_fertility_regeneration(; name, params=_params, inits=_inits, table
lfrt ~ interpolate(falm, tables[:lfrt], ranges[:lfrt]) # Line 125 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function discontinuing_land_maintenance(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -193,5 +193,5 @@ function discontinuing_land_maintenance(; name, params=_params, inits=_inits, ta
D(pfr) ~ (fr - pfr) / fspd # Line 128 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
12 changes: 6 additions & 6 deletions src/World3/capital/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ function population(; name, params=_params, inits=_inits, tables=_tables, ranges
p3 ~ 0.25 * pop
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function agriculture(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -22,7 +22,7 @@ function agriculture(; name, params=_params, inits=_inits, tables=_tables, range
fioaa ~ interpolate(t, tables[:fioaa], ranges[:fioaa])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function non_renewable(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -32,7 +32,7 @@ function non_renewable(; name, params=_params, inits=_inits, tables=_tables, ran
fcaor ~ interpolate(t, tables[:fcaor], ranges[:fcaor])
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function industrial_subsector(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand Down Expand Up @@ -64,7 +64,7 @@ function industrial_subsector(; name, params=_params, inits=_inits, tables=_tabl
fioacv ~ interpolate(iopc / iopcd, tables[:fioacv], ranges[:fioacv]) # Line 59 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function service_subsector(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand Down Expand Up @@ -94,7 +94,7 @@ function service_subsector(; name, params=_params, inits=_inits, tables=_tables,
scor ~ clip(scor2, scor1, t, pyear) # Line 72 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function job_subsector(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -120,5 +120,5 @@ function job_subsector(; name, params=_params, inits=_inits, tables=_tables, ran
cuf ~ interpolate(lufd, tables[:cuf], ranges[:cuf]) # Line 83 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
8 changes: 4 additions & 4 deletions src/World3/nonrenewable/subsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ function population(; name, params=_params, inits=_inits, tables=_tables, ranges
pop1 ~ popi * exp(gc * (t - 1900))
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function industrial_output(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -28,7 +28,7 @@ function industrial_output(; name, params=_params, inits=_inits, tables=_tables,
iopc ~ io / pop
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function industrial_capital(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -47,7 +47,7 @@ function industrial_capital(; name, params=_params, inits=_inits, tables=_tables
icdr ~ ic / alic
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end

function non_renewable(; name, params=_params, inits=_inits, tables=_tables, ranges=_ranges)
Expand All @@ -71,5 +71,5 @@ function non_renewable(; name, params=_params, inits=_inits, tables=_tables, ran
fcaor2 ~ interpolate(nrfr, tables[:fcaor2], ranges[:fcaor2]) # Line 136 Appendix A
]

ODESystem(eqs; name)
ODESystem(eqs, t; name)
end
Loading

0 comments on commit a7aa378

Please sign in to comment.