dvlatclass

CopyrightClara Waldmann, 2014
LicenseGPL-2
Safe HaskellSafe-Inferred
LanguageHaskell2010

Children

Description

Modul zur Berechnungen der Kinder (Facetten) eines Knotens

Synopsis

Documentation

children :: VR -> IO [VR] Source

berechnet Liste der Facetten einer V-Repräsentation mittles lrs

children VR { vr_dim = 3, vr_nvert = 4, dim = 4
            , vr_vert = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1], [0, 1, -1, 1]]
            }
= [VR { vr_dim = 2, vr_nvert = 3, dim = 4, vr_vert = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1]]}
  ,VR { vr_dim = 2, vr_nvert = 3, dim = 4, vr_vert = [[1, 0, 0, 0], [0, 0, 0, 1], [0, 1, -1, 1]]}
  ,VR { vr_dim = 2, vr_nvert = 3, dim = 4, vr_vert = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 1, -1, 1]]}
  ]

lrs :: Either VR HR -> IO String Source

Aufruf von lrs für V-Repräsentation oder H-Repräsentation

getfcs :: String -> VR -> [VR] Source

liest aus Ausgabe von lrs angewendet auf eine V-Repräsentation mit Option incidence die Facetten aus

getfcs "*lrs:lrslib v.4.2c, 2010.7.7(32bit,lrsmp.h)
	*Copyright (C) 1995,2010, David Avis   avis@cs.mcgill.ca 
	*incidence
	H-representation
	begin
	***** 4 rational
	F#1 B#1 h=0 vertices/rays  1* 2 3 4 I#3 det= 1  in_det= 1 
	 1  0  0  0 
	F#2 B#1 h=0 vertices/rays  1 2 3 4* I#3 det= 1  in_det= 1 
	 0  0 -1  0 
	F#3 B#1 h=0 vertices/rays  1 2* 3 4 I#3 det= 1  in_det= 1 
	 0  1  1  0 
	F#4 B#1 h=0 vertices/rays  1 2 3* 4 I#3 det= 1  in_det= 1 
	 0  0  1  1 
	end
	*Totals: facets=4 bases=1
	*lrs:lrslib v.4.2c, 2010.7.7(32bit,lrsmp.h) max digits=8/100
	*0.001u 0.001s 2004Kb 0 flts 0 swaps 0 blks-in 0 blks-out" 
      VR {dim = 3, vr_nvert = 4, vr_dim = 4, vr_vert = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1], [0, 1, -1, 1]]}
 = [VR { vr_dim = 2, vr_nvert = 3, dim = 4, vr_vert = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1]]}
   ,VR { vr_dim = 2, vr_nvert = 3, dim = 4, vr_vert = [[1, 0, 0, 0], [0, 0, 0, 1], [0, 1, -1, 1]]}
   ,VR { vr_dim = 2, vr_nvert = 3, dim = 4, vr_vert = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 1, -1, 1]]}
   ]

facets :: Parser [[Int]] Source

Parser für Liste der Indexlisten der Facetten wird aufgerufen in getfcs

facet :: Parser [Int] Source

Hilfsparser für facets für eine Facette als Liste von Indices

eckind :: String -> [Int] Source

Hilfsparser für facet für eine Liste von Indices

eckind " 1* 2 3 : 4 5 " = [2,3,4,5]

facetsfromind :: [[Int]] -> VR -> [VR] Source

Bestimmt aus der Liste der Indices die Facetten als V-Repräsentationen

facetfromind :: [Int] -> VR -> VR Source

Hilfsfunktion für facetsfromind zur Bestimmung einer Facette aus der Indexliste