ReFRACtor
FullPhysics::PerturbationBuilder Class Referenceabstract

Class that builds a perturbation to use for a finite difference Jacobian. More...

#include <composite_perturbation.h>

+ Collaboration diagram for FullPhysics::PerturbationBuilder:

Public Member Functions

virtual ~PerturbationBuilder ()
 
virtual void attach_notify (CompositePerturbation &Comp_ig)
 Called when we get attached to a CompositePerturbation. More...
 
virtual void build_perturbation (blitz::Array< double, 1 > &v, int index) const =0
 Called when we need this class to do its part in setting up the perturbation array. More...
 
virtual int number_element () const =0
 Number of elements we will be adding to the perturbation. More...
 

Detailed Description

Class that builds a perturbation to use for a finite difference Jacobian.

We use a std::vector here rather than a blitz::Array just because it is easier to add something to the end of std::vector than blitz::Array. CompositePerturbation converts this to a blitz::Array before finishing the construction of the initial guess.

Definition at line 20 of file composite_perturbation.h.

Constructor & Destructor Documentation

◆ ~PerturbationBuilder()

virtual FullPhysics::PerturbationBuilder::~PerturbationBuilder ( )
inlinevirtual

Definition at line 22 of file composite_perturbation.h.

Member Function Documentation

◆ attach_notify()

virtual void FullPhysics::PerturbationBuilder::attach_notify ( CompositePerturbation Comp_ig)
inlinevirtual

Called when we get attached to a CompositePerturbation.

The default is to do nothing, but derived classes can override this if desired.

Definition at line 29 of file composite_perturbation.h.

◆ build_perturbation()

virtual void FullPhysics::PerturbationBuilder::build_perturbation ( blitz::Array< double, 1 > &  v,
int  index 
) const
pure virtual

Called when we need this class to do its part in setting up the perturbation array.

Parameters
vPerturbation vector that should be updated in place.
indexSince we are often adding to the end of the state vector, index is passed in. This is the sum of the number_elements() of all the PerturbationBuilder that appear before this object in the list.

◆ number_element()

virtual int FullPhysics::PerturbationBuilder::number_element ( ) const
pure virtual

Number of elements we will be adding to the perturbation.

0 is a legal value, if we are changing elements but not adding any.


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

Copyright © 2017, California Institute of Technology.
ALL RIGHTS RESERVED.
U.S. Government Sponsorship acknowledged.
Generated Fri Aug 24 2018 15:44:13