My Project
Loading...
Searching...
No Matches
Public Member Functions | Data Fields | Private Attributes
gcone Class Reference

Implements the cone structure. More...

#include <gfan.h>

Public Member Functions

 gcone ()
 
 gcone (ring r, ideal I)
 
 gcone (const gcone &gc, const facet &f)
 
 ~gcone ()
 
int getCounter ()
 
ring getBaseRing ()
 
ring getRef2BaseRing ()
 
void setBaseRing (ring r)
 
void setIntPoint (int64vec *iv)
 
int64vecgetIntPoint (bool shallow=FALSE)
 
void showIntPoint ()
 
void setNumFacets ()
 
int getNumFacets ()
 
int getUCN ()
 
int getPredUCN ()
 
volatile void showFacets (short codim=1)
 
void noRevS (gcone &gcRoot, bool usingIntPoint=FALSE)
 
void writeConeToFile (const gcone &gc, bool usingIntPoints=FALSE)
 
void readConeFromFile (int gcNum, gcone *gc)
 
int64vec f2M (gcone *gc, facet *f, int n=1)
 
void getConeNormals (const ideal &I, bool compIntPoint=FALSE)
 
void getCodim2Normals (const gcone &gc)
 
void getExtremalRays (const gcone &gc)
 
void orderRays ()
 
void flip (ideal gb, facet *f)
 
void flip2 (const ideal &gb, facet *f)
 
void computeInv (const ideal &gb, ideal &inv, const int64vec &f)
 
ideal ffG (const ideal &H, const ideal &G)
 
void getGB (ideal const &inputIdeal)
 
void interiorPoint (dd_MatrixPtr &M, int64vec &iv)
 
void preprocessInequalities (dd_MatrixPtr &M)
 
ring rCopyAndAddWeight (const ring &r, int64vec *ivw)
 
ring rCopyAndAddWeight2 (const ring &, const int64vec *, const int64vec *)
 
void makeInt (const dd_MatrixPtr &M, const int line, int64vec &n)
 
facetenqueueNewFacets (facet *f)
 
facetenqueue2 (facet *f)
 
dd_MatrixPtr computeLinealitySpace ()
 Compute the lineality space Ax=0 and return it as dd_MatrixPtr dd_LinealitySpace. More...
 
bool iv64isStrictlyPositive (const int64vec *)
 
void replaceDouble_ringorder_a_ByASingleOne ()
 Exchange 2 ordertype_a by just 1. More...
 

Data Fields

facetfacetPtr
 Pointer to the first facet. More...
 
STATIC_VAR dd_MatrixPtr dd_LinealitySpace
 Matrix to contain the homogeneity/lineality space. More...
 
STATIC_VAR int lengthOfSearchList
 
STATIC_VAR int maxSize
 Maximum size of the searchlist. More...
 
STATIC_VAR bool hasHomInput
 is the ideal homogeneous? More...
 
STATIC_VAR int numVars
 
STATIC_VAR int64vechilbertFunction
 The hilbert function - for the homogeneous case. More...
 
STATIC_VAR int64vecivZeroVector
 The zero vector. More...
 
int numFacets
 
dd_MatrixPtr ddFacets
 At least as a workaround we store the irredundant facets of a matrix here. More...
 
int64vec ** gcRays
 Array of intvecs representing the rays of the cone. More...
 
unsigned numRays
 
ideal gcBasis
 Contains the Groebner basis of the cone. More...
 
gconenext
 
gconeprev
 

Private Attributes

ideal inputIdeal
 
ring baseRing
 
int64vecivIntPt
 
int UCN
 
int pred
 
STATIC_VAR int counter
 

Detailed Description

Implements the cone structure.

A cone is represented by a linked list of facet normals

See also
facet

Definition at line 142 of file gfan.h.

Constructor & Destructor Documentation

◆ gcone() [1/3]

gcone::gcone ( )

◆ gcone() [2/3]

gcone::gcone ( ring  r,
ideal  I 
)

◆ gcone() [3/3]

gcone::gcone ( const gcone gc,
const facet f 
)

◆ ~gcone()

gcone::~gcone ( )

Member Function Documentation

◆ computeInv()

void gcone::computeInv ( const ideal &  gb,
ideal &  inv,
const int64vec f 
)

◆ computeLinealitySpace()

dd_MatrixPtr gcone::computeLinealitySpace ( )

Compute the lineality space Ax=0 and return it as dd_MatrixPtr dd_LinealitySpace.

◆ enqueue2()

facet * gcone::enqueue2 ( facet f)

◆ enqueueNewFacets()

facet * gcone::enqueueNewFacets ( facet f)

◆ f2M()

int64vec gcone::f2M ( gcone gc,
facet f,
int  n = 1 
)

◆ ffG()

ideal gcone::ffG ( const ideal &  H,
const ideal &  G 
)
inline

◆ flip()

void gcone::flip ( ideal  gb,
facet f 
)

◆ flip2()

void gcone::flip2 ( const ideal &  gb,
facet f 
)

◆ getBaseRing()

ring gcone::getBaseRing ( )
inline

◆ getCodim2Normals()

void gcone::getCodim2Normals ( const gcone gc)

◆ getConeNormals()

void gcone::getConeNormals ( const ideal &  I,
bool  compIntPoint = FALSE 
)

