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

Small shared helpers for the per-block Describe methods – the human-facing printing of a block-composed System. More...

#include <ostream>
#include <string>
#include "bertini2/num_traits.hpp"
#include "bertini2/function_tree.hpp"
Include dependency graph for describe.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  bertini
namespace  bertini::blocks
namespace  bertini::blocks::describe_detail

Functions

template<typename R>
std::string bertini::blocks::describe_detail::FmtReal (R const &r, int sig)
 Format one multiprecision real part.
void bertini::blocks::describe_detail::PrintCoeff (std::ostream &out, complex_mp const &c, int sig=0)
 Print one (complex_mp) coefficient compactly: a real prints as its real part, a pure imaginary as b*i, otherwise as (a+b*i).
int bertini::blocks::describe_detail::CoeffSig (bool verbose)
 The significant-digit count for coefficient printing: 4 for terse (short and legible), the current working precision for verbose (every digit the system actually carries – the master coefficient matrix is stored at a much higher precision than that, so printing its full string would dump thousands of digits).
void bertini::blocks::describe_detail::PrintRowLabel (std::ostream &out, size_t row, size_t n)
 f_k for a single row, or f_a..f_b for a contiguous range of n rows starting at row.
void bertini::blocks::describe_detail::PrintAugmentedVars (std::ostream &out, VariableGroup const &vars, size_t num_vars, bool homogeneous)
 The augmenting variable list [x, y, 1] (affine) or [h, x, y] (homogeneous: no trailing 1).
void bertini::blocks::describe_detail::PrintLinearFormVerbose (std::ostream &out, Mat< complex_mp > const &M, Eigen::Index r, VariableGroup const &vars, size_t num_vars, bool homogeneous)
 One affine linear form, row r of an augmented coefficient matrix M (num_vars+1 cols affine, or num_vars cols homogeneous).

Variables

constexpr size_t bertini::blocks::describe_detail::kTerseRowCap = 10
 How many function rows a block lists in terse (non-verbose) describe before truncating with a ... (k more ...) line.

Detailed Description

Small shared helpers for the per-block Describe methods – the human-facing printing of a block-composed System.

Each block prints the rows it owns, labelled by a running global index f_k. Two levels: terse (default) uses placeholder symbols for matrices/coefficients so only the structure shows; verbose reveals the actual numbers. This output is for reading, not for re-parsing.