Bertini 2 d882924 (2026-10-06 19:56 UTC)
Numerical algebraic geometry library (C++ core)
Loading...
Searching...
No Matches
products_of_linears_block.hpp File Reference

A System evaluation block whose functions are each a product of linear forms. More...

#include <vector>
#include <tuple>
#include <boost/serialization/vector.hpp>
#include "bertini2/num_traits.hpp"
#include "bertini2/eigen_extensions.hpp"
#include "bertini2/system/blocks/describe.hpp"
Include dependency graph for products_of_linears_block.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  bertini::blocks::ProductsOfLinearsBlock
 A block of system functions, each a product of linear forms. More...

Namespaces

namespace  bertini
namespace  bertini::blocks

Detailed Description

A System evaluation block whose functions are each a product of linear forms.

This is the non-node representation of products of linears used by the m-homogeneous start system and by regeneration. Each function is

f_i(x) = prod_r ( c_{i,r} . [x ; 1] )

i.e. a product over factors r of a linear form in the variables (the last column of each coefficient row is the constant / homogenizing-variable coefficient, so x is evaluated augmented with a trailing 1). Evaluation is matrix-multiplies followed by row-wise products; the Jacobian is the product rule, done with prefix/suffix products. Nothing here is a function-tree node, so it never touches the SLP compiler.

Uses the multiprecision-coefficient pattern shared by the linear blocks (system/blocks/ linear_forms_block.hpp): an mpfr master plus per-type working copies, with Precision() recasting the mpfr copy.