system.c File Reference


Functions

s_fm_system_tfm_system_alloc (size_t nb_lines, size_t nb_cols)
s_fm_system_tfm_system_dup (s_fm_system_t *s)
void fm_system_free (s_fm_system_t *s)
s_fm_system_tfm_system_read (FILE *stream)
int fm_system_print (FILE *stream, s_fm_system_t *s)
int fm_system_sort (s_fm_system_t *s, unsigned idx, unsigned *n1, unsigned *n2)
void fm_system_normalize_ineq (s_fm_system_t *s)
s_fm_system_tfm_system_to_z (s_fm_system_t *s)
s_fm_system_tfm_system_swap_column (s_fm_system_t *s, unsigned col_src, unsigned col_dst)
s_fm_system_tfm_system_split (s_fm_system_t *s, unsigned col)
int fm_system_equalities_find (s_fm_system_t *s)
void fm_system_equalities_sort (s_fm_system_t *s)
int fm_system_remove_duplicate (s_fm_system_t *s)
int fm_system_remove_line (s_fm_system_t *s, unsigned idx)
int fm_system_add_line_at (s_fm_system_t *s, s_fm_vector_t *v, unsigned idx)
int fm_system_add_line (s_fm_system_t *s, s_fm_vector_t *v)
int fm_system_add_column (s_fm_system_t *s, int pos)
int fm_system_point_included (s_fm_system_t *s, s_fm_vector_t *v)
void fm_system_subst_in_vector (s_fm_vector_t *v, s_fm_vector_t *v1, s_fm_vector_t *pattern, s_fm_solution_t *redeq, int iv1)
s_fm_system_tfm_system_reduce (s_fm_system_t *in, s_fm_solution_t *redeq)
int ** fm_system_getconnected (s_fm_system_t *system)
s_fm_system_tfm_system_simplify (s_fm_system_t *system, int simplify_mode)

Function Documentation

s_fm_system_t* fm_system_alloc ( size_t  nb_lines,
size_t  nb_cols 
)

s_fm_system_t* fm_system_dup ( s_fm_system_t s  ) 

void fm_system_free ( s_fm_system_t s  ) 

s_fm_system_t* fm_system_read ( FILE *  stream  ) 

int fm_system_print ( FILE *  stream,
s_fm_system_t s 
)

int fm_system_sort ( s_fm_system_t s,
unsigned  idx,
unsigned *  n1,
unsigned *  n2 
)

void fm_system_normalize_ineq ( s_fm_system_t s  ) 

s_fm_system_t* fm_system_to_z ( s_fm_system_t s  ) 

s_fm_system_t* fm_system_swap_column ( s_fm_system_t s,
unsigned  col_src,
unsigned  col_dst 
)

s_fm_system_t* fm_system_split ( s_fm_system_t s,
unsigned  col 
)

int fm_system_equalities_find ( s_fm_system_t s  ) 

void fm_system_equalities_sort ( s_fm_system_t s  ) 

int fm_system_remove_duplicate ( s_fm_system_t s  ) 

int fm_system_remove_line ( s_fm_system_t s,
unsigned  idx 
)

int fm_system_add_line_at ( s_fm_system_t s,
s_fm_vector_t v,
unsigned  idx 
)

int fm_system_add_line ( s_fm_system_t s,
s_fm_vector_t v 
)

int fm_system_add_column ( s_fm_system_t s,
int  pos 
)

int fm_system_point_included ( s_fm_system_t s,
s_fm_vector_t v 
)

Check if a point is in a polyhedron.

void fm_system_subst_in_vector ( s_fm_vector_t v,
s_fm_vector_t v1,
s_fm_vector_t pattern,
s_fm_solution_t redeq,
int  iv1 
)

s_fm_system_t* fm_system_reduce ( s_fm_system_t in,
s_fm_solution_t redeq 
)

int** fm_system_getconnected ( s_fm_system_t system  ) 

Compute the connected indices.

Result is outputted as an int matrix. Its line indice represent the class index (there is at most size_sys classes, when the graph is not connected), and for each class there is at most size_sys elements (when the graph is fully connected). A class is represented by a set of variable indices (in basis 0), and is terminated by '-1'.

s_fm_system_t* fm_system_simplify ( s_fm_system_t system,
int  simplify_mode 
)

Remove redundant constraints from a polyhedron defined by a set of hyperplanes..

See M. Le Fur Irisa research report.


Generated on Fri Oct 31 00:49:13 2008 for FM by  doxygen 1.5.3