BubbleProfiler  0.3.0
by Peter Athron, Csaba Balazs, Michael Bardsley, Andrew Fowlie, Dylan Harries & Graham White
Public Member Functions | Private Attributes | List of all members
BubbleProfiler::Restricted_quartic_potential Class Reference

#include <restricted_quartic_potential.hpp>

Inheritance diagram for BubbleProfiler::Restricted_quartic_potential:
Inheritance graph
[legend]
Collaboration diagram for BubbleProfiler::Restricted_quartic_potential:
Collaboration graph
[legend]

Public Member Functions

 Restricted_quartic_potential ()=default
 
 Restricted_quartic_potential (double)
 
 Restricted_quartic_potential (double, double)
 
virtual ~Restricted_quartic_potential ()=default
 
 Restricted_quartic_potential (const Restricted_quartic_potential &)=default
 
 Restricted_quartic_potential (Restricted_quartic_potential &&)=default
 
Restricted_quartic_potentialoperator= (const Restricted_quartic_potential &)=default
 
Restricted_quartic_potentialoperator= (Restricted_quartic_potential &&)=default
 
virtual Restricted_quartic_potentialclone () const override
 Subclasses must implement a clone method. More...
 
virtual double operator() (const Eigen::VectorXd &) const override
 Evaluate potential at point. More...
 
virtual double partial (const Eigen::VectorXd &, int) const override
 Partial derivative WRT coordinate i at a point. More...
 
virtual double partial (const Eigen::VectorXd &, int, int) const override
 Partial derivative WRT coordinates i, j at a a point. More...
 
virtual std::size_t get_number_of_fields () const override
 
virtual void translate_origin (const Eigen::VectorXd &translation) override
 Shift the location of the origin by a specified vector. More...
 
virtual void apply_basis_change (const Eigen::MatrixXd &cob_matrix) override
 Apply a change of basis matrix. More...
 
virtual void add_constant_term (double _offset) override
 Add a constant offset to the potential. More...
 
double operator() (double) const
 
double first_deriv (double) const
 
double second_deriv (double) const
 
double get_global_minimum_location () const
 
double get_local_minimum_location () const
 
double get_local_maximum_location () const
 
- Public Member Functions inherited from BubbleProfiler::Potential
virtual ~Potential ()=default
 

Private Attributes

double alpha {0.6}
 
double E {1.}
 
double origin {0.}
 
double scale {1.}
 
double offset {0.}
 

Detailed Description

Examples:
action.cpp, and tabulate.cpp.

Definition at line 27 of file restricted_quartic_potential.hpp.

Constructor & Destructor Documentation

BubbleProfiler::Restricted_quartic_potential::Restricted_quartic_potential ( )
default

Referenced by clone().

BubbleProfiler::Restricted_quartic_potential::Restricted_quartic_potential ( double  alpha_)
explicit

Definition at line 23 of file restricted_quartic_potential.cpp.

BubbleProfiler::Restricted_quartic_potential::Restricted_quartic_potential ( double  alpha_,
double  E_ 
)

Definition at line 32 of file restricted_quartic_potential.cpp.

References E.

virtual BubbleProfiler::Restricted_quartic_potential::~Restricted_quartic_potential ( )
virtualdefault
BubbleProfiler::Restricted_quartic_potential::Restricted_quartic_potential ( const Restricted_quartic_potential )
default
BubbleProfiler::Restricted_quartic_potential::Restricted_quartic_potential ( Restricted_quartic_potential &&  )
default

Member Function Documentation

virtual void BubbleProfiler::Restricted_quartic_potential::add_constant_term ( double  offset)
inlineoverridevirtual

Add a constant offset to the potential.

Parameters
offsetconstant term to add to potential

Implements BubbleProfiler::Potential.

Definition at line 56 of file restricted_quartic_potential.hpp.

References first_deriv(), get_global_minimum_location(), get_local_maximum_location(), get_local_minimum_location(), offset, operator()(), and second_deriv().

virtual void BubbleProfiler::Restricted_quartic_potential::apply_basis_change ( const Eigen::MatrixXd &  cob_matrix)
inlineoverridevirtual

Apply a change of basis matrix.

Parameters
cob_matrix

Implements BubbleProfiler::Potential.

Definition at line 52 of file restricted_quartic_potential.hpp.

References scale.

