Electrowetting on dielectric
Public Member Functions | Public Attributes | Protected Attributes
CHNSE< dim > Class Template Reference
Collaboration diagram for CHNSE< dim >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 CHNSE (const Triangulation< dim > &tria, const DataStorage< dim > &data, ConditionalOStream &costream)
 ~CHNSE ()
void set_dt (const double _dt)
void init ()
void solve (std::vector< AsFunction< dim > * > &ph_params, std::vector< AsFunction< dim > * > v_params, std::vector< AsFunction< dim > * > &p_params, const double time)
unsigned size () const
const hp::FECollection< dim > & get_ph_mu_fe () const
const hp::FECollection< dim > & get_vel_fe () const
const hp::FECollection< dim > & get_pres_fe () const

Public Attributes

AsFunction< dim > & get_phase
 Phase field. Part of CahnHilliard.
AsFunction< dim > & get_potential
 Chemical potential. Part of CahnHilliard.
AsFunction< dim > & get_old_phase
 Old phase field. Part of CahnHilliard.
AsFunction< dim > & get_velocity
 Velocity.
AsFunction< dim > & get_pressure
 Pressure.
AsFunction< dim > & get_extrapolated_pressure
 $ 2p^k - p^{k-1} $. Part of Pressure.

Protected Attributes

Material_Parameters params
 Material Parameters.
CahnHilliard< dim > ch
 The CahnHilliard subproblem.
Velocity< dim > vel
 The Velocity subproblem.
Pressure< dim > pres
 The pressure subproblem.
ConditionalOStreamv_cout
 A reference to the conditional ostream for output.

Detailed Description

template<int dim>
class CHNSE< dim >

This class wraps together the CahnHilliard problem and the ones related to Navier Stokes, that is Velocity and Pressure.

The purpose of doing this is to be able to implement an inner fixed point iteration between these problems. This allows for bigger time steps.

Definition at line 17 of file CHNSE.h.


Constructor & Destructor Documentation

template<int dim>
CHNSE< dim >::CHNSE ( const Triangulation< dim > &  tria,
const DataStorage< dim > &  data,
ConditionalOStream costream 
)

Initialize the subproblems.

Parameters:
tria: The triangulation where the problems are defined.
data: The collection of problem data needed to properly initialize each one of the subproblems
costream: The conditional ostream used to send convergence information to.
template<int dim>
CHNSE< dim >::~CHNSE ( )

Clear data.


Member Function Documentation

template<int dim>
void CHNSE< dim >::set_dt ( const double  _dt)

Sets the time step in each one of the subproblems.

template<int dim>
void CHNSE< dim >::init ( )

Calls Problem::init on each one of the subproblems.

template<int dim>
void CHNSE< dim >::solve ( std::vector< AsFunction< dim > * > &  ph_params,
std::vector< AsFunction< dim > * >  v_params,
std::vector< AsFunction< dim > * > &  p_params,
const double  time 
)

Solve, via an inner fixed point iteration, the Cahn Hilliard Navier Stokes system.

Parameters:
ph_params: The collection of AsFunction objects that CahnHilliard needs.
v_params: The collection of AsFunction objects that Velocity needs.
p_params: The collection of AsFunction objects that Pressure needs.
time: The current time.
template<int dim>
unsigned CHNSE< dim >::size ( ) const

Compute the total size of this problem. This is just CahnHilliard.size + Velocity.size + Pressure.size

template<int dim>
const hp::FECollection<dim>& CHNSE< dim >::get_ph_mu_fe ( ) const [inline]

Get the finite element space of CahnHilliard.

Definition at line 69 of file CHNSE.h.

References CHNSE< dim >::ch.

template<int dim>
const hp::FECollection<dim>& CHNSE< dim >::get_vel_fe ( ) const [inline]

Get the finite element space of Velocity.

Definition at line 73 of file CHNSE.h.

References CHNSE< dim >::vel.

template<int dim>
const hp::FECollection<dim>& CHNSE< dim >::get_pres_fe ( ) const [inline]

Get the finite element space of Pressure.

Definition at line 77 of file CHNSE.h.

References CHNSE< dim >::pres.


Member Data Documentation

template<int dim>
Material_Parameters CHNSE< dim >::params [protected]

Material Parameters.

Definition at line 54 of file CHNSE.h.

template<int dim>
CahnHilliard<dim> CHNSE< dim >::ch [protected]

The CahnHilliard subproblem.

Definition at line 55 of file CHNSE.h.

Referenced by CHNSE< dim >::get_ph_mu_fe().

template<int dim>
Velocity<dim> CHNSE< dim >::vel [protected]

The Velocity subproblem.

Definition at line 56 of file CHNSE.h.

Referenced by CHNSE< dim >::get_vel_fe().

template<int dim>
Pressure<dim> CHNSE< dim >::pres [protected]

The pressure subproblem.

Definition at line 57 of file CHNSE.h.

Referenced by CHNSE< dim >::get_pres_fe().

template<int dim>
ConditionalOStream& CHNSE< dim >::v_cout [protected]

A reference to the conditional ostream for output.

Definition at line 58 of file CHNSE.h.

template<int dim>
AsFunction<dim>& CHNSE< dim >::get_phase

Phase field. Part of CahnHilliard.

Definition at line 60 of file CHNSE.h.

template<int dim>
AsFunction<dim> & CHNSE< dim >::get_potential

Chemical potential. Part of CahnHilliard.

Definition at line 60 of file CHNSE.h.

template<int dim>
AsFunction<dim> & CHNSE< dim >::get_old_phase

Old phase field. Part of CahnHilliard.

Definition at line 60 of file CHNSE.h.

template<int dim>
AsFunction<dim> & CHNSE< dim >::get_velocity

Velocity.

Definition at line 60 of file CHNSE.h.

template<int dim>
AsFunction<dim> & CHNSE< dim >::get_pressure

Pressure.

Definition at line 60 of file CHNSE.h.

template<int dim>
AsFunction<dim> & CHNSE< dim >::get_extrapolated_pressure

$ 2p^k - p^{k-1} $. Part of Pressure.

Definition at line 60 of file CHNSE.h.


The documentation for this class was generated from the following file: