LpMatrixOptions struct
#include <gtopt/lp_matrix_options.hpp>
Configuration options for converting to flat LP representation.
Public functions
- auto merge(const LpMatrixOptions& other) -> void
Public variables
- bool col_with_name_map
- Include column name mapping (level >= 1)
- bool col_with_names
- Include column names (state vars at level 0)
- OptBool compute_stats
- Compute coefficient min/max/ratio.
- double eps
- std::optional<LpEquilibrationMethod> equilibration_method
- OptReal lp_coeff_ratio_threshold
- LP coefficient ratio threshold for numerical conditioning diagnostics. When the global max/min |coefficient| ratio exceeds this value, a per-scene/phase breakdown is printed. (default: 1e7)
- LpNamesLevel lp_names_level
- bool move_names
- Move instead of copy names.
- std::optional<LpNamesLevel> names_level
- LP naming level (user-facing JSON/CLI option).
- bool row_with_name_map
- Include row name mapping.
- bool row_with_names
- Include row names (level >= 1)
- std::string solver_name
- Solver backend name (empty = auto-detect)
- double stats_eps
Function documentation
void gtopt:: LpMatrixOptions:: merge(const LpMatrixOptions& other)
Merge optional fields from another LpMatrixOptions. Non-optional fields (eps, col_with_names, etc.) are not merged — first-value-wins semantics like SolverOptions.
Variable documentation
std::optional<LpEquilibrationMethod> gtopt:: LpMatrixOptions:: equilibration_method
Matrix equilibration method. See LpEquilibrationMethod for options. Default is none (no scaling).
LpNamesLevel gtopt:: LpMatrixOptions:: lp_names_level
Computed naming level (internal)
std::optional<LpNamesLevel> gtopt:: LpMatrixOptions:: names_level
LP naming level (user-facing JSON/CLI option).
minimal: State-variable column names only (default).only_cols: All column names + name-to-index maps.cols_and_rows: Column + row names + maps + warn on duplicates.
Accepts integer (0/1/2) or string name in JSON.