Skip to content

Commit

Permalink
Merge branch 'SciML:master' into ada_loss
Browse files Browse the repository at this point in the history
  • Loading branch information
ayushinav authored Mar 16, 2024
2 parents 4369444 + 99feba6 commit 8644402
Show file tree
Hide file tree
Showing 6 changed files with 113 additions and 51 deletions.
60 changes: 60 additions & 0 deletions .github/workflows/Downgrade.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: Downgrade
on:
pull_request:
branches:
- master
paths-ignore:
- 'docs/**'
push:
branches:
- master
paths-ignore:
- 'docs/**'
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
group:
- QA
- ODEBPINN
- PDEBPINN
- NNPDE1
- NNPDE2
- AdaptiveLoss
- Logging
- Forward
- DGM
version:
- "1"
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v1
with:
version: ${{ matrix.version }}
- uses: actions/cache@v4
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- uses: julia-actions/julia-downgrade-compat@v1
with:
skip: LinearAlgebra, Pkg, Random, Test
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
env:
GROUP: ${{ matrix.group }}
- uses: julia-actions/julia-processcoverage@v1
with:
directories: src,lib/NeuralPDELogging/src
- uses: codecov/codecov-action@v4
with:
files: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: true
56 changes: 28 additions & 28 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -40,50 +40,50 @@ Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"

[compat]
Adapt = "4"
AdvancedHMC = "0.6"
AdvancedHMC = "0.6.1"
Aqua = "0.8"
ArrayInterface = "7"
CUDA = "5.1"
ChainRulesCore = "1"
ComponentArrays = "0.15"
ArrayInterface = "7.7"
CUDA = "5.2"
ChainRulesCore = "1.18"
ComponentArrays = "0.15.8"
Cubature = "1.5"
DiffEqBase = "6"
DiffEqNoiseProcess = "5.1"
Distributions = "0.25"
DiffEqBase = "6.144"
DiffEqNoiseProcess = "5.20"
Distributions = "0.25.107"
DocStringExtensions = "0.9"
DomainSets = "0.6, 0.7"
Flux = "0.14"
ForwardDiff = "0.10"
Functors = "0.4"
Flux = "0.14.11"
ForwardDiff = "0.10.36"
Functors = "0.4.4"
Integrals = "4"
LineSearches = "7.2"
LinearAlgebra = "1"
LogDensityProblems = "2"
Lux = "0.5"
LuxCUDA = "0.3"
Lux = "0.5.14"
LuxCUDA = "0.3.2"
MCMCChains = "6"
ModelingToolkit = "8"
MonteCarloMeasurements = "1"
MethodOfLines = "0.10.7"
ModelingToolkit = "8.75"
MonteCarloMeasurements = "1.1"
Optim = "1.7.8"
Optimization = "3"
OptimizationOptimJL = "0.2"
OptimizationOptimisers = "0.2"
OrdinaryDiffEq = "6"
Optimization = "3.22"
OptimizationOptimJL = "0.2.1"
OptimizationOptimisers = "0.2.1"
OrdinaryDiffEq = "6.70"
Pkg = "1"
QuasiMonteCarlo = "0.3.2"
Random = "1"
Reexport = "1.0"
RuntimeGeneratedFunctions = "0.5"
Reexport = "1.2"
RuntimeGeneratedFunctions = "0.5.11"
SafeTestsets = "0.1"
SciMLBase = "2"
Statistics = "1"
SymbolicUtils = "1"
Symbolics = "5"
SciMLBase = "2.24"
Statistics = "1.10"
SymbolicUtils = "1.4"
Symbolics = "5.17"
Test = "1"
UnPack = "1"
Zygote = "0.6"
MethodOfLines = "0.10.7"
julia = "1.6"
Zygote = "0.6.68"
julia = "1.10"

