Skip to content

Commit

Permalink
Merge in doc updates from dev (#15)
Browse files Browse the repository at this point in the history
  • Loading branch information
moyner authored Nov 8, 2024
1 parent f7af828 commit 528a30a
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 40 deletions.
52 changes: 33 additions & 19 deletions docs/src/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,49 +4,59 @@
layout: home
hero:
name: BattMo
text: Framework for continuum modelling of lithium-ion batteries written in Julia
name: BattMo.jl
text: Fast open-source battery simulation
image:
src: battmologo_stacked.png
alt: BattMo
tagline:
tagline: 1D, 2D and 3D open-source P2D/PXD Lithium-Ion battery simulation
actions:
- theme: brand
text: Getting started
link: /man/intro
- theme: alt
text: View on Github
text: Github
link: https://github.com/sintefmath/BattMo.jl
- theme: alt
text: Run a battery cycle
text: Simulate a battery
link: /examples/example_cycle
- theme: alt
text: About
link: https://batterymodel.com/
features:
- icon: 🔋
title: Feature 1
details: Details 1
link: /examples
- icon: ⏳
title: Feature 2
details: Details 2
title: Accurate and open
details: Validated on standard benchmarks. Automatic differentiation and Julia syntax means that the code is easy to read and edit. Based on proven computational core for other multiphysics domains.
link: /examples
- icon: ⚡
title: Details 3
details: We have dark mode
title: Fast and flexible
details: Written in Julia, simulate with scripting syntax without sacrificing performance. Extensible with new features.
link: /man/advanced
- icon: 🧱
title: 1D, 2D and 3D
details: One code handles both 1D models and complex 3D grids, with support for high-performance linear solvers for bigger models.
link: /examples
- icon: 📈
title: Ready for optimization and calibration
details: Automatic differentiation allows for fast gradient-based optimization and parameter/model matching
link: /examples
---
````

# BattMo.jl is a framework for continuum modelling of lithium-ion batteries written in Julia
The Battery Modelling Toolbox (**BattMo**) is a resource for continuum modelling of electrochemical devices in MATLAB. The code features a pseudo X-dimensional (PXD) framework for the Doyle-Fuller-Newman model of lithium-ion battery cells. The code implements a subset of features from the [MATLAB version of BattMo](https://github.com/BattMoTeam/BattMo) with improved numerical performance. **BattMo.jl** is based on [Jutul.jl](https://github.com/sintefmath/Jutul.jl) and uses finite-volume discretizations and automatic differentiation to simulate models in 1D, 2D and 3D.

The Battery Modelling Toolbox (**BattMo**) is a resource for continuum modelling of electrochemical devices in MATLAB. The initial development features a pseudo X-dimensional (PXD) framework for the Doyle-Fuller-Newman model of lithium-ion battery cells. This is currently a early release that implements a subset of features from the [MATLAB version of BattMo](https://github.com/BattMoTeam/BattMo) with improved numerical performance. **BattMo.jl** is based on [Jutul.jl](https://github.com/sintefmath/Jutul.jl) and uses finite-volume discretizations and automatic differentiation to simulate models in 1D, 2D and 3D.
The current implementation has many options for setting up simulation cases:

The current implementation has two options for setting up simulation cases:
- Set up 1D, 2D and 3D grids using scripting syntax
- Templates for different types of battery chemistry parameters in JSON format
- Support for a variety of open formats
- Read in input data prepared in the MATLAB version of BattMo (coin-cell, jellyroll, pouch)
- Make use of common BattMo JSON format to run cases

- You can read in input data prepared in the MATLAB version of BattMo (general 3D grids)
- Or you can use the common BattMo JSON format to run cases (primarily 1D grids)

## Installation

Expand Down Expand Up @@ -89,6 +99,10 @@ lines!(ax, t, I)
fig
```

## Get involved

The code is open source [on GitHub](https://github.com/BattmoTeam/BattMo.jl). Pull requests, comments or issues are welcome!

## Acknowledgements

BattMo has received funding from the European Union’s Horizon 2020 innovation program under grant agreement numbers:
Expand Down
12 changes: 2 additions & 10 deletions examples/example_3d_demo.jl
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
# # 3D battery example
using Jutul, BattMo, GLMakie
using StatsBase
GLMakie.closeall()

##########################
# setup input parameters #
##########################

# ## Setup input parameters
name = "p2d_40_jl_chen2020"
Expand Down Expand Up @@ -70,11 +64,9 @@ scatterlines!(ax,
markercolor = :black)

display(f)
f

############################################
# plot potential on grid at last time step #
############################################

# ## Plot potential on grid at last time step #
state = states[10]

function plot_potential(am, cc, label)
Expand Down
6 changes: 2 additions & 4 deletions examples/example_battery.jl
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
####################
# Standard example #
####################
# A basic example

using Jutul, BattMo, GLMakie

Expand Down Expand Up @@ -152,7 +150,7 @@ if !do_json
axislegend()
end

display(f)
f



10 changes: 3 additions & 7 deletions examples/example_cycle.jl
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
# # Cycling a battery 40 times with a constant current constant voltage (CCCV) control
using BattMo, GLMakie

#name="model1D_50"
name = "p2d_40_cccv"

fn = string(dirname(pathof(BattMo)), "/../test/data/jsonfiles/", name, ".json")
inputparams = readBattMoJsonInputFile(fn)

Expand All @@ -16,7 +14,7 @@ t = [state[:Control][:ControllerCV].time for state in states]
E = [state[:Control][:Phi][1] for state in states]
I = [state[:Control][:Current][1] for state in states]


# ## Plot the results
f = Figure(size = (1000, 400))

ax = Axis(f[1, 1],
Expand Down Expand Up @@ -54,9 +52,7 @@ scatterlines!(ax,
marker = :cross,
markercolor = :black)


display(f)

f



0 comments on commit 528a30a

Please sign in to comment.