MADNESS  version 0.9
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
EFieldOperator Class Reference

#include <operator-maxwell.h>

Inheritance diagram for EFieldOperator:
Inheritance graph
[legend]
Collaboration diagram for EFieldOperator:
Collaboration graph
[legend]

Public Member Functions

 EFieldOperator (const function &_epshat, const double _omega, const double _mu0, const double _eps0, const vecfunc &_gradlnepshat, const Function< double, 3 > &_box_mask, const Function< double, 3 > &_grad_mask, const SeparatedConvolution< double, 3 > &_G)
 
- Public Member Functions inherited from madness::Operator< vecfunc >
vecfuncapplyOp (const vecfunc &in, vecfunc &out) const
 Public access to the operator's action, returns out for convenience. More...
 
virtual ~Operator ()
 

Protected Member Functions

void action (const vecfunc &in, vecfunc &out) const
 The action of the operator. More...
 

Protected Attributes

const functionepshat
 
const complexd prefact
 
const vecfuncgradlnepshat
 
const Function< double, 3 > & box_mask
 
const Function< double, 3 > & grad_mask
 
const SeparatedConvolution
< double, 3 > & 
G
 

Detailed Description

A class for storing all the pertinent data for an enveloped incident pulse.

NOTE that all units are in atomic units, unless specified otherwise.

Constructor & Destructor Documentation

EFieldOperator::EFieldOperator ( const function _epshat,
const double  _omega,
const double  _mu0,
const double  _eps0,
const vecfunc _gradlnepshat,
const Function< double, 3 > &  _box_mask,
const Function< double, 3 > &  _grad_mask,
const SeparatedConvolution< double, 3 > &  _G 
)
inline

Needs the epsilon-hat complex dielectric, the frequency omega, mu0, eps0, the gradient of ln(epshat), the box_mask function to make the function 0 at the boundary, the grad_mask function to smooth out derivatives near the boundaries, and the Poisson Green's function

Member Function Documentation

void EFieldOperator::action ( const vecfunc in,
vecfunc out 
) const
inlineprotectedvirtual

The action of the operator.

Parameters
[in]inThe input vector
[out]outThe action of the operator on the input vector

Implements madness::Operator< vecfunc >.

References madness::apply(), and madness::Function< T, NDIM >::clear().

Member Data Documentation

const Function<double, 3>& EFieldOperator::box_mask
protected
const function& EFieldOperator::epshat
protected
const SeparatedConvolution<double, 3>& EFieldOperator::G
protected
const Function<double, 3>& EFieldOperator::grad_mask
protected
const vecfunc& EFieldOperator::gradlnepshat
protected
const complexd EFieldOperator::prefact
protected

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