PIPS
|
#include <stdlib.h>
#include <stdio.h>
#include <setjmp.h>
#include <string.h>
#include <errno.h>
#include "genC.h"
#include "boolean.h"
#include "arithmetique.h"
#include "vecteur.h"
#include "contrainte.h"
#include "ray_dte.h"
#include "sommet.h"
#include "sg.h"
#include "sc.h"
#include "polyedre.h"
#include "matrix.h"
#include "misc.h"
#include "text.h"
#include "text-util.h"
#include "ri.h"
#include "ri-util.h"
#include "graph.h"
#include "dg.h"
#include "paf_ri.h"
#include "paf-util.h"
#include "pip.h"
Go to the source code of this file.
Macros | |
#define | VARSUPP "Variable_pour_max_en_min_q" |
Name : ps_max_to_min.c Package : pip Author : F. More... | |
Functions | |
Value | add_coeff_vect (Pvecteur p_vect, Pbase p_base, int nb_var) |
Name : add_coeff_vect More... | |
entity | creer_nom_var (char *name, char *module_name) |
BIDOUILLE More... | |
void | add_fin_mat (Pcontrainte p_cont, Pbase p_base, int nb_var, Variable var_q) |
Name: add_fin_mat More... | |
void | opp_var_in_mat (Pcontrainte p_cont, Pbase p_base, int nb_var) |
Name: opp_var_in_mat. More... | |
Psysteme | converti_psysmin_psysmax (Psysteme p_systmin, int nb_var) |
Name: converti_psysmin_psysmax More... | |
#define VARSUPP "Variable_pour_max_en_min_q" |
Name : ps_max_to_min.c Package : pip Author : F.
Dumontet Date : july 93 Historic : Documents:
Comments : C3 includes
Definition at line 71 of file ps_max_to_min.c.
Name : add_coeff_vect
Parameters: p_vect: le vecteur a sommer.
p_base: la base associee au vecteur.
nb_var: le nombre de variables dans la base.
Result: un nombre sous la forme d'une value.
Aims: sommer des coefficients des nb_var premieres variables du vecteur
p_vect.
Author: F Dumontet
Date of last change:
Definition at line 94 of file ps_max_to_min.c.
References aux, Svecteur::succ, Svecteur::val, value_addto, VALUE_ZERO, and Svecteur::var.
Referenced by add_fin_mat().
void add_fin_mat | ( | Pcontrainte | p_cont, |
Pbase | p_base, | ||
int | nb_var, | ||
Variable | var_q | ||
) |
Name: add_fin_mat
Parameters: p_cont: pointeur sur la premiere contrainte de la liste
d'egalites ou d'inegalites.
p_base: base du Psysteme.
nb_var: le nombre de variables dans la base.
Result:
Aims: ajouter A.1 dans la colonne correspondant au nouveau parametre var_q. Author: F Dumontet
Date of last change:
Old version of FD vect_add_elem(&p_vect_aux->succ, var_q,\ add_coeff_vect(p_cont->vecteur,\ p_base,nb_var));
Definition at line 193 of file ps_max_to_min.c.
References add_coeff_vect(), malloc(), Scontrainte::succ, Svecteur::succ, vect_add_elem(), and Scontrainte::vecteur.
Name: converti_psysmin_psysmax
Parameters: p_systmin: le Psysteme (ordonne) a transformer.
nb_var: le nombre de variables dans le Psysteme (ce sont les
premieres de la base).
Result: Psysteme ordonne.
Aims: convertir un probleme de maximum en son dual de minimum, le probleme et le resultat sont sous formes de Psystemes.
Author: F Dumontet.
Date of last change:
le Psysteme produi
permet la double copie sinon rien
double dup pour obtenir une copie qui respecte l'odre des variables sc_dup rend une image inversee
ajout d'une variable dans la base essayer de trouver une fonction C3
ajout de A.1 en fin de matrice , le parametre var_q puis -A
These four function calls are replaced by the following loops
ajout de -I , 1 en bas de la matrice
Definition at line 304 of file ps_max_to_min.c.
References Ssysteme::base, contrainte_make(), creer_nom_var(), Ssysteme::dimension, Ssysteme::egalites, Ssysteme::inegalites, insert_ineq_end_sc(), NO_OFL_CTRL, sc_dup(), Scontrainte::succ, Svecteur::succ, TOP_LEVEL_MODULE_NAME, VALUE_MONE, VALUE_ONE, Svecteur::var, VARSUPP, vect_add_elem(), vect_cl_ofl_ctrl(), vect_new(), vect_var_subst(), and Scontrainte::vecteur.
Referenced by pip_solve().
entity creer_nom_var | ( | char * | name, |
char * | module_name | ||
) |
BIDOUILLE
Name:
Parameters: name: nom local attribue a l'"entite" cree.
module_name: TOP_LEVEL_MODULE ????
Side effect:
Result:
Aims:
Author: F Dumontet.
Date of last change:
Definition at line 142 of file ps_max_to_min.c.
References concatenate(), debug(), entity_domain, entity_type, entity_undefined, full_name, gen_find_tabulated(), is_basic_int, make_basic(), make_entity, MakeTypeVariable(), module_name(), MODULE_SEP_STRING, NIL, storage_undefined, strdup(), type_undefined, and value_undefined.
Referenced by converti_psysmin_psysmax().
void opp_var_in_mat | ( | Pcontrainte | p_cont, |
Pbase | p_base, | ||
int | nb_var | ||
) |
Name: opp_var_in_mat.
Parameters: p_cont: pointeur sur la premiere contrainte de la liste
d'egalites ou d'inegalites.
p_base: base du Psysteme.
nb_var: le nombre de variables dans la base.
Result:
Aims: transformer les coefficients des vecteurs qui portent sur des
en leur oppose.
Author: F Dumontet.
Date of last change:
vecteur d'une contrainte.
vecteur d'une base.
compteur de variables deja
traitee.
on traite les nb_var 1eres variables de la base
Definition at line 247 of file ps_max_to_min.c.
References Scontrainte::succ, Svecteur::succ, Svecteur::val, value_oppose, Svecteur::var, and Scontrainte::vecteur.