Skip to content

Commit

Permalink
Merge pull request #252 from SciML/ap/fix_docs
Browse files Browse the repository at this point in the history
ci: get docs to build again
  • Loading branch information
ChrisRackauckas authored Oct 14, 2024
2 parents cb0160e + 524ff12 commit 0be2ba4
Show file tree
Hide file tree
Showing 25 changed files with 537 additions and 521 deletions.
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,3 @@
[![Documentation and Deployment](https://badge.buildkite.com/b4720f5f3a8d2d1ac8bbaebf5e0e38aaae28b6c8fb436ba05e.svg)](https://buildkite.com/julialang/scimldocs?branch=main)

Attempts at a single documentation for the full SciML interface.

136 changes: 67 additions & 69 deletions docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,76 +8,74 @@ ENV["GKSwstype"] = "100"
using Plots

mathengine = MathJax3(Dict(:loader => Dict("load" => ["[tex]/require", "[tex]/mathtools"]),
:tex => Dict("inlineMath" => [["\$", "\$"], ["\\(", "\\)"]],
"packages" => [
"base",
"ams",
"autoload",
"mathtools",
"require",
])))
:tex => Dict("inlineMath" => [["\$", "\$"], ["\\(", "\\)"]],
"packages" => [
"base",
"ams",
"autoload",
"mathtools",
"require"
])))

makedocs(sitename = "Overview of Julia's SciML",
authors = "Chris Rackauckas",
modules = Module[],
clean = true, doctest = false, linkcheck = true,
linkcheck_ignore = ["https://twitter.com/ChrisRackauckas/status/1477274812460449793",
"https://epubs.siam.org/doi/10.1137/0903023",
"https://bkamins.github.io/julialang/2020/12/24/minilanguage.html",
"https://arxiv.org/abs/2109.06786",
"https://arxiv.org/abs/2001.04385",

],
format = Documenter.HTML(assets = ["assets/favicon.ico"],
canonical = "https://docs.sciml.ai/stable/",
mathengine = mathengine),
pages = [
"SciML: Open Source Software for Scientific Machine Learning with Julia" => "index.md",
"Getting Started" => [
"getting_started/getting_started.md",
"New User Tutorials" => [
"getting_started/installation.md",
"getting_started/first_simulation.md",
"getting_started/first_optimization.md",
"getting_started/fit_simulation.md",
"getting_started/find_root.md",
],
"Comparison With Other Tools" => [
"comparisons/python.md",
"comparisons/matlab.md",
"comparisons/r.md",
"comparisons/cppfortran.md",
],
],
"Showcase of Cool Examples" => Any["showcase/showcase.md",
"Automated Model Discovery" => Any["showcase/missing_physics.md",
"showcase/bayesian_neural_ode.md",
"showcase/blackhole.md"],
"Solving Difficult Equations Efficiently" => Any["showcase/brusselator.md",
"showcase/pinngpu.md",
"showcase/massively_parallel_gpu.md",
"showcase/gpu_spde.md"],
"Useful Cool Wonky Things" => Any["showcase/ode_types.md",
"showcase/symbolic_analysis.md",
"showcase/optimization_under_uncertainty.md"]],
"What is SciML?" => ["overview.md",
"Solvers" => ["highlevels/equation_solvers.md",
"highlevels/inverse_problems.md",
"highlevels/partial_differential_equation_solvers.md"],
"Modeling Tools" => ["highlevels/modeling_languages.md",
"highlevels/model_libraries_and_importers.md",
"highlevels/symbolic_tools.md",
"highlevels/array_libraries.md"],
"Simulation Analysis" => ["highlevels/parameter_analysis.md",
"highlevels/uncertainty_quantification.md",
"highlevels/plots_visualization.md"],
"Machine Learning" => ["highlevels/function_approximation.md",
"highlevels/implicit_layers.md",
"highlevels/symbolic_learning.md"],
"Developer Tools" => ["highlevels/numerical_utilities.md",
"highlevels/interfaces.md",
"highlevels/developer_documentation.md"],
"Extra Learning Resources" => ["highlevels/learning_resources.md"],
]])
authors = "Chris Rackauckas",
modules = Module[],
clean = true, doctest = false, linkcheck = true,
linkcheck_ignore = ["https://twitter.com/ChrisRackauckas/status/1477274812460449793",
"https://epubs.siam.org/doi/10.1137/0903023",
"https://bkamins.github.io/julialang/2020/12/24/minilanguage.html",
"https://arxiv.org/abs/2109.06786",
"https://arxiv.org/abs/2001.04385"],
format = Documenter.HTML(assets = ["assets/favicon.ico"],
canonical = "https://docs.sciml.ai/stable/",
mathengine = mathengine),
pages = [
"SciML: Open Source Software for Scientific Machine Learning with Julia" => "index.md",
"Getting Started" => [
"getting_started/getting_started.md",
"New User Tutorials" => [
"getting_started/installation.md",
"getting_started/first_simulation.md",
"getting_started/first_optimization.md",
"getting_started/fit_simulation.md",
"getting_started/find_root.md"
],
"Comparison With Other Tools" => [
"comparisons/python.md",
"comparisons/matlab.md",
"comparisons/r.md",
"comparisons/cppfortran.md"
]
],
"Showcase of Cool Examples" => Any["showcase/showcase.md",
"Automated Model Discovery" => Any["showcase/missing_physics.md",
"showcase/bayesian_neural_ode.md",
"showcase/blackhole.md"],
"Solving Difficult Equations Efficiently" => Any["showcase/brusselator.md",
"showcase/pinngpu.md",
"showcase/massively_parallel_gpu.md",
"showcase/gpu_spde.md"],
"Useful Cool Wonky Things" => Any["showcase/ode_types.md",
"showcase/symbolic_analysis.md",
"showcase/optimization_under_uncertainty.md"]],
"What is SciML?" => ["overview.md",
"Solvers" => ["highlevels/equation_solvers.md",
"highlevels/inverse_problems.md",
"highlevels/partial_differential_equation_solvers.md"],
"Modeling Tools" => ["highlevels/modeling_languages.md",
"highlevels/model_libraries_and_importers.md",
"highlevels/symbolic_tools.md",
"highlevels/array_libraries.md"],
"Simulation Analysis" => ["highlevels/parameter_analysis.md",
"highlevels/uncertainty_quantification.md",
"highlevels/plots_visualization.md"],
"Machine Learning" => ["highlevels/function_approximation.md",
"highlevels/implicit_layers.md",
"highlevels/symbolic_learning.md"],
"Developer Tools" => ["highlevels/numerical_utilities.md",
"highlevels/interfaces.md",
"highlevels/developer_documentation.md"],
"Extra Learning Resources" => ["highlevels/learning_resources.md"]
]])

