MPSolve 3.2.1
Loading...
Searching...
No Matches
mps_monomial_matrix_poly Struct Reference

This is the struct that holds all the data of the matrix polynomial. More...

#include <monomial-matrix-poly.h>

Public Attributes

mps_polynomial methods
 Implementation of the overloaded methods for the matrix polynomial.
 
mps_boolean monic
 If this flag is set to true then the higher degree term of the polynomial is the identity matrix and so doesn't need to be allocated and/or accessed in any way. More...
 
int m
 The size of the matrices that compose the matrix polynomial.
 
int degree
 Degree of the matrix polynomial. Please note that this values if different from the degree value in the polynomial structure, since that is the degree of the scalar polynomial, and this is the degree of the matrix one.
 
cplx_t * P
 The double version of the polynomial coefficients. More...
 
mpc_t * mP
 The multiprecision version of the polynomial coefficients.
 
mpq_t * mpqPr
 The rational version of the polynomial coefficients. This is used only if the structure of the monomial matrix poly is MPS_STRUCTURE_*_INTEGER OR MPS_STRUCTURE_*_RATIONAL. More...
 
mpq_t * mpqPi
 The rational version of the polynomial coefficients. This is used only if the structure of the monomial matrix poly is MPS_STRUCTURE_*_INTEGER OR MPS_STRUCTURE_*_RATIONAL. More...
 
int flags
 Additional properties of this polynomial. Examples are: MPS_MONOMIAL_MATRIX_POLY_HESSENBERG, ... More...
 

Detailed Description

This is the struct that holds all the data of the matrix polynomial.

Member Data Documentation

◆ flags

int mps_monomial_matrix_poly::flags

Additional properties of this polynomial. Examples are: MPS_MONOMIAL_MATRIX_POLY_HESSENBERG, ...

@seealso mps_monomial_matrix_poly_add_flag(), @seealso mps_monomial_matrix_poly_clear_flags().

◆ monic

mps_boolean mps_monomial_matrix_poly::monic

If this flag is set to true then the higher degree term of the polynomial is the identity matrix and so doesn't need to be allocated and/or accessed in any way.

In particular, it's not guaranteed to be available for the computations, so you should always check if this flag is set before trying to operate on P[n].

◆ mpqPi

mpq_t* mps_monomial_matrix_poly::mpqPi

The rational version of the polynomial coefficients. This is used only if the structure of the monomial matrix poly is MPS_STRUCTURE_*_INTEGER OR MPS_STRUCTURE_*_RATIONAL.

This array holds the real part of the coefficients.

◆ mpqPr

mpq_t* mps_monomial_matrix_poly::mpqPr

The rational version of the polynomial coefficients. This is used only if the structure of the monomial matrix poly is MPS_STRUCTURE_*_INTEGER OR MPS_STRUCTURE_*_RATIONAL.

This array holds the real part of the coefficients.

◆ P

cplx_t* mps_monomial_matrix_poly::P

The double version of the polynomial coefficients.

NOTE: At this stage, this is the only type of data that is kept for the matrix polynomial.


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