virtual Restricted_quartic_potential* BubbleProfiler::Restricted_quartic_potential::clone ( ) const
inlineoverridevirtual

Subclasses must implement a clone method.

Implements BubbleProfiler::Potential.

Definition at line 38 of file restricted_quartic_potential.hpp.

References operator()(), partial(), and Restricted_quartic_potential().

double BubbleProfiler::Restricted_quartic_potential::first_deriv ( double  coords) const

Definition at line 110 of file restricted_quartic_potential.cpp.

References alpha, E, origin, and scale.

Referenced by add_constant_term(), and partial().

double BubbleProfiler::Restricted_quartic_potential::get_global_minimum_location ( ) const
double BubbleProfiler::Restricted_quartic_potential::get_local_maximum_location ( ) const
Examples:
action.cpp.

Definition at line 134 of file restricted_quartic_potential.cpp.

References alpha, and origin.

Referenced by add_constant_term(), main(), and BubbleProfiler::run_shooting_profiler().

double BubbleProfiler::Restricted_quartic_potential::get_local_minimum_location ( ) const
virtual std::size_t BubbleProfiler::Restricted_quartic_potential::get_number_of_fields ( ) const
inlineoverridevirtual

Implements BubbleProfiler::Potential.

Definition at line 46 of file restricted_quartic_potential.hpp.

double BubbleProfiler::Restricted_quartic_potential::operator() ( const Eigen::VectorXd &  coords) const
overridevirtual

Evaluate potential at point.

Parameters
coordsCoordinates at which to evaluate
Returns
Value of potential at coordinates

Implements BubbleProfiler::Potential.

Definition at line 49 of file restricted_quartic_potential.cpp.

Referenced by add_constant_term(), and clone().

double BubbleProfiler::Restricted_quartic_potential::operator() ( double  coords) const

Definition at line 101 of file restricted_quartic_potential.cpp.

References alpha, E, offset, origin, and scale.

Restricted_quartic_potential& BubbleProfiler::Restricted_quartic_potential::operator= ( const Restricted_quartic_potential )
default
Restricted_quartic_potential& BubbleProfiler::Restricted_quartic_potential::operator= ( Restricted_quartic_potential &&  )
default
double BubbleProfiler::Restricted_quartic_potential::partial ( const Eigen::VectorXd &  coords,
int  i 
) const
overridevirtual

Partial derivative WRT coordinate i at a point.

Parameters
coordsCoordinates at which to evaluate
iIndex of coordinate to be differentiated
Returns
Value of specified partial at point

Implements BubbleProfiler::Potential.

Definition at line 60 of file restricted_quartic_potential.cpp.

References first_deriv().

Referenced by clone().

double BubbleProfiler::Restricted_quartic_potential::partial ( const Eigen::VectorXd &  coords,
int  i,
int  j 
) const
overridevirtual

Partial derivative WRT coordinates i, j at a a point.

Parameters
coordsCoordinates at which to evaluate
iIndex of first coordinate to be differentiated
jIndex of second coordinate to be differentiated
Returns
Value of specified partial at point

Implements BubbleProfiler::Potential.

Definition at line 77 of file restricted_quartic_potential.cpp.

References second_deriv().

double BubbleProfiler::Restricted_quartic_potential::second_deriv ( double  coords) const

Definition at line 117 of file restricted_quartic_potential.cpp.

References alpha, E, origin, and scale.

Referenced by add_constant_term(), and partial().

virtual void BubbleProfiler::Restricted_quartic_potential::translate_origin ( const Eigen::VectorXd &  translation)
inlineoverridevirtual

Shift the location of the origin by a specified vector.

Parameters
translationshift of origin

Implements BubbleProfiler::Potential.

Definition at line 48 of file restricted_quartic_potential.hpp.

References origin.

Member Data Documentation

double BubbleProfiler::Restricted_quartic_potential::alpha {0.6}
private
double BubbleProfiler::Restricted_quartic_potential::E {1.}
private
double BubbleProfiler::Restricted_quartic_potential::offset {0.}
private

Definition at line 73 of file restricted_quartic_potential.hpp.

Referenced by add_constant_term(), and operator()().

double BubbleProfiler::Restricted_quartic_potential::origin {0.}
private
double BubbleProfiler::Restricted_quartic_potential::scale {1.}
private

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