|
MPSolve 3.2.2
|
Implementation of the monomial version of the matrix polynomial. More...
#include <mps/polynomial.h>Go to the source code of this file.
Classes | |
| struct | mps_monomial_matrix_poly |
| This is the struct that holds all the data of the matrix polynomial. More... | |
Macros | |
| #define | MPS_MONOMIAL_MATRIX_POLY(t) |
| #define | MPS_IS_MONOMIAL_MATRIX_POLY(t) |
| #define | MPS_MONOMIAL_MATRIX_POLY_HESSENBERG 0x0001 |
Functions | |
| mps_monomial_matrix_poly * | mps_monomial_matrix_poly_new (mps_context *ctx, int degree, int m, mps_boolean monic) |
| Create a new matrix polynomial of the given degree. | |
| void | mps_monomial_matrix_poly_free (mps_context *ctx, mps_polynomial *poly) |
| Free a matrix polynomial. | |
| void | mps_monomial_matrix_poly_add_flags (mps_context *ctx, mps_monomial_matrix_poly *mpoly, int flag) |
| Add some flags (some properties) to this matrix polynomial. | |
| void | mps_monomial_matrix_poly_clear_flags (mps_context *ctx, mps_monomial_matrix_poly *mpoly, int flag) |
| Clear some flags (properties) of this matrix polynomial. | |
| void | mps_monomial_matrix_poly_set_coefficient_d (mps_context *ctx, mps_monomial_matrix_poly *mpoly, int i, cplx_t *matrix) |
| Set the coefficient of degree i of the matrix polynomial. | |
| void | mps_monomial_matrix_poly_set_coefficient_q (mps_context *ctx, mps_monomial_matrix_poly *mpoly, int i, mpq_t *matrix_r, mpq_t *matrix_i) |
| Set the coefficient of degree i of the matrix polynomial. | |
| mps_boolean | mps_monomial_matrix_poly_meval (mps_context *ctx, mps_polynomial *poly, mpc_t x, mpc_t value, rdpe_t error) |
| Evaluate a matrix polynomial at a point, in the sense of evaluating | |
| long int | mps_monomial_matrix_poly_raise_data (mps_context *ctx, mps_polynomial *p, long int wp) |
| Raise the working precision of this monomial matrix polynomal to the required numnber of bits. | |
Implementation of the monomial version of the matrix polynomial.
| #define MPS_IS_MONOMIAL_MATRIX_POLY | ( | t | ) |
| #define MPS_MONOMIAL_MATRIX_POLY | ( | t | ) |
| void mps_monomial_matrix_poly_add_flags | ( | mps_context * | ctx, |
| mps_monomial_matrix_poly * | mpoly, | ||
| int | flag ) |
Add some flags (some properties) to this matrix polynomial.
| ctx | The current mps_context |
| mpoly | The matrix polynomial. |
| flag | The flags to add. |
| void mps_monomial_matrix_poly_clear_flags | ( | mps_context * | ctx, |
| mps_monomial_matrix_poly * | mpoly, | ||
| int | flag ) |
Clear some flags (properties) of this matrix polynomial.
| ctx | The current mps_context |
| mpoly | The matrix polynomial. |
| flag | The flags to clear. |
| void mps_monomial_matrix_poly_free | ( | mps_context * | ctx, |
| mps_polynomial * | poly ) |
Free a matrix polynomial.
| ctx | The current mps_context. |
| poly | The mps_monomial_matrix_poly that should be freed, casted to a mps_polynomial* pointer. |
| mps_boolean mps_monomial_matrix_poly_meval | ( | mps_context * | ctx, |
| mps_polynomial * | poly, | ||
| mpc_t | x, | ||
| mpc_t | value, | ||
| rdpe_t | error ) |
Evaluate a matrix polynomial at a point, in the sense of evaluating 
| ctx | The current mps_context |
| poly | The matrix polynomial to evaluate |
| x | The point in which the evaluation is requested |
| value | The value of |
| error | An upper bound to the absolute error that affects the result. |
| mps_monomial_matrix_poly * mps_monomial_matrix_poly_new | ( | mps_context * | ctx, |
| int | degree, | ||
| int | m, | ||
| mps_boolean | monic ) |
Create a new matrix polynomial of the given degree.
| ctx | The current mps_context. |
| degree | The degree of the matrix polynomial. |
| m | The size of the matrices that compose the matrix polynomial. |
| monic | A boolean value that, if set to true, specify that the leading coefficient of the polynomial is the identity matrix, and so should not specified explicitely. |
| long int mps_monomial_matrix_poly_raise_data | ( | mps_context * | ctx, |
| mps_polynomial * | p, | ||
| long int | wp ) |
Raise the working precision of this monomial matrix polynomal to the required numnber of bits.
| ctx | The current mps_context. |
| p | The polynomial whose working precision should be set. |
| wp | The bits of desired working precision. |
| void mps_monomial_matrix_poly_set_coefficient_d | ( | mps_context * | ctx, |
| mps_monomial_matrix_poly * | mpoly, | ||
| int | i, | ||
| cplx_t * | matrix ) |
Set the coefficient of degree i of the matrix polynomial.
| ctx | The current mps_context |
| mpoly | The mps_monomial_matrix_poly where the coefficients should be set. |
| i | The degree of the coeffient to set. |
| matrix | A pointer to the first element of the matrix stored in row-major order. |
| void mps_monomial_matrix_poly_set_coefficient_q | ( | mps_context * | ctx, |
| mps_monomial_matrix_poly * | mpoly, | ||
| int | i, | ||
| mpq_t * | matrix_r, | ||
| mpq_t * | matrix_i ) |
Set the coefficient of degree i of the matrix polynomial.
| ctx | The current mps_context |
| mpoly | The mps_monomial_matrix_poly where the coefficients should be set. |
| i | The degree of the coeffient to set. |
| matrix_r | A pointer to the first element of the matrix of the real parts of the coefficients, stored in row-major order |
| matrix_i | A pointer to the first element of the matrix of the imaginary parts of the coefficients, stored in row-major order |