[extras]
Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595"
Expand Down
2 changes: 1 addition & 1 deletion docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ makedocs(sitename = "NeuralPDE.jl",
authors = "#",
modules = [NeuralPDE],
clean = true, doctest = false, linkcheck = true,
warnonly = [:missing_docs, :example_block],
warnonly = [:missing_docs],
format = Documenter.HTML(assets = ["assets/favicon.ico"],
canonical = "https://docs.sciml.ai/NeuralPDE/stable/"),
pages = pages)
Expand Down
8 changes: 4 additions & 4 deletions docs/src/tutorials/dgm.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,15 @@ where $\vec{x}$ is the concatenated vector of $(t, x)$ and $L$ is the number of

Let's try to solve the following Burger's equation using Deep Galerkin Method for $\alpha = 0.05$ and compare our solution with the finite difference method:

$$
```math
\partial_t u(t, x) + u(t, x) \partial_x u(t, x) - \alpha \partial_{xx} u(t, x) = 0
$$
```

defined over

$$
```math
t \in [0, 1], x \in [-1, 1]
$$
```

with boundary conditions
```math
Expand Down
34 changes: 18 additions & 16 deletions src/BPINN_ode.jl
Original file line number Diff line number Diff line change
Expand Up @@ -123,18 +123,19 @@ function BNNODE(chain, Kernel = HMC; strategy = nothing, draw_samples = 2000,
end

"""
Contains ahmc_bayesian_pinn_ode() function output:
1> a MCMCChains.jl chain object for sampled parameters
2> The set of all sampled parameters
3> statistics like:
> n_steps
> acceptance_rate
> log_density
> hamiltonian_energy
> hamiltonian_energy_error
> numerical_error
> step_size
> nom_step_size
Contains `ahmc_bayesian_pinn_ode()` function output:
1. A MCMCChains.jl chain object for sampled parameters.
2. The set of all sampled parameters.
3. Statistics like:
- n_steps
- acceptance_rate
- log_density
- hamiltonian_energy
- hamiltonian_energy_error
- numerical_error
- step_size
- nom_step_size
"""
struct BPINNstats{MC, S, ST}
mcmc_chain::MC
Expand All @@ -143,10 +144,11 @@ struct BPINNstats{MC, S, ST}
end

"""
BPINN Solution contains the original solution from AdvancedHMC.jl sampling(BPINNstats contains fields related to that)
> ensemblesol is the Probabilistic Estimate(MonteCarloMeasurements.jl Particles type) of Ensemble solution from All Neural Network's(made using all sampled parameters) output's.
> estimated_nn_params - Probabilistic Estimate of NN params from sampled weights,biases
> estimated_de_params - Probabilistic Estimate of DE params from sampled unknown DE parameters
BPINN Solution contains the original solution from AdvancedHMC.jl sampling (BPINNstats contains fields related to that).
1. `ensemblesol` is the Probabilistic Estimate (MonteCarloMeasurements.jl Particles type) of Ensemble solution from All Neural Network's (made using all sampled parameters) output's.
2. `estimated_nn_params` - Probabilistic Estimate of NN params from sampled weights, biases.
3. `estimated_de_params` - Probabilistic Estimate of DE params from sampled unknown DE parameters.
"""
struct BPINNsolution{O <: BPINNstats, E, NP, OP, P}
original::O
Expand Down
4 changes: 2 additions & 2 deletions src/advancedHMC_MCMC.jl
Original file line number Diff line number Diff line change
Expand Up @@ -344,8 +344,8 @@ end
!!! warn
Note that ahmc_bayesian_pinn_ode() only supports ODEs which are written in the out-of-place form, i.e.
`du = f(u,p,t)`, and not `f(du,u,p,t)`. If not declared out-of-place, then the ahmc_bayesian_pinn_ode()
Note that `ahmc_bayesian_pinn_ode()` only supports ODEs which are written in the out-of-place form, i.e.
`du = f(u,p,t)`, and not `f(du,u,p,t)`. If not declared out-of-place, then the `ahmc_bayesian_pinn_ode()`
will exit with an error.
## Example
Expand Down

0 comments on commit 8644402

Please sign in to comment.