

CHECK IF HYPERPLAN INTERSECTS ORTHANT CODE
If you access values close to each other frequently you will also get a very nice speed-up because the morton-order encoding is optimal in terms of cache locality.įor morton3 you better not use the code above. the hyperplane V that lie in the positive orthant and to the right of the in tersection with hyperplane P are above the hyperplane P. Best part of it: Values that are close in 3D space are close in 1D space as well. This turns your three dimensional index into a one dimensional one. You can use this function to combine your positions like this: if so set the 3*i'th bit in the result: Here shown in binary: 11111b becomes 1001001001bĪ C-function to do this looks like this (shown for clarity and only for 11 bits): In three dimension it goes like this: Take the coordinate components and interleave each bit two zero bits. commonFace(Fan,Cone) - see commonFace - checks if the intersection is a face of both Cones or Polyhedra, or of cones with fans Cone Cone - computes. One alternative to the tree-method: Use the Morton-Order to encode your data. Well, I have no proved that this method provides only and all extreme points.įurthermore, it requires to do the job for each ordering so the complexity is not polynomial. Then I set P(1,0)=0.4 and decrements my counters : I set P(0,0)=0.3 and decrements my counters : Suppose I have 2 variables $X_1$ and $X_2$ and 2 marginal constraints : Sort the $x \in val(\chi)$ in that order.Īttribute to each x in turn the highest valid probability P(x) Repeat for each ordering of $x \in val(\chi)$ So far, I have devised a simple but fastidious way to identify extreme point :Ĭreate counters for each marginal constraints The question is how find the extreme points of that polytope, the number of those points (or an upper bound of that number) and (that would be great) an algorithm enabling to find neighbour extreme point from any extreme point. crosses each hyperplane xi 0 exactly once. Its dimension is $card(val(\chi))-1-N=2^n-1-N$ where N is the number of additional linear constraints. will call this sequence of orthants the carrier of the geodesic. The space that is valid for all my constraints is a convex polytope. So, the number of extrema points is less than or equal to $n \choose m$.īut in dimension 3, for instance, if H is of dimension 1 (a line), the number of extrema points is 2 or less (while $(P(x)=C)$ where S is the subset of $val(\chi)$ compatible with $X_i=x_i,X_j=x_j, \dots ,X_k=x_k$ Furthermore, it is clear We can have only one extrema point when m coordinates are set to 0.
