rbatools.rba_problem_matrix API documentation

rbatools.rba_problem_matrix module

Classes

class ProblemMatrix

Class holding RBA-Linear Problem. Required Object type for linear problems (matrices), to be used in this RBA-API. Should include all fields, required for a linear problem in the COBRA format, as attributes.

Attributes

A : scipy.sparse.coo_matrix
Lefthandside of constraint Matrix (aka Constraint Matrix)
b : numpy.array
Righthandside of Constraint Matrix
row_signs : list
Type of constraints ('E' for equality 'L' for lower-or-equal inequality) –> Ax=b or Ax<=b
f : numyp.array
Objective function linear get_coefficients
LB : numpy.array
Lower bounds of decision-variables
UB : numpy.array
Upper bounds of decision-variables
row_names : list
Names of constraints
col_names : list
Names of decision-variables
rowIndicesMap : dict
Dictionary mapping constraint names to their numeric index (generated automatically)
colIndicesMap : dict
Dictionary mapping variable names to their numeric index (generated automatically)

Methods

def __init__(self)

Initiates with empty Problem. Attributes can be changed manually.

def a_to_coo(self)

Transforms constraint matrix (LHS) to scipy.sparse.coo_matrix format.

def a_to_lil(self)

Transforms constraint matrix (LHS) to scipy.sparse.lil_matrix format.

def load_matrix(self, matrix)

Imports information from compatible object.

Imports information for attributes from input-objects (named matrix) with the respectively named fields, required. Required fields are: 'A','b','row_signs','f','LB','UB','row_names' and 'col_names'.

Parameters

matrix : any LP-object holding the required fields
The matrix with elements to be added
def map_indices(self)

Generates rowIndicesMap and colIndicesMap from attributes.

rowIndicesMap = Dictionary: {'constraint_name':index,…} colIndicesMap = Dictionary: {'variable_name':index,…}

def scale_lhs(self, factor)
def to_float64(self)

Transforms all numerical attributes to number type numpy.float64.