Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | Static Private Attributes
PC_UC_Solver Class Reference

solver for unit cell problem for photonic crystals. More...

#include <PC_UC_Solver.h>

Collaboration diagram for PC_UC_Solver:
Collaboration graph
[legend]

List of all members.

Public Types

enum  EquationType { TRANSVERSAL_ELECTRIC, TRANSVERSAL_MAGNETIC }

Public Member Functions

 PC_UC_Solver (const concepts::Space< concepts::Real > &space, EquationType type, const MID &attrToEpsilon, double omega, const concepts::BoundaryConditions &bc)
void setOmega (double omega)
void setRhs (const std::string &rhs_r, const std::string &rhs_i)
void solve (concepts::Cmplx k1, concepts::Cmplx k2, concepts::Vector< concepts::Cmplx > &sol)

Static Public Member Functions

static
concepts::PiecewiseConstFormula
< concepts::Real
genTECoeff (const MID &attToEps)
static
concepts::PiecewiseConstFormula
< concepts::Real
genTMCoeff (const MID &attToEps)

Private Attributes

hp2D::Advection< concepts::Realadv_BF_1
hp2D::Advection< concepts::Realadv_BF_2
concepts::SparseMatrix
< concepts::Real
adv_M_1
concepts::SparseMatrix
< concepts::Real
adv_M_2
concepts::BoundaryConditions bc
concepts::PiecewiseConstFormula
< concepts::Real
coeff_TE_F
concepts::PiecewiseConstFormula
< concepts::Real
coeff_TM_F
hp2D::Identity< Real > id_heat_BF
concepts::SparseMatrix
< concepts::Real
id_heat_M
hp2D::Identity< Real > id_mass_BF
concepts::SparseMatrix
< concepts::Real
id_mass_M
hp2D::Laplace< concepts::Reallap_BF
concepts::SparseMatrix
< concepts::Real
lap_M
double omega
concepts::Vector< concepts::Cmplxrhs
const concepts::Space
< concepts::Real > & 
space

Static Private Attributes

static
concepts::PiecewiseConstFormula
< concepts::Real
one_F
static
concepts::PiecewiseConstFormula
< concepts::Real
zero_F

Detailed Description

solver for unit cell problem for photonic crystals.

Solves problems of transversal electric (TE) and trans. magnetic (TM) kind.

Definition at line 31 of file PC_UC_Solver.h.


Member Enumeration Documentation

Enumerator:
TRANSVERSAL_ELECTRIC 
TRANSVERSAL_MAGNETIC 

Definition at line 33 of file PC_UC_Solver.h.


Constructor & Destructor Documentation

PC_UC_Solver::PC_UC_Solver ( const concepts::Space< concepts::Real > &  space,
EquationType  type,
const MID attrToEpsilon,
double  omega,
const concepts::BoundaryConditions bc 
)

Member Function Documentation

static concepts::PiecewiseConstFormula<concepts::Real> PC_UC_Solver::genTECoeff ( const MID attToEps) [static]
static concepts::PiecewiseConstFormula<concepts::Real> PC_UC_Solver::genTMCoeff ( const MID attToEps) [static]
void PC_UC_Solver::setOmega ( double  omega)
void PC_UC_Solver::setRhs ( const std::string &  rhs_r,
const std::string &  rhs_i 
)
void PC_UC_Solver::solve ( concepts::Cmplx  k1,
concepts::Cmplx  k2,
concepts::Vector< concepts::Cmplx > &  sol 
)

Member Data Documentation

Definition at line 66 of file PC_UC_Solver.h.

Definition at line 67 of file PC_UC_Solver.h.

Definition at line 75 of file PC_UC_Solver.h.

Definition at line 76 of file PC_UC_Solver.h.

Definition at line 57 of file PC_UC_Solver.h.

Definition at line 64 of file PC_UC_Solver.h.

Definition at line 63 of file PC_UC_Solver.h.

Definition at line 68 of file PC_UC_Solver.h.

Definition at line 74 of file PC_UC_Solver.h.

Definition at line 69 of file PC_UC_Solver.h.

Definition at line 73 of file PC_UC_Solver.h.

Definition at line 65 of file PC_UC_Solver.h.

Definition at line 72 of file PC_UC_Solver.h.

double PC_UC_Solver::omega [private]

Definition at line 59 of file PC_UC_Solver.h.

Definition at line 62 of file PC_UC_Solver.h.

Definition at line 71 of file PC_UC_Solver.h.

Definition at line 56 of file PC_UC_Solver.h.

Definition at line 61 of file PC_UC_Solver.h.


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

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)