VariationalAlphaDxUDxVOperator Class Reference

#include <VariationalOperatorAlphaDxUDxV.hpp>

Inheritance diagram for VariationalAlphaDxUDxVOperator:

Inheritance graph
[legend]
Collaboration diagram for VariationalAlphaDxUDxVOperator:

Collaboration graph
[legend]

List of all members.

Public Types

enum  Type {
  muGradUGradV, alphaDxUDxV, nuUdxV, nuDxUV,
  alphaUV
}
enum  Property { normal, jump, mean }

Public Member Functions

ConstReferenceCounting
< ScalarFunctionBase
alpha () const
const size_t & i () const
const size_t & j () const
ReferenceCounting
< VariationalBilinearOperator
operator* (const ConstReferenceCounting< ScalarFunctionBase > &c) const
 VariationalAlphaDxUDxVOperator (const size_t &unknownNumber, const VariationalOperator::Property &unknownProperty, const size_t &testFunctionNumber, const VariationalOperator::Property &testFunctionProperty, ConstReferenceCounting< ScalarFunctionBase > alpha, const size_t &i, const size_t &j)
 VariationalAlphaDxUDxVOperator (const VariationalAlphaDxUDxVOperator &V)
 ~VariationalAlphaDxUDxVOperator ()
const
VariationalBilinearOperator::Type
type () const
const size_t & unknownNumber () const
const
VariationalOperator::Property
unknownProperty () const
const size_t & testFunctionNumber () const
const
VariationalOperator::Property
testFunctionProperty () const

Protected Attributes

const VariationalOperator::Property __testFunctionProperty

Private Attributes

ConstReferenceCounting
< ScalarFunctionBase
__Alpha
const size_t __i
const size_t __j


Detailed Description

Definition at line 36 of file VariationalOperatorAlphaDxUDxV.hpp.


Member Enumeration Documentation

Enumerator:
muGradUGradV 
alphaDxUDxV 
nuUdxV 
nuDxUV 
alphaUV 

Definition at line 38 of file VariationalBilinearOperator.hpp.

00038             {
00039     muGradUGradV,
00040     alphaDxUDxV,
00041     nuUdxV,
00042     nuDxUV,
00043     alphaUV
00044   };

Enumerator:
normal 
jump 
mean 

Definition at line 33 of file VariationalOperator.hpp.

00033                 {
00034     normal,
00035     jump,
00036     mean
00037   };


Constructor & Destructor Documentation

VariationalAlphaDxUDxVOperator::VariationalAlphaDxUDxVOperator ( const size_t &  unknownNumber,
const VariationalOperator::Property unknownProperty,
const size_t &  testFunctionNumber,
const VariationalOperator::Property testFunctionProperty,
ConstReferenceCounting< ScalarFunctionBase alpha,
const size_t &  i,
const size_t &  j 
) [inline]

Constructor

Parameters:
unknownNumber unknown number
unknownProperty unknown property
testFunctionNumber test function number
testFunctionProperty test function property
alpha the diffusion coefficient
i first derivative component number (in $\partial_{x_i}$)
j second derivative component number (in $\partial_{x_j}$)

Definition at line 107 of file VariationalOperatorAlphaDxUDxV.hpp.

Referenced by operator*().

VariationalAlphaDxUDxVOperator::VariationalAlphaDxUDxVOperator ( const VariationalAlphaDxUDxVOperator V  )  [inline]

Copy Constructor

Parameters:
V original operator

Definition at line 129 of file VariationalOperatorAlphaDxUDxV.hpp.

00130     : VariationalBilinearOperator(V),
00131       __Alpha(V.__Alpha),
00132       __i(V.__i),
00133       __j(V.__j)
00134   {
00135     ;
00136   }

VariationalAlphaDxUDxVOperator::~VariationalAlphaDxUDxVOperator (  )  [inline]

Destructor

Definition at line 142 of file VariationalOperatorAlphaDxUDxV.hpp.

00143   {
00144     ;
00145   }


Member Function Documentation

ConstReferenceCounting<ScalarFunctionBase> VariationalAlphaDxUDxVOperator::alpha (  )  const [inline]

const size_t& VariationalAlphaDxUDxVOperator::i (  )  const [inline]

const size_t& VariationalAlphaDxUDxVOperator::j (  )  const [inline]

ReferenceCounting<VariationalBilinearOperator> VariationalAlphaDxUDxVOperator::operator* ( const ConstReferenceCounting< ScalarFunctionBase > &  c  )  const [inline, virtual]

"multiplies" the operator by a coefficient

Parameters:
c the given coefficient
Returns:
$ \int c\alpha\partial_{x_i}u\partial_{x_j}v $

Implements VariationalBilinearOperator.

Definition at line 84 of file VariationalOperatorAlphaDxUDxV.hpp.

References __Alpha, ScalarFunctionBuilder::getBuiltFunction(), BinaryOperation::product, ScalarFunctionBuilder::setBinaryOperation(), ScalarFunctionBuilder::setFunction(), and VariationalAlphaDxUDxVOperator().

00085   {
00086     VariationalAlphaDxUDxVOperator* newOperator
00087       = new VariationalAlphaDxUDxVOperator(*this);
00088     ScalarFunctionBuilder functionBuilder;
00089     functionBuilder.setFunction(__Alpha);
00090     functionBuilder.setBinaryOperation(BinaryOperation::product,c);
00091 
00092     (*newOperator).__Alpha = functionBuilder.getBuiltFunction();
00093     return newOperator;
00094   }

Here is the call graph for this function:

const VariationalBilinearOperator::Type& VariationalBilinearOperator::type (  )  const [inline, inherited]

Returns the type of the operator

Returns:
__type

Definition at line 60 of file VariationalBilinearOperator.hpp.

References VariationalBilinearOperator::__type.

00061   {
00062     return __type;
00063   }

const size_t& VariationalBilinearOperator::unknownNumber (  )  const [inline, inherited]

const VariationalOperator::Property& VariationalBilinearOperator::unknownProperty (  )  const [inline, inherited]

Returns the property of the unknown operator

Returns:
__unknownProperty

Definition at line 80 of file VariationalBilinearOperator.hpp.

References VariationalBilinearOperator::__unknownProperty.

00081   {
00082     return __unknownProperty;
00083   }

const size_t& VariationalOperator::testFunctionNumber (  )  const [inline, inherited]

const VariationalOperator::Property& VariationalOperator::testFunctionProperty (  )  const [inline, inherited]

Returns the test function property

Returns:
__testFunctionProperty

Definition at line 62 of file VariationalOperator.hpp.

References VariationalOperator::__testFunctionProperty.

00063   {
00064     return __testFunctionProperty;
00065   }


Member Data Documentation

$\alpha$

Definition at line 41 of file VariationalOperatorAlphaDxUDxV.hpp.

Referenced by alpha(), and operator*().

const size_t VariationalAlphaDxUDxVOperator::__i [private]

$ i $ in $\partial_{x_i}$

Definition at line 43 of file VariationalOperatorAlphaDxUDxV.hpp.

Referenced by i().

const size_t VariationalAlphaDxUDxVOperator::__j [private]

$ j $ in $\partial_{x_j}$

Definition at line 44 of file VariationalOperatorAlphaDxUDxV.hpp.

Referenced by j().

stores test function properties

Definition at line 44 of file VariationalOperator.hpp.

Referenced by VariationalOperator::testFunctionProperty().


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

Generated on Wed Nov 19 00:16:52 2008 for FreeFEM3D (aka ff3d) by  doxygen 1.5.6