deploydocs(repo = "github.com/SciML/SciMLDocs")
5 changes: 3 additions & 2 deletions docs/make_aggregate.jl
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,9 @@ docsmodules = [
=#
],
"Solvers" => [
"Equation Solvers" => ["LinearSolve", "NonlinearSolve", "DiffEqDocs", "Integrals", "DifferenceEquations",
"Optimization", "JumpProcesses"],
"Equation Solvers" => [
"LinearSolve", "NonlinearSolve", "DiffEqDocs", "Integrals",
"DifferenceEquations", "Optimization", "JumpProcesses", "LineSearch"],
#=
"Third-Party Equation Solvers" => [
"LowRankIntegrators",
Expand Down
6 changes: 3 additions & 3 deletions docs/src/comparisons/matlab.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,10 +74,10 @@ The following chart will help you get quickly acquainted with Julia's SciML Tool
|:------------------- |:------------------------------------------------------------------------------------- |
| `plot` | [Plots](https://docs.juliaplots.org/stable/), [Makie](https://docs.makie.org/stable/) |
| `sparse` | [SparseArrays](https://docs.julialang.org/en/v1/stdlib/SparseArrays/#Sparse-Arrays) |
| `interp1` | [DataInterpolations](https://docs.sciml.ai/DataInterpolations/) |
| `\`, `gmres`, `cg` | [LinearSolve](http://linearsolve.sciml.ai/dev/) |
| `interp1` | [DataInterpolations](https://docs.sciml.ai/DataInterpolations/) |
| `\`, `gmres`, `cg` | [LinearSolve](https://linearsolve.sciml.ai/dev/) |
| `fsolve` | [NonlinearSolve](https://nonlinearsolve.sciml.ai/) |
| `quad` | [Integrals](https://docs.sciml.ai/Integrals/stable/) |
| `quad` | [Integrals](https://docs.sciml.ai/Integrals/stable/) |
| `fmincon` | [Optimization](https://optimization.sciml.ai/) |
| `odeXX` | [DifferentialEquations](https://diffeq.sciml.ai/latest/) |
| `ode45` | `Tsit5` |
Expand Down
4 changes: 2 additions & 2 deletions docs/src/comparisons/python.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ The following chart will help you get quickly acquainted with Julia's SciML Tool
|:---------------------------- |:----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Matplotlib | [Plots](https://docs.juliaplots.org/stable/), [Makie](https://docs.makie.org/stable/) |
| `scipy.special` | [SpecialFunctions](https://github.com/JuliaMath/SpecialFunctions.jl) |
| `scipy.linalg.solve` | [LinearSolve](http://linearsolve.sciml.ai/dev/) |
| `scipy.linalg.solve` | [LinearSolve](https://linearsolve.sciml.ai/dev/) |
| `scipy.integrate` | [Integrals](https://docs.sciml.ai/Integrals/stable/) |
| `scipy.optimize` | [Optimization](https://optimization.sciml.ai/) |
| `scipy.optimize.fsolve` | [NonlinearSolve](https://nonlinearsolve.sciml.ai/) |
Expand All @@ -71,7 +71,7 @@ The following chart will help you get quickly acquainted with Julia's SciML Tool
| `scipy.sparse` | [SparseArrays](https://docs.julialang.org/en/v1/stdlib/SparseArrays/#Sparse-Arrays), [ARPACK](https://github.com/JuliaLinearAlgebra/Arpack.jl) |
| `odeint`/`solve_ivp` | [DifferentialEquations](https://diffeq.sciml.ai/latest/) |
| `scipy.integrate.solve_bvp` | [Boundary-value problem](https://diffeq.sciml.ai/latest/tutorials/bvp_example/#Boundary-Value-Problems) |
| PyTorch | [Flux](https://fluxml.ai/), [Lux](http://lux.csail.mit.edu/stable/) |
| PyTorch | [Flux](https://fluxml.ai/), [Lux](https://lux.csail.mit.edu/stable/) |
| gillespy2 | [Catalyst](https://catalyst.sciml.ai/dev/), [JumpProcesses](https://github.com/SciML/JumpProcesses.jl) |
| scipy.optimize.approx_fprime | [FiniteDiff](https://github.com/JuliaDiff/FiniteDiff.jl) |
| autograd | [ForwardDiff\*](https://github.com/JuliaDiff/ForwardDiff.jl), [Enzyme\*](https://github.com/EnzymeAD/Enzyme.jl), [DiffEqSensitivity](https://sensitivity.sciml.ai/dev/) |
Expand Down
4 changes: 2 additions & 2 deletions docs/src/getting_started/find_root.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ prob = NonlinearProblem(ns, [])
sol = solve(prob, NewtonRaphson())
# Analyze the solution
@show sol[[x,y,z]], sol.resid
@show sol[[x, y, z]], sol.resid
```

## Step-by-Step Solution
Expand Down Expand Up @@ -178,5 +178,5 @@ We can check it as follows:

```@example first_rootfind
# Analyze the solution
@show sol[[x,y,z]], sol.resid
@show sol[[x, y, z]], sol.resid
```
15 changes: 8 additions & 7 deletions docs/src/getting_started/first_optimization.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ Let's solve our first optimization problem!

The following parts of the SciML Ecosystem will be used in this tutorial:

| Module | Description |
|:---------------------------------------------------------------------------------------------- |:---------------------------------- |
| [Optimization.jl](https://docs.sciml.ai/Optimization/stable/) | The numerical optimization package |
| [OptimizationNLopt.jl](https://docs.sciml.ai/Optimization/stable/optimization_packages/nlopt/) | The NLopt optimizers we will use |
| [ForwardDiff.jl](https://docs.sciml.ai/Optimization/stable/API/optimization_function/#Optimization.AutoForwardDiff) | The automatic differentiation library for gradients |
| Module | Description |
|:------------------------------------------------------------------------------------------------------------------- |:--------------------------------------------------- |
| [Optimization.jl](https://docs.sciml.ai/Optimization/stable/) | The numerical optimization package |
| [OptimizationNLopt.jl](https://docs.sciml.ai/Optimization/stable/optimization_packages/nlopt/) | The NLopt optimizers we will use |
| [ForwardDiff.jl](https://docs.sciml.ai/Optimization/stable/API/optimization_function/#Optimization.AutoForwardDiff) | The automatic differentiation library for gradients |

## Problem Setup

Expand Down Expand Up @@ -68,9 +68,9 @@ To do this tutorial, we will need a few components:

- [Optimization.jl](https://docs.sciml.ai/Optimization/stable/), the optimization interface.
- [OptimizationNLopt.jl](https://docs.sciml.ai/Optimization/stable/optimization_packages/nlopt/), the optimizers we will use.
- [ForwardDiff.jl](https://docs.sciml.ai/Optimization/stable/API/optimization_function/#Optimization.AutoForwardDiff),
- [ForwardDiff.jl](https://docs.sciml.ai/Optimization/stable/API/optimization_function/#Optimization.AutoForwardDiff),
the automatic differentiation library for gradients

Note that Optimization.jl is an interface for optimizers, and thus we always have to choose
which optimizer we want to use. Here we choose to demonstrate `OptimizationNLopt` because
of its efficiency and versatility. But there are many other possible choices. Check out
Expand Down Expand Up @@ -102,6 +102,7 @@ parameters, and write out the loss function on a vector-defined state as follows
# Define the problem to optimize
L(u, p) = (p[1] - u[1])^2 + p[2] * (u[2] - u[1]^2)^2
```

Next we need to create an `OptimizationFunction` where we tell Optimization.jl to use the ForwardDiff.jl
package for creating the gradient and other derivatives required by the optimizer.

Expand Down
6 changes: 3 additions & 3 deletions docs/src/getting_started/first_simulation.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,9 +173,9 @@ to represent an `ODESystem` with the following:
@mtkbuild sys = ODESystem(eqs, t)
```

Notice that in our equations we have an algebraic equation `z ~ x + y`. This is not a
differential equation but an algebraic equation, and thus we call this set of equations a
Differential-Algebraic Equation (DAE). The symbolic system of ModelingToolkit can eliminate
Notice that in our equations we have an algebraic equation `z ~ x + y`. This is not a
differential equation but an algebraic equation, and thus we call this set of equations a
Differential-Algebraic Equation (DAE). The symbolic system of ModelingToolkit can eliminate
such equations to return simpler forms to numerically approximate.

Notice that what is returned is an `ODESystem`, but now with the simplified set of
Expand Down
Loading

0 comments on commit 0be2ba4

Please sign in to comment.