◆ getCounter()

int gcone::getCounter ( )
inline

◆ getExtremalRays()

void gcone::getExtremalRays ( const gcone gc)

◆ getGB()

void gcone::getGB ( ideal const inputIdeal)
inline

◆ getIntPoint()

int64vec * gcone::getIntPoint ( bool  shallow = FALSE)
inline

◆ getNumFacets()

int gcone::getNumFacets ( )
inline

◆ getPredUCN()

int gcone::getPredUCN ( )
inline

◆ getRef2BaseRing()

ring gcone::getRef2BaseRing ( )
inline

◆ getUCN()

int gcone::getUCN ( )
inline

◆ interiorPoint()

void gcone::interiorPoint ( dd_MatrixPtr &  M,
int64vec iv 
)

◆ iv64isStrictlyPositive()

bool gcone::iv64isStrictlyPositive ( const int64vec )
inline

◆ makeInt()

void gcone::makeInt ( const dd_MatrixPtr &  M,
const int  line,
int64vec n 
)

◆ noRevS()

void gcone::noRevS ( gcone gcRoot,
bool  usingIntPoint = FALSE 
)

◆ orderRays()

void gcone::orderRays ( )

◆ preprocessInequalities()

void gcone::preprocessInequalities ( dd_MatrixPtr &  M)

◆ rCopyAndAddWeight()

ring gcone::rCopyAndAddWeight ( const ring &  r,
int64vec ivw 
)

◆ rCopyAndAddWeight2()

ring gcone::rCopyAndAddWeight2 ( const ring &  ,
const int64vec ,
const int64vec  
)

◆ readConeFromFile()

void gcone::readConeFromFile ( int  gcNum,
gcone gc 
)

◆ replaceDouble_ringorder_a_ByASingleOne()

void gcone::replaceDouble_ringorder_a_ByASingleOne ( )

Exchange 2 ordertype_a by just 1.

◆ setBaseRing()

void gcone::setBaseRing ( ring  r)
inline

◆ setIntPoint()

void gcone::setIntPoint ( int64vec iv)
inline

◆ setNumFacets()

void gcone::setNumFacets ( )
inline

◆ showFacets()

volatile void gcone::showFacets ( short  codim = 1)

◆ showIntPoint()

void gcone::showIntPoint ( )
inline

◆ writeConeToFile()

void gcone::writeConeToFile ( const gcone gc,
bool  usingIntPoints = FALSE 
)

Field Documentation

◆ baseRing

ring gcone::baseRing
private

Definition at line 146 of file gfan.h.

◆ counter

STATIC_VAR int gcone::counter
private

Definition at line 150 of file gfan.h.

◆ dd_LinealitySpace

STATIC_VAR dd_MatrixPtr gcone::dd_LinealitySpace

Matrix to contain the homogeneity/lineality space.

Definition at line 177 of file gfan.h.

◆ ddFacets

dd_MatrixPtr gcone::ddFacets

At least as a workaround we store the irredundant facets of a matrix here.

This is needed to compute an interior points of a cone. Note that there will be non-flippable facets in it!

Definition at line 200 of file gfan.h.

◆ facetPtr

facet* gcone::facetPtr

Pointer to the first facet.

Definition at line 154 of file gfan.h.

◆ gcBasis

ideal gcone::gcBasis

Contains the Groebner basis of the cone.

Is set by gcone::getGB(ideal I)

Definition at line 206 of file gfan.h.

◆ gcRays

int64vec** gcone::gcRays

Array of intvecs representing the rays of the cone.

Definition at line 203 of file gfan.h.

◆ hasHomInput

STATIC_VAR bool gcone::hasHomInput

is the ideal homogeneous?

Definition at line 182 of file gfan.h.

◆ hilbertFunction

STATIC_VAR int64vec* gcone::hilbertFunction

The hilbert function - for the homogeneous case.

Definition at line 186 of file gfan.h.

◆ inputIdeal

ideal gcone::inputIdeal
private

Definition at line 145 of file gfan.h.

◆ ivIntPt

int64vec* gcone::ivIntPt
private

Definition at line 147 of file gfan.h.

◆ ivZeroVector

STATIC_VAR int64vec* gcone::ivZeroVector

The zero vector.

Needed in case of fNormal mismatch

Definition at line 188 of file gfan.h.

◆ lengthOfSearchList

STATIC_VAR int gcone::lengthOfSearchList

Definition at line 178 of file gfan.h.

◆ maxSize

STATIC_VAR int gcone::maxSize

Maximum size of the searchlist.

Definition at line 180 of file gfan.h.

◆ next

gcone* gcone::next

Definition at line 207 of file gfan.h.

◆ numFacets

int gcone::numFacets

of facets of the cone

This value is set by gcone::getConeNormals

Definition at line 193 of file gfan.h.

◆ numRays

unsigned gcone::numRays

Definition at line 204 of file gfan.h.

◆ numVars

STATIC_VAR int gcone::numVars

of variables in the ring

Definition at line 184 of file gfan.h.

◆ pred

int gcone::pred
private

Definition at line 149 of file gfan.h.

◆ prev

gcone* gcone::prev

Definition at line 208 of file gfan.h.

◆ UCN

int gcone::UCN
private

Definition at line 148 of file gfan.h.


The documentation for this class was generated from the following file: