


This is a documentation m-file for the decomposition structure
Content:
<a href="matlab: help obtainDec">Generating function</a>
<a href="matlab: help helpDec>decDetail">Details on entities</a>
<a href="matlab: help helpDec>decOutput">Field structure for dec</a>
> <a href="matlab:help helpDec>decConeField">Subfields for cones</a>


0001 function helpDec 0002 % This is a documentation m-file for the decomposition structure 0003 % 0004 % Content: 0005 % <a href="matlab: help obtainDec">Generating function</a> 0006 % <a href="matlab: help helpDec>decDetail">Details on entities</a> 0007 % <a href="matlab: help helpDec>decOutput">Field structure for dec</a> 0008 % > <a href="matlab:help helpDec>decConeField">Subfields for cones</a> 0009 clc 0010 help helpDec 0011 disp('') 0012 disp(' ---------------------------') 0013 end 0014 0015 function decDetail 0016 % The validity cone defines constrained h-vectors (hC-vectors) for which all 0017 % facets, defined by the facet normals in A, are supporting hyperplanes 0018 % that touch the polytope. For all limiting cases, that are: 0019 % dec.validityCone.A * hC = 0 0020 % one or more facets are not present. Extended information that includes 0021 % the set of facet that are acutally vanished can be obtained by 0022 % dec.boundaryData for which redundant rows of A are stored. 0023 % 0024 % The unified partitions define the regions in hC-space for which the 0025 % polytopes have the same a-type (in 3D: the same set of faces, edges and 0026 % vertices). These partitions also contain the limiting cases, where 0027 % edges are reduced to vertices. They are defined, by: 0028 % dec.unifiedPartition{iPart}.A * hC <= 0 0029 % 0030 % The simplex partitions are the triangulation of the unified partition and 0031 % are required interenally only. 0032 % 0033 % The structuring elements (dec.se) are those indecomposable polytopes 0034 % that are used to represent a polytope from H-representation in 0035 % S-representation: 0036 % P(hC) = [Minkowski sums over i:] lam(i) * P(dec.se(i, :)'). 0037 % The structuring elements are given as hC-vectors in each line of dec.se 0038 % and they are normalized to the mean width of 1. 0039 % 0040 % The center ray (dec.centerRay) is computed by the mean of the extreme 0041 % rays of the validity cone. It is used to scale the structuring elements in 0042 % hC-space to reside on the hyperplane, defined by: 0043 % dec.centerRay * hC = 1, 0044 % which touches the unit ball in hC-space. It is also used to close the 0045 % cones of the validity cone and partitions. 0046 % 0047 % Back to <a href="matlab: helpDec">Content</a> 0048 % --------------------------- 0049 end 0050 0051 function decOutput 0052 % Fields of a decomposition structure: 0053 % .A - the facet normals of the polytope (nH x nDim matrix) 0054 % .mappingReducedToFull - mapping matrix h = M*hC (nH x nC matrix) 0055 % .mappingFullToReduced - mapping matrix hC = M*h (nC x nH matrix) 0056 % .constraintMatrix - constraints that h fulfills: C*h = 0 0057 % (nH x nH matrix) 0058 % 0059 % .nDim - dimensionality of the polytopes defined by A 0060 % .nH - total number of facets defined by A 0061 % .nC - dimension of the constrained h-vectors (hC-vectors) 0062 % .properData - (optional for improper representations) the decomposition 0063 % structure; it has some additional fields to map proper and 0064 % improper (new) representaiton: .mappingNewToProper, 0065 % .mappingProperToNew 0066 % 0067 % .isProper - 1 if representation is proper (validity=confinement) 0068 % .isOrdinary - 0 if representation is singular (no confinement mapping; 0069 % confinement cone is not convex) 0070 % .isComplete - 1 if representation is complete (validity cone is known) 0071 % 0072 % .confinementCone - the cone of confined hC-vectors (more <a href="matlab:help helpDec>decConeField">subfields</a>) 0073 % .confinementConeHull - substitutes confinementCone for singular 0074 % representations 0075 % .confinemendConePart - substitutes confinementCone for incomplete 0076 % representations 0077 % .validityCone - the cone of valid hC-vectors (more <a href="matlab:help helpDec>decConeField">subfields</a>) 0078 % .validityConePart - substitutes validityCone for incomplete 0079 % representations 0080 % .confinementMappingData - data required for mapping unconfinement 0081 % vectors to the confinement cone (see <a href="matlab:help mapToValidityCone">mapToValidityCone</a>; more 0082 % <a href="matlab:help helpDec>decConfinementMappingField">subfields</a>) 0083 % .validityMappingData - data required for mapping invalid (but usually 0084 % confined) vectors to the validity cone (see <a href="matlab:help mapToValidityCone">mapToValidityCone</a>; more 0085 % <a href="matlab:help helpDec>decValidityMappingField">subfields</a>) 0086 % .facetValidityData - data used by <a href="matlab:help obtainFacetValidityCone">obtainFacetValidityCone</a> (more 0087 % <a href="matlab:help helpDec>decFacetValidityField">subfields</a>) 0088 % .centerRay - a normalized hC-vector that represents mean of the 0089 % structuring elements (this is an inner point for ordinary 0090 % representations) 0091 % 0092 % .simplexPartition - cell array of simplex partitions (more <a href="matlab:help helpDec>decConfinementMappingField">subfields</a>) 0093 % .simplexPartition - cell array of unified partitions (more <a href="matlab:help helpDec>decConfinementMappingField">subfields</a>) 0094 % .se - the nS structuring elements, scaled to mean width 0095 % of one (nS x nC matrix) 0096 % .seScaledToClose - the nS structuring elements, scaled the closure 0097 % constructed by the .centerRay (nS x nC matrix) 0098 % .seIncidenceMatrix - structuring elements that can be Minkowski added 0099 % pairwise so that no additional facets are created. (0 not 0100 % possible, 1 possible; nS x nS matrix) 0101 % .simplexToUnifiedVector - a vector of length nPS that contains the 0102 % index to the unified partition from which each simplex partition 0103 % was generated from. 0104 % .nS - total number of structuring elements 0105 % .nPU - total number of unified partitions 0106 % .nPS - total number of simplex partitions 0107 % 0108 % .measureData - data generated by <a href="matlab:help addMeasureDataDec">addMeasureDataDec</a> and used by 0109 % <a href="matlab:help computeMeasureDec">computeMeasureDec</a> 0110 % .inputData - (internal use, only) 0111 % .cdef - optionally added, when created by obtainCrystalDec 0112 % .timingData - storage of cumputational times (internal use, only) 0113 % 0114 % Back to <a href="matlab: helpDec">Content</a> 0115 % --------------------------- 0116 end 0117 0118 function decConeField 0119 % The fields of cones for a decomposition have the following fields: 0120 % .A - facet normals of the cone in nC-dimensional space 0121 % .h - facet distances of the cone (they are always zero; in this 0122 % way the cone can be used directly as hrep) 0123 % .volume - the volume of the closed cone in hC-space 0124 % (.confinementCone and .validityCone, only) 0125 % .volumeScaled - the volume of the closed cone divided by the 0126 % confinement cone volume (.simplexPartition and 0127 % .unifiedPartition, only) 0128 % .seIndexVector - indices to dec.se that are the generating rays of 0129 % this cone 0130 % .mappingHcToLam - a mapping matrix to convert a hC vector to the 0131 % scalar coefficients of the Minkowski decomposition with the 0132 % structuring elments in seIndexVector 0133 % 0134 % Back to <a href="matlab: helpDec">Content</a> 0135 % Back to <a href="matlab:help helpDec>decOutput">decomposition structure</a> 0136 % --------------------------- 0137 end 0138 0139 function decConfinementMappingField 0140 % The fields dec.confinementMappingData are: 0141 % .A - matrix of normals for linear inequality constraints 0142 % .responsibleVector - each inequality (columns) is assigned to a set 0143 % of projections in .projectionData; for proper representations the 0144 % value indicates a group of facets that disappeared 0145 % .projectionData - structure array with subfields: 0146 % .A - matrix of normals for linear inequality constraints 0147 % .responsibleMatrix - indicates which equations (first column) must 0148 % be fulfilled as <= or >= (third column) so that the projection 0149 % in projectionList with index in the first column can be applied 0150 % .projectionList - a cell array of projection matrices 0151 % .ignoreFadeOut - this field only applies for the proper embedding of 0152 % improper representations and indicates indices to constraints for 0153 % which a growth vector shall not be slowed down when approaching this 0154 % boundary (see also pbeSolver). 0155 % 0156 % Back to <a href="matlab: helpDec">Content</a> 0157 % Back to <a href="matlab:help helpDec>decOutput">decomposition structure</a> 0158 % --------------------------- 0159 end 0160 0161 function decValidityMappingField 0162 % The fields dec.validityMappingData are: 0163 % .A - matrix of normals for linear inequality constraints 0164 % .responsibleMatrix - indicates which equations (first column) must 0165 % be fulfilled as <= or >= (third column) so that the projection 0166 % in projectionList with index in the first column can be applied 0167 % .projectionList - a cell array of projection matrices 0168 % .targetDimension - corresonding to the projection matrix in 0169 % .projectionList, it indicates the rank of the projection matrix 0170 % 0171 % Back to <a href="matlab: helpDec">Content</a> 0172 % Back to <a href="matlab:help helpDec>decOutput">decomposition structure</a> 0173 % --------------------------- 0174 end 0175 0176 function decFacetValidityField 0177 % The fields dec.facetValidityData are: 0178 % .A - matrix of all facet normals used for facet validity cones 0179 % .responsibleMatrix - indicates which facet normals (first column) are 0180 % used for the facet validity cone of the index in the second 0181 % column (index (.nH+1) represents the empty polytope cone) 0182 % 0183 % Back to <a href="matlab: helpDec">Content</a> 0184 % Back to <a href="matlab:help helpDec>decOutput">decomposition structure</a> 0185 % --------------------------- 0186 end