Electrowetting on dielectric
|
Classes | |
struct | ScratchData |
Public Member Functions | |
CahnHilliard (const Triangulation< dim > &tria, Material_Parameters ¶ms, const unsigned deg, const TestCase _tc) | |
virtual | ~CahnHilliard () |
void | advance () |
double | it_error () |
Public Attributes | |
AsFunction< dim > | get_phase |
The phase field. | |
AsFunction< dim > | get_potential |
The chemical potential. | |
AsFunction< dim > | get_old_phase |
The old phase field. | |
Protected Types | |
typedef IteratorGroup < 3, typename hp::DoFHandler < dim >::active_cell_iterator > | Iterator |
Protected Member Functions | |
virtual void | InitLADataSuffix () |
virtual void | AssembleSystem (std::vector< AsFunction< dim > * > &data, const double time, const bool m_theaded=true) |
void | AssembleCell (const Iterator Its, ScratchData &scratch, typename Problem< dim >::PerTaskData &data) |
virtual void | ReinitPrec () |
virtual void | SolveSystemPreffix () |
virtual void | DoSolve (SolverControl &control) |
virtual void | SetInitialData () |
virtual void | PreRefinementPreffix () |
virtual void | PostRefinementSuffix (const std::vector< TrilinosWrappers::Vector > &sol_tmp) |
Protected Attributes | |
const material_function & | mobility |
Mobility of the phases. | |
const material_function & | permitivity |
Electric permittivity of the phases. | |
const material_function & | density |
Density of the phases. | |
const GLPotential & | W |
The derivative of the Ginzburg Landau potential. | |
const InterfaceEnergy & | gamma_fs |
The derivative of the interface fee energy. | |
const double | gamma |
Suface tension. | |
const double | delta |
Interface thickness. | |
const double | alpha |
Surface transport parameter. | |
const TestCase | tc |
The test case. | |
TrilinosWrappers::Vector | oldsol |
The old solution. | |
TrilinosWrappers::Vector | olditsol |
Solution at the previous iterative step in the inner loop. |
A Cahn Hilliard equation with surface transport terms:
with boundary conditions
Definition at line 58 of file CahnHilliard.h.
typedef IteratorGroup<3,typename hp::DoFHandler<dim>::active_cell_iterator> CahnHilliard< dim >::Iterator [protected] |
We group the iterators of this problem and the problems this one takes information from as follows:
Definition at line 107 of file CahnHilliard.h.
CahnHilliard< dim >::CahnHilliard | ( | const Triangulation< dim > & | tria, |
Material_Parameters & | params, | ||
const unsigned | deg, | ||
const TestCase | _tc | ||
) |
Constructor. Copy the provided parameters to the members:
tria | : A reference to the mesh where the problem will live. |
params | : The collection of material parameters. |
deg | : The polynomial degree for the finite element spaces where the phase field and chemical potential are defined. |
_tc | : The testcase. Needed to know which initial condition to invoke. |
virtual CahnHilliard< dim >::~CahnHilliard | ( | ) | [virtual] |
Clear the data.
void CahnHilliard< dim >::advance | ( | ) |
Advance in time.
double CahnHilliard< dim >::it_error | ( | ) |
compute the iterative error.
virtual void CahnHilliard< dim >::InitLADataSuffix | ( | ) | [protected, virtual] |
What to do after the LA data is initialized
Reimplemented from Problem< dim >.
virtual void CahnHilliard< dim >::AssembleSystem | ( | std::vector< AsFunction< dim > * > & | data, |
const double | time, | ||
const bool | m_theaded = true |
||
) | [protected, virtual] |
Assemble the system matrix and right hand side for the current status of the problem
data | : The views of the other problems this one needs information from to be able to assemble. |
time | : The current time. |
m_theaded | : flag that indicates if the assembly should be done using multithreading. |
Implements Problem< dim >.
void CahnHilliard< dim >::AssembleCell | ( | const Iterator | Its, |
ScratchData & | scratch, | ||
typename Problem< dim >::PerTaskData & | data | ||
) | [protected] |
Assemble the local problems.
Its | : The cell iterators for the current problem and the data. |
scratch | : The scratch data. |
data | : The per task data. |
virtual void CahnHilliard< dim >::ReinitPrec | ( | ) | [protected, virtual] |
Does nothing. Needed for compatibility
Implements Problem< dim >.
virtual void CahnHilliard< dim >::SolveSystemPreffix | ( | ) | [protected, virtual] |
What to do before we solve the system
Reimplemented from Problem< dim >.
virtual void CahnHilliard< dim >::DoSolve | ( | SolverControl & | control | ) | [protected, virtual] |
Solve the system to given accuracy
Implements Problem< dim >.
virtual void CahnHilliard< dim >::SetInitialData | ( | ) | [protected, virtual] |
Set the initial data
Implements Problem< dim >.
virtual void CahnHilliard< dim >::PreRefinementPreffix | ( | ) | [protected, virtual] |
Used to handle changes in the triangulation: Copy to the solution transfer
Implements Problem< dim >.
virtual void CahnHilliard< dim >::PostRefinementSuffix | ( | const std::vector< TrilinosWrappers::Vector > & | sol_tmp | ) | [protected, virtual] |
Used to handle changes in the triangulation: Copy from the solution transfer
Implements Problem< dim >.
const material_function& CahnHilliard< dim >::mobility [protected] |
Mobility of the phases.
Definition at line 83 of file CahnHilliard.h.
const material_function & CahnHilliard< dim >::permitivity [protected] |
Electric permittivity of the phases.
Definition at line 83 of file CahnHilliard.h.
const material_function & CahnHilliard< dim >::density [protected] |
Density of the phases.
Definition at line 83 of file CahnHilliard.h.
const GLPotential& CahnHilliard< dim >::W [protected] |
The derivative of the Ginzburg Landau potential.
Definition at line 86 of file CahnHilliard.h.
const InterfaceEnergy& CahnHilliard< dim >::gamma_fs [protected] |
The derivative of the interface fee energy.
Definition at line 87 of file CahnHilliard.h.
const double CahnHilliard< dim >::gamma [protected] |
Suface tension.
Definition at line 88 of file CahnHilliard.h.
const double CahnHilliard< dim >::delta [protected] |
Interface thickness.
Definition at line 88 of file CahnHilliard.h.
const double CahnHilliard< dim >::alpha [protected] |
Surface transport parameter.
Definition at line 88 of file CahnHilliard.h.
const TestCase CahnHilliard< dim >::tc [protected] |
The test case.
Definition at line 91 of file CahnHilliard.h.
TrilinosWrappers::Vector CahnHilliard< dim >::oldsol [protected] |
The old solution.
Definition at line 92 of file CahnHilliard.h.
TrilinosWrappers::Vector CahnHilliard< dim >::olditsol [protected] |
Solution at the previous iterative step in the inner loop.
Definition at line 92 of file CahnHilliard.h.
AsFunction<dim> CahnHilliard< dim >::get_phase |
The phase field.
Definition at line 202 of file CahnHilliard.h.
AsFunction<dim> CahnHilliard< dim >::get_potential |
The chemical potential.
Definition at line 202 of file CahnHilliard.h.
AsFunction<dim> CahnHilliard< dim >::get_old_phase |
The old phase field.
Definition at line 202 of file CahnHilliard.h.