Skip to content

2D Phase Field Implementation of a Lithium Metal Moving Boundary Anode

License

Notifications You must be signed in to change notification settings

BradyPlanden/BattPhase.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BattPhase.jl

Stable Dev Build Status Coverage

BattPhase.jl provides a Julia framework for solving 2D lithium-metal phase field problems. This package is presented to support this publication, please cite it if you use this work.

 

Install (Julia 1.7 and later)

(v1.7) pkg> add https://github.com/BradyPlanden/BattPhase.jl

(Type ] to enter package mode.)

 

Results

The following results have been obtained utilising Julia 1.7.2, with Threads.nthreads() = 1 and Pardiso.jl utilised for LinearAlgebra. Benchmark hardware was a 10980XE with 64Gb of memory. Visual results from the included GaussSeed.jl example are shown below,

The following table includes the median result for 7 benchmark samples up to 3202. Results above 3202 currently include 2 samples with a mean shown. Three significant figures are presented.  

Code Timing - Upwind Scheme

Number of Node Points Runge-Kutta 3 Runge-Kutta 3 Approximation
102 5.86 ms 2.02 ms
202 46.7 ms 15.6 ms
402 262 ms 87.7 ms
802 1.58 s 532 ms
1602 13.4 s 4.57 s
3202 121 s 41.1 s
6402 953 s 315 s

About

2D Phase Field Implementation of a Lithium Metal Moving Boundary Anode

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages