Phase Field library in Go using a spectral solver. Go to the webpage to see examples.
- 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
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.
- Register fields, equations and required custom functions in a model
- The fields should be populated with their initial value before they are registered
- Pass the model to a solver.
- Register custom callbacks (or some of the ones shipped with GOPF)
- Request the solver to propoagate the model
- Analyse the results with your favourite tool