Bertini 2 - C++ Core
Software for Numerical Algebraic Geometry
Loading...
Searching...
No Matches
bertini::LinearSlice Class Reference

Slice an affine or projective space with a LinearSlice today! More...

#include <slice.hpp>

Inheritance diagram for bertini::LinearSlice:
[legend]
Collaboration diagram for bertini::LinearSlice:
[legend]

Public Member Functions

unsigned Dimension () const
 Get the dimension of the slice.
 
template<typename NumT>
void Eval (Vec< NumT > &result, Vec< NumT > const &x) const
 Evaluate the function values of the LinearSlice, in-place.
 
template<typename NumT>
Vec< NumT > Eval (Vec< NumT > const &x) const
 Evaluate the function values of the LinearSlice.
 
template<typename NumT>
void Jacobian (Mat< NumT > &result, Mat< NumT > const &x) const
 Evaluate the Jacobian of the LinearSlice, in-place.
 
template<typename NumT>
Mat< NumT > Jacobian (Mat< NumT > const &x) const
 Evaluate the Jacobian of the LinearSlice.
 
 LinearSlice ()
 the default constructor for linear slices.
 
 LinearSlice (VariableGroup const &v, unsigned dim, bool homogeneous)
 the constructor for linear slices.
 
unsigned NumVariables () const
 Get the number of variables sliced.
 
unsigned Precision () const
 Get the current precision of the slice.
 
void Precision (unsigned new_precision) const
 Set the precision of the slice.
 

Static Public Member Functions

static LinearSlice Make (VariableGroup const &v, unsigned dim, bool homogeneous, bool orthogonal, std::function< void(mpfr_complex &, unsigned)> gen)
 factory function for generating slices
 
static LinearSlice RandomComplex (VariableGroup const &v, unsigned dim, bool homogeneous=false, bool orthogonal=true)
 Generate a random complex slice.
 
static LinearSlice RandomReal (VariableGroup const &v, unsigned dim, bool homogeneous=false, bool orthogonal=true)
 

Friends

std::ostream & operator<< (std::ostream &out, LinearSlice const &s)
 Provides output streaming for LinearSlice.
 

Detailed Description

Slice an affine or projective space with a LinearSlice today!

Constructor & Destructor Documentation

◆ LinearSlice() [1/2]

bertini::LinearSlice::LinearSlice ( )
inline

the default constructor for linear slices.

Make an empty linear slice.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LinearSlice() [2/2]

bertini::LinearSlice::LinearSlice ( VariableGroup const & v,
unsigned dim,
bool homogeneous )
inline

the constructor for linear slices.

Here is the call graph for this function:

Member Function Documentation

◆ Dimension()

unsigned bertini::LinearSlice::Dimension ( ) const
inline

Get the dimension of the slice.

Here is the caller graph for this function:

◆ Eval() [1/2]

template<typename NumT>
void bertini::LinearSlice::Eval ( Vec< NumT > & result,
Vec< NumT > const & x ) const
inline

Evaluate the function values of the LinearSlice, in-place.

◆ Eval() [2/2]

template<typename NumT>
Vec< NumT > bertini::LinearSlice::Eval ( Vec< NumT > const & x) const
inline

Evaluate the function values of the LinearSlice.

◆ Jacobian() [1/2]

template<typename NumT>
void bertini::LinearSlice::Jacobian ( Mat< NumT > & result,
Mat< NumT > const & x ) const
inline

Evaluate the Jacobian of the LinearSlice, in-place.

◆ Jacobian() [2/2]

template<typename NumT>
Mat< NumT > bertini::LinearSlice::Jacobian ( Mat< NumT > const & x) const
inline

Evaluate the Jacobian of the LinearSlice.

◆ Make()

static LinearSlice bertini::LinearSlice::Make ( VariableGroup const & v,
unsigned dim,
bool homogeneous,
bool orthogonal,
std::function< void(mpfr_complex &, unsigned)> gen )
inlinestatic

factory function for generating slices

Here is the call graph for this function:
Here is the caller graph for this function:

◆ NumVariables()

unsigned bertini::LinearSlice::NumVariables ( ) const
inline

Get the number of variables sliced.

Here is the caller graph for this function:

◆ Precision() [1/2]

unsigned bertini::LinearSlice::Precision ( ) const
inline

Get the current precision of the slice.

Returns
The current precision, in digits.

◆ Precision() [2/2]

void bertini::LinearSlice::Precision ( unsigned new_precision) const
inline

Set the precision of the slice.

Copies the slice coefficients into correct precision for subsequent precision.

Parameters
new_precisionThe precision to change to.
Here is the call graph for this function:

◆ RandomComplex()

static LinearSlice bertini::LinearSlice::RandomComplex ( VariableGroup const & v,
unsigned dim,
bool homogeneous = false,
bool orthogonal = true )
inlinestatic

Generate a random complex slice.

Here is the call graph for this function:

◆ RandomReal()

static LinearSlice bertini::LinearSlice::RandomReal ( VariableGroup const & v,
unsigned dim,
bool homogeneous = false,
bool orthogonal = true )
inlinestatic

Produce a random real slice on a variable group, slicing a given number of dimensions.

Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream & out,
LinearSlice const & s )
friend

Provides output streaming for LinearSlice.


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