Amandus: Simulations based on multilevel Schwarz methods
Classes | Functions
cahn_hilliard.cc File Reference

Instationary Cahn-Hilliard model.The Cahn-Hilliard model, which in strong form reads

\[ u' = - \Delta (\frac{1}{\epsilon} w'(u) - \epsilon \Delta u) \]

Where \(w\) is usually a double-well energy function like \((u^2 - 1)^2\). The model can be derived as a gradient flow, minimizing the same Energy functional as the Allen-Cahn model. However, unlike the Allen-Cahn, this model is mass conserving. More...

#include <boost/scoped_ptr.hpp>
#include <deal.II/algorithms/newton.h>
#include <deal.II/algorithms/theta_timestepping.h>
#include <deal.II/base/function.h>
#include <deal.II/fe/fe_tools.h>
#include <deal.II/numerics/dof_output_operator.h>
#include <amandus/adaptivity.h>
#include <amandus/apps.h>
#include <amandus/cahn_hilliard/massout.h>
#include <amandus/cahn_hilliard/matrix.h>
#include <amandus/cahn_hilliard/residual.h>
#include <amandus/cahn_hilliard/samples.h>

Classes

class  RefineStrategyCahnHillard< dim >
 

Functions

int main (int argc, const char **argv)
 

Detailed Description

Instationary Cahn-Hilliard model.

The Cahn-Hilliard model, which in strong form reads

\[ u' = - \Delta (\frac{1}{\epsilon} w'(u) - \epsilon \Delta u) \]

Where \(w\) is usually a double-well energy function like \((u^2 - 1)^2\). The model can be derived as a gradient flow, minimizing the same Energy functional as the Allen-Cahn model. However, unlike the Allen-Cahn, this model is mass conserving.

It can be used as a model for seperated phases with \(\epsilon\) controlling the width of the interface. Currently, multigrid is only working for very large \(\epsilon\) which is probably related to the fact that the coarse grids can not resolve sharp interfaces.

As the interface is the only interesting part of the solution, we can use adaptive mesh refinement to calculate with relatively few degrees of freedom.

Function Documentation

int main ( int  argc,
const char **  argv 
)

Here is the call graph for this function: