Skip to content

davidkleiven/gopf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

Build Status Coverage Status Go Report Card

Phase Field library in Go using a spectral solver. Go to the webpage to see examples.

Features

  • Spectral solver using FFTW to perform fourier transformes
  • Supports 2D and 3D simulation domains
  • Rich catalog with example applications. Some selected cases are explained in detail on our webpage
  • Supports user defined terms/functions and equations
  • Wide collection of ready-to-go terms (Khachaturyan elastic theory, white noise, volume conserving noise, Vandeven filters, pair correlation functions and many more)
  • Flexible storage formats (SQL database, csv files, raw binary with XDMF)
  • Command Line Interface (CLI) for interacting with the SQL database
  • CLI for rapid production of contour plots of CSV files in case of 2D calculations

Database For Phase Field Simulations

GOPF has support for storing collections of simulations in one SQLite database. This can be useful if there are many simulations that are related (e.g. parameter sweeps). All simulations stored in one DB must have the same domain size. The GOPF database supports

  • Descriptive comments for each simulation (can changed from the CLI)
  • Each simulation is given a timestamp when it starts
  • Arbitrary numeric and/or string attributes
  • Store all field data
  • Store timeseries of user programmable function
  • Export timeseries and field data to CSV files (useful if a third-party program is used for analysis)

For further information on the schema and example see the database example.

Typical Flow of a GOPF Program

flowChart

  1. Register fields, equations and required custom functions in a model
    • The fields should be populated with their initial value before they are registered
  2. Pass the model to a solver.
  3. Register custom callbacks (or some of the ones shipped with GOPF)
  4. Request the solver to propoagate the model
  5. Analyse the results with your favourite tool

About

Phase Field library in Go using a spectral solver

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published