 |
My Project
debian-1:4.1.2-p1+ds-2
|
Go to the documentation of this file.
15 #include "gfanlib/config.h"
16 #ifdef HAVE_CDD_SETOPER_H
17 #include <cdd/setoper.h>
19 #include <cdd/cddmp.h>
20 #elif HAVE_CDDLIB_SETOPER_H
21 #include <cddlib/setoper.h>
22 #include <cddlib/cdd.h>
23 #include <cddlib/cddmp.h>
37 lists grfan(ideal inputIdeal,
int heuristic,
bool singleCone);
39 #include "gfanlib/gfanlib.h"
40 gfan::ZFan *
grfan(ideal inputIdeal,
int h,
bool singleCone);
116 inline void setUCN(
int n);
209 gcone(ring r, ideal I);
247 inline ideal
ffG(
const ideal &
H,
const ideal &
G);
void setFlipGB(ideal I)
Store the flipped GB.
void makeInt(const dd_MatrixPtr &M, const int line, int64vec &n)
lists lprepareResult(gcone *gc, const int n)
void getExtremalRays(const gcone &gc)
STATIC_VAR int64vec * hilbertFunction
The hilbert function - for the homogeneous case.
void getConeNormals(const ideal &I, bool compIntPoint=FALSE)
gfan::ZFan * grfan(ideal inputIdeal, int h, bool singleCone)
ideal ffG(const ideal &H, const ideal &G)
int64vec * getIntPoint(bool shallow=FALSE)
facet * shallowCopy(const facet &f)
A shallow copy of facets.
STATIC_VAR bool hasHomInput
is the ideal homogeneous?
void getCodim2Normals(const gcone &gc)
void replaceDouble_ringorder_a_ByASingleOne()
Exchange 2 ordertype_a by just 1.
void computeInv(const ideal &gb, ideal &inv, const int64vec &f)
short codim
The codim of the facet.
volatile void showFacets(short codim=1)
dd_MatrixPtr ddFacets
At least as a workaround we store the irredundant facets of a matrix here.
void readConeFromFile(int gcNum, gcone *gc)
int64vec * getInteriorPoint()
void setIntPoint(int64vec *iv)
ring rCopyAndAddWeight(const ring &r, int64vec *ivw)
Implements the cone structure.
void setFacetNormal(int64vec *iv)
Comparison operator.
int64vec f2M(gcone *gc, facet *f, int n=1)
void flip(ideal gb, facet *f)
dd_MatrixPtr computeLinealitySpace()
Compute the lineality space Ax=0 and return it as dd_MatrixPtr dd_LinealitySpace.
int64vec * getFacetNormal() const
Returns the facet normal.
void flip2(const ideal &gb, facet *f)
const int64vec * getRef2InteriorPoint()
void getGB(ideal const &inputIdeal)
int UCN
Universal Cone Number The number of the cone the facet belongs to, Set in getConeNormals()
bool isFlippable
Boolean value to indicate whether a facet is flippable or not This is also used to mark facets that n...
void interiorPoint(dd_MatrixPtr &M, int64vec &iv)
void preprocessInequalities(dd_MatrixPtr &M)
facet * enqueue2(facet *f)
int64vec * interiorPoint
An interior point of the facet.
STATIC_VAR int lengthOfSearchList
ideal flipGB
The Groebner basis on the other side of a shared facet.
const int64vec * getRef2FacetNormal() const
Return a reference to the facet normal.
ideal getFlipGB()
Return the flipped GB.
facet * enqueueNewFacets(facet *f)
void setInteriorPoint(int64vec *iv)
Store an interior point of the facet.
volatile void fDebugPrint()
Debugging function prints the facet normal an all (codim-2)-facets that belong to it.
int64vec * fNormal
Inner normal of the facet, describing it uniquely up to isomorphism.
STATIC_VAR dd_MatrixPtr dd_LinealitySpace
Matrix to contain the homogeneity/lineality space.
int64vec ** gcRays
Array of intvecs representing the rays of the cone.
void printNormal() const
Method to print the facet normal.
facet()
The default constructor.
STATIC_VAR int maxSize
Maximum size of the searchlist.
void setUCN(int n)
Set the UCN.
ring rCopyAndAddWeight2(const ring &, const int64vec *, const int64vec *)
bool iv64isStrictlyPositive(const int64vec *)
void noRevS(gcone &gcRoot, bool usingIntPoint=FALSE)
int getUCN()
Get the UCN Returns the UCN iff this != NULL, else -1.
void writeConeToFile(const gcone &gc, bool usingIntPoints=FALSE)
void printFlipGB()
Print the flipped GB.
ideal gcBasis
Contains the Groebner basis of the cone.
EXTERN_VAR int gfanHeuristic
~facet()
The default destructor.
STATIC_VAR int64vec * ivZeroVector
The zero vector.
facet * facetPtr
Pointer to the first facet.