▼ 15 Appendix
 15.1 Alpha Commands 15.2 APREPRO 15.3 File Formats 15.4 Available Colors 15.5 Element Numbering 15.6 FASTQ 15.7 Full  Hex vs. Node  Hex Representation 15.8 Navigation XML Files 15.9 Periodic Space Filling Models (Tile) 15.1 References 15.11 Style Sheets in Cubit
 ► 15.1 Alpha Commands
 15.1.1 Automatic Detail Suppression 15.1.2 Automatic Geometry Decomposition 15.1.3 Cohesive Elements 15.1.4 Deleting Mesh Elements 15.1.5 Feature  Size 15.1.6 Geometry Tolerant Meshing 15.1.6.9 Limitations 15.1.7 Mesh Cutting 15.1.8 Mesh Grafting 15.1.9 Optimize Jacobian 15.1.10 Randomize 15.1.11 Refine Mesh Boundary 15.1.12 Super Sizing Function 15.1.13 Test Sizing Function 15.1.14 Transition 15.1.15 Triangle Mesh Coarsening 15.1.16 Whisker Weave
8.5

15.1Alpha Commands

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcommand{\CurveCAD}{\CurveRelatedTo{\SymbolCAD}} \newcommand{\CurveCADModified}{\CurveRelatedTo{\SymbolCADModified}} \newcommand{\CurveMesh}{\CurveRelatedTo{\Partition}} \newcommand{\CurveUspline}{\CurveRelatedTo{\MeshUspline}} \newcommand{\dCurve}{\Differential[\Curve]} \newcommand{\PointCAD}{\PointRelatedTo{\SymbolCAD}} \newcommand{\PointCADModified}{\PointRelatedTo{\SymbolCADModified}} \newcommand{\PointUspline}{\PointRelatedTo{\MeshUspline}} \newcommand{\Segment}[1]{\QuantityChildOf{#1}{\SymbolSegment}} \newcommand{\SegmentOfVolumeEnv}{\Segment{\VolumeEnv}} \newcommand{\SegmentOfSurface}{\Segment{\Surface}} \newcommand{\Hex}{\Segment{}_{h}} \newcommand{\Tet}{\Segment{}_{t}} \newcommand{\SegmentParamDomain}[1]{\QuantityRelatedTo{\ParamDomain}{#1}} \newcommand{\SegmentParamDomainOfVolumeEnv}{\QuantityRelatedTo{\ParamDomain}{\Segment{\VolumeEnv}}} \newcommand{\SegmentParamDomainOfSurface}{\QuantityRelatedTo{\ParamDomain}{\Segment{\Surface}}} \newcommand{\SegmentSet}{\SymbolSegmentSet} \newcommand{\SegmentSetFunctionOf}[1]{\QuantityFunctionOf{\SegmentSet}{#1}} \newcommand{\SegmentSetOutside}{\SegmentSet^{\SymbolOutside}} \newcommand{\SegmentSetInside}{\SegmentSet^{\SymbolInside}} \newcommand{\SegmentSetHybrid}{\SegmentSet^{\SymbolHybrid}} \newcommand{\PartitionFunctionOf}[1]{\QuantityFunctionOf{\Partition}{#1}} \newcommand{\PartitionBezierExtraction}[1]{\QuantityFunctionOf{\SymbolPartition^{B}}{#1}} \newcommand{\PartitionTessellation}[1]{\QuantityFunctionOf{\SymbolPartition^{T}}{#1}} \newcommand{\PartitionTessellationOfUspline}{\PartitionTessellation{\MeshUspline}} \newcommand{\PartitionTessellationMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldCoeff}{\SymbolManifoldCoeff} \newcommand{\ManifoldCoeffUpper}{\SymbolManifoldCoeffUpper} \newcommand{\ManifoldCoeffUspline}{\QuantityRelatedTo{\SymbolManifoldCoeffUspline}{\MeshUspline}} \newcommand{\ManifoldCoeffBernstein}{\QuantityRelatedTo{\SymbolManifoldCoeffBernstein}{\MeshBezier}} \newcommand{\ManifoldCoeffVec}{\Vec{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffSet}{\Set{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVec}{\Vec{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVecCell}{\QuantityRelatedTo{\Vec{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsVecUsplineCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsVecSubmeshCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinSegmentOfVolumeEnv}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\SegmentOfVolumeEnv}} \newcommand{\ManifoldCoeffsSet}{\Set{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsSetCell}{\QuantityRelatedTo{\Set{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsSetUsplineCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsSetBernsteinCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsSetSubmeshCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldTemporalMap}[2]{\QuantityRelatedTo{#2}{#1,\SymbolTime}} \newcommand{\ManifoldPartitionMap}{\ManifoldMap{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldCADMap}{\ManifoldMap{\ParamDomainOnCAD}{\Manifold}} \newcommand{\ManifoldCADMapModified}{\ManifoldMap{\ParamDomainOnCADModified}{\Manifold}} \newcommand{\ManifoldBezierMap}{\ManifoldMap{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMap}{\ManifoldMap{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMap}{\ManifoldMap{\ParamDomain}{\Volume}} \newcommand{\SurfaceMap}{\ManifoldMap{\ParamDomainBdry}{\Surface}} \newcommand{\ManifoldMapDef}[2]{\FuncDef{\ManifoldMap{#1}{#2}}{#1}{#2}} \newcommand{\ManifoldMapInverseDef}[2]{\FuncDef{\Inverse{\ManifoldMap{#1}{#2}}}{#2}{#1}} \newcommand{\ManifoldTemporalMapDef}[2]{\FuncDef{\ManifoldTemporalMap{#1}{#2}}{#1\otimes\Reals_{+}}{#2}} \newcommand{\ManifoldPartitionMapDef}{\ManifoldMapDef{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldBezierMapDef}{\ManifoldMapDef{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMapDef}{\ManifoldMapDef{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMapDef}{\ManifoldMapDef{\ParamDomain}{\Volume}} \newcommand{\SurfaceMapDef}{\ManifoldMapDef{\ParamDomainBdry}{\Surface}} \newcommand{\SurfaceToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\Surface}} \newcommand{\ManifoldCoordDetailed}[2]{\QCO{#1}{#2}} \newcommand{\ManifoldCoordVecDetailed}[2]{\QCO{#1}{\Vec{#2}}} \newcommand{\ManifoldCoord}{x} \newcommand{\ManifoldCoordVec}{\Vec{x}} \newcommand{\ManifoldPartitionMapCoord}{\ManifoldCoordDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldPartitionMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoord}{\ManifoldCoordDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\CovariantBasisSurfVec}{\Vec{\SymbolCovariantBasisSurf}} \newcommand{\CovariantBasisVolVec}{\Vec{\SymbolCovariantBasisVol}} \newcommand{\MetricComp}{\SymbolMetric} \newcommand{\MetricTen}{\Mat{\MetricComp}} \newcommand{\CurvatureComp}{\SymbolCurvature} \newcommand{\CurvatureTen}{\Mat{\CurvatureComp}} \newcommand{\CurvCoordIdOne}{\SymbolCurvCoordIdOne} \newcommand{\CurvCoordIdTwo}{\SymbolCurvCoordIdTwo} \newcommand{\CurvCoordIdThree}{\SymbolCurvCoordIdThree} \newcommand{\OrthogonalCoordTransform}{\Mat{\SymbolOrthogonalTransform}} \newcommand{\InversionPointTen}{\Vec{p}} \newcommand{\InversionPointComp}{p} \newcommand{\BoundingVolume}[1]{\QuantityFunctionOf{\Set{bv}}{#1}} \newcommand{\BoundingVolumeSet}[1]{\QuantityFunctionOf{\Set{BV}}{#1}} \newcommand{\BoundingVolumeTree}[1]{\QuantityFunctionOf{\Set{BVH}}{#1}} \newcommand{\AxisAlignedBoundingBox}[1]{\QuantityFunctionOf{\Set{AABB}}{#1}} \newcommand{\AABBCornerLower}{\Vec{c}^l} \newcommand{\AABBCornerLowerComp}{c^l} \newcommand{\AABBCornerUpper}{\Vec{c}^u} \newcommand{\AABBCornerUpperComp}{c^u} \newcommand{\LowerBound}[2]{B^l\left(#1,#2\right)} \newcommand{\UpperBound}[2]{B^u\left(#1,#2\right)} \newcommand{\UpperBoundValue}{U} \newcommand{\UpperBoundValueBV}{U^{\text{BV}}} \newcommand{\UpperBoundValuePoints}{U^{\text{point}}} \newcommand{\GapTolerance}{\varepsilon^{\text{gap}}} \newcommand{\NearestCells}[3][]{\Set{C}_{#1}\left(#2,#3\right)} \newcommand{\BVHNearestGeom}[3][]{c_{#1}\left(#2,#3\right)} \newcommand{\BVHGeomSetOfSets}{\Set{G}} \newcommand{\BVHTessPointSet}{\Set{P}} \newcommand{\BVHBVSet}{\Set{L}} \newcommand{\SimplexMap}[1]{\QuantityFunctionOf{\Mat{L}}{#1}} \newcommand{\ParamCoordVecTarget}{\ParamCoordVecSimple_0} \newcommand{\SpatialCoordVecTarget}{\SpatialCoordVec_0} \newcommand{\SpatialCoordVecToSegmentSetMap}{\SegmentSet^f} \newcommand{\SpatialCoordVecToParamCoordVecSetMap}{\Inverse{\widetilde{\ManifoldMap{\ParamDomainEnv}{\Surface}}}} \newcommand{\HessMatComp}{H} \newcommand{\HessMatTen}{\Mat{\HessMatComp}} \newcommand{\QuadraturePointEnv}[2]{\SymbolEnvModifier{\QuadraturePoint{#1}{#2}}} \newcommand{\QuadraturePoint}[2]{\SymbolQuadraturePoint_{#1}^{#2}} \newcommand{\QuadraturePointToElemIndexMap}[1]{\operatorname{qe}(#1)} \newcommand{\QuadratureWeightEnv}[2]{\SymbolEnvModifier{\QuadratureWeight{#1}{#2}}} \newcommand{\QuadratureWeight}[2]{\SymbolQuadratureWeight_{#1}^{#2}} \newcommand{\QuadratureSet}{\Set{\SymbolQuadratureSet}} \newcommand{\QuadratureSetInside}{\QuadratureSet^{\SymbolInside}} \newcommand{\QuadratureSetOutside}{\QuadratureSet^{\SymbolOutside}} \newcommand{\QuadratureSubdDepth}{k} \newcommand{\ClosestPointMap}[1]{\QuantityChildOf{#1}{\Vec{\SymbolClosestPointMap}}} \newcommand{\ClosestPointMapCAD}{\ClosestPointMap{\SymbolCAD}} \newcommand{\ClosestPointMapCADModified}{\ClosestPointMap{\SymbolCADModified}} \newcommand{\ProjectionInto}[1]{\QuantityRelatedTo{\SymbolProjection}{#1}} \newcommand{\ProjectionIntoBernsteinCell}{\ProjectionInto{\Cell}} \newcommand{\ProjectionIntoBernsteinElem}{\ProjectionInto{\Elem}} \newcommand{\ProjectionIntoMeshBezier}{\ProjectionInto{\MeshBezier}} \newcommand{\ProjectionIntoMeshUspline}{\ProjectionInto{\MeshUspline}} \newcommand{\LinearInterpolationOp}[1]{\QRT{\SymbolLinearInterpolation}{#1}} \newcommand{\Valence}{k} \newcommand{\ArbitraryVector}[1]{\QSB{v}{#1}} \newcommand{\RotationMatrix}[1]{R^{#1}} \newcommand{\RepVecSymbol}{u} \newcommand{\RepVec}[1]{\QSB{\RepVecSymbol}{#1}} \newcommand{\RepVecVec}{\Vec{\RepVecSymbol}} \newcommand{\AlignmentField}{\RepVecVec'} \newcommand{\BiharmonicEnergy}{\QSB{E}{B}} \newcommand{\PrescribedRepVec}[1]{\QSB{d}{#1}} \newcommand{\AlignmentParameter}{\lambda} \newcommand{\SingularityIndex}[1]{\QSB{\chi}{#1}} \newcommand{\AngularDefect}[1]{\QSB{K}{#1}} \newcommand{\ArbitraryAngle}{\theta} \newcommand{\ParallelTransport}[1]{\QSB{\varphi}{#1}} \newcommand{\MinusPiToPi}[1]{\lfloor #1 \rfloor} \newcommand{\AreaOperator}[1]{\QFO{\operatorname{area}}{#1}} \newcommand{\VectorAngle}[1]{\QFO{\operatorname{arg}}{#1}} \newcommand{\DistanceFunction}{\phi} \newcommand{\DistanceGradient}{X} \newcommand{\HeatField}{\eta} \newcommand{\RegionAtZeroDistance}{\gamma}$$\newcommand{\SymbolDisp}{u} \newcommand{\SymbolDispUpper}{U} \newcommand{\SymbolVelocity}{v} \newcommand{\SymbolVelocityUpper}{V} \newcommand{\SymbolAcceleration}{a} \newcommand{\SymbolAccelerationUpper}{A} \newcommand{\SymbolMass}{M} \newcommand{\SymbolLength}{L} \newcommand{\SymbolArea}{A} \newcommand{\SymbolConstraint}{g} \newcommand{\SymbolConstraintUpper}{G} \newcommand{\SymbolPenalty}{\varepsilon} \newcommand{\SymbolLagrangeMultRef}{\Lambda} \newcommand{\SymbolLagrangeMultCurr}{\lambda} \newcommand{\SymbolFict}{f} \newcommand{\SymbolTracForce}{h} \newcommand{\SymbolTracForceUpper}{H} \newcommand{\SymbolBodyForce}{b} \newcommand{\SymbolBodyForceUpper}{B} \newcommand{\SymbolVolumeRef}{\SymbolVolumeUpper} \newcommand{\SymbolSurfaceRef}{\SymbolSurfaceUpper} \newcommand{\SymbolCurveRef}{\SymbolCurveUpper} \newcommand{\SymbolPointRef}{\SymbolPointUpper} \newcommand{\SymbolVolumeCurr}{\SymbolVolume} \newcommand{\SymbolSurfaceCurr}{\SymbolSurface} \newcommand{\SymbolCurveCurr}{\SymbolCurve} \newcommand{\SymbolPointCurr}{\SymbolPoint} \newcommand{\SymbolDeformGradInc}{f} \newcommand{\SymbolDeformGrad}{F} \newcommand{\SymbolStrainGreenLagrange}{E} \newcommand{\SymbolDeformCauchyGreenLeft}{b} \newcommand{\SymbolDeformCauchyGreenRight}{C} \newcommand{\SymbolStrainDisp}{B} \newcommand{\SymbolStrainSymGrad}{\epsilon} \newcommand{\SymbolStrainPlasticEquiv}{\alpha} \newcommand{\SymbolHardeningPlastic}{k} \newcommand{\SymbolYieldFunction}{f} \newcommand{\SymbolConsistencyParameterPlastic}{\gamma} \newcommand{\SymbolPlasticModuliScaling}{\beta} \newcommand{\SymbolYieldSurfaceNormal}{n} \newcommand{\SymbolEnergy}{\Pi} \newcommand{\SymbolEnergyDensityStrain}{\Psi} \newcommand{\SymbolEnergyDensityStrainVol}{U} \newcommand{\SymbolResidual}{R} \newcommand{\SymbolForce}{F} \newcommand{\SymbolStiffness}{K} \newcommand{\SymbolSolution}{d} \newcommand{\ParamDomainBdryDisp}{\ParamDomainBdry^{\SymbolDisp}} \newcommand{\ParamDomainBdryTrac}{\ParamDomainBdry^{\SymbolTracForce}} \newcommand{\VolumeEnvRef}{\Set{\SymbolEnvModifier{\SymbolVolumeRef}}} \newcommand{\VolumeRef}{\Set{\SymbolVolumeRef}} \newcommand{\VolumeRefClosure}{\overline{\VolumeRef}} \newcommand{\VolumeRefFict}{\VolumeEnvRef\setminus\VolumeRef} \newcommand{\dVolumeRef}{\Differential[\VolumeRef]} \newcommand{\VolumeIndicatorDef}{\FuncDef{\VolumeIndicator_{\PenaltyStiffness}}{\VolumeEnvRef}{\Reals_+}} \newcommand{\SurfaceEnvRef}{\Set{\SymbolEnvModifier{\SymbolSurfaceRef}}} \newcommand{\SurfaceRef}{\Set{\SymbolSurfaceRef}} \newcommand{\SurfaceRefWildCard}{\SurfaceRef^{\SymbolWildCard}} \newcommand{\SurfaceRefDisp}{\SurfaceRef^{\SymbolDisp}} \newcommand{\SurfaceRefTrac}{\SurfaceRef^{\SymbolTracForce}} \newcommand{\SurfaceRefFict}{\SurfaceRef^{\SymbolFict}} \newcommand{\SurfaceRefDispExternal}{\SurfaceRefDisp\setminus\SurfaceRefFict} \newcommand{\SurfaceRefTracExternal}{\SurfaceRefTrac\setminus\SurfaceRefFict} \newcommand{\SurfaceRefFictTrac}{\SurfaceRefTrac\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictDisp}{\SurfaceRefDisp\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictExternal}{\SurfaceRefFict\setminus\SurfaceRef} \newcommand{\dSurfaceRef}{\Differential[\SurfaceRef]} \newcommand{\CurveRef}{\Set{\SymbolCurveRef}} \newcommand{\dCurveRef}{\Differential[\CurveRef]} \newcommand{\PointRef}{\Set{\SymbolPointRef}} \newcommand{\PointRefDisp}{\PointRef^{\SymbolDisp}} \newcommand{\PointRefTrac}{\PointRef^{\SymbolTracForce}} \newcommand{\dPointRef}{\Differential[\PointRef]} \newcommand{\dPointRefTrac}{\Differential[\PointRefTrac]} \newcommand{\RefCoord}[1]{\ManifoldCoordDetailed{#1}{X}} \newcommand{\RefCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{X}} \newcommand{\VolumeEnvRefCoord}{\RefCoord{\VolumeEnvRef}} \newcommand{\VolumeEnvRefCoordVec}{\RefCoordVec{\VolumeEnvRef}} \newcommand{\VolumeRefCoord}{\RefCoord{\VolumeRef}} \newcommand{\VolumeRefCoordVec}{\RefCoordVec{\VolumeRef}} \newcommand{\SurfaceRefCoord}{\RefCoord{\SurfaceRef}} \newcommand{\SurfaceRefCoordVec}{\RefCoordVec{\SurfaceRef}} \newcommand{\SurfaceRefDispCoord}{\RefCoord{\SurfaceRefDisp}} \newcommand{\SurfaceRefDispCoordVec}{\RefCoordVec{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracCoord}{\RefCoord{\SurfaceRefTrac}} \newcommand{\SurfaceRefTracCoordVec}{\RefCoordVec{\SurfaceRefTrac}} \newcommand{\CurveRefCoord}{\RefCoord{\CurveRef}} \newcommand{\CurveRefCoordVec}{\RefCoordVec{\CurveRef}} \newcommand{\UsplineBasisFuncOverCurveRef}[1]{\UsplineBasisFuncDetailed{\CurveRef}{#1}} \newcommand{\UsplineBasisFuncOverSurfaceRefDisp}[1]{\UsplineBasisFuncDetailed{\SurfaceRefDisp}{#1}} \newcommand{\VolumeEnvCurr}{\Set{\SymbolEnvModifier{\SymbolVolumeCurr}}} \newcommand{\VolumeCurr}{\Set{\SymbolVolumeCurr}} \newcommand{\VolumeCurrClosure}{\overline{\VolumeCurr}} \newcommand{\dVolumeCurr}{\Differential[\VolumeCurr]} \newcommand{\SurfaceEnvCurr}{\Set{\SymbolEnvModifier{\SymbolSurfaceCurr}}} \newcommand{\SurfaceCurr}{\Set{\SymbolSurfaceCurr}} \newcommand{\SurfaceCurrDisp}{\SurfaceCurr^{\SymbolDisp}} \newcommand{\SurfaceCurrTrac}{\SurfaceCurr^{\SymbolTracForce}} \newcommand{\dSurfaceCurr}{\Differential[\SurfaceCurr]} \newcommand{\CurveCurr}{\Set{\SymbolCurveCurr}} \newcommand{\dCurveCurr}{\Differential[\CurveCurr]} \newcommand{\PointCurr}{\Set{\SymbolPointCurr}} \newcommand{\PointCurrDisp}{\PointCurr^{\SymbolDisp}} \newcommand{\PointCurrTrac}{\PointCurr^{\SymbolTracForce}} \newcommand{\dPointCurr}{\Differential[\PointCurr]} \newcommand{\CurrCoord}[1]{\ManifoldCoordDetailed{#1}{x}} \newcommand{\CurrCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{x}} \newcommand{\VolumeEnvCurrCoord}{\CurrCoord{\VolumeEnvCurr}} \newcommand{\VolumeEnvCurrCoordVec}{\CurrCoordVec{\VolumeEnvCurr}} \newcommand{\VolumeCurrCoord}{\CurrCoord{\VolumeCurr}} \newcommand{\VolumeCurrCoordVec}{\CurrCoordVec{\VolumeCurr}} \newcommand{\SurfaceCurrCoord}{\CurrCoord{\SurfaceCurr}} \newcommand{\SurfaceCurrCoordVec}{\CurrCoordVec{\SurfaceCurr}} \newcommand{\SurfaceCurrDispCoord}{\CurrCoord{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrDispCoordVec}{\CurrCoordVec{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrTracCoord}{\CurrCoord{\SurfaceCurrTrac}} \newcommand{\SurfaceCurrTracCoordVec}{\CurrCoordVec{\SurfaceCurrTrac}} \newcommand{\CurveCurrCoord}{\CurrCoord{\CurveRef}} \newcommand{\CurveCurrCoordVec}{\CurrCoordVec{\CurveRef}} \newcommand{\VolumeEnvRefMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\GenericGradOverVolumeEnvRefMap}[1]{\Grad{\VolumeEnvRefMap}{#1}} \newcommand{\VolumeRefMap}{\ManifoldMap{\ParamDomain}{\VolumeRef}} \newcommand{\GenericGradOverVolumeRefMap}[1]{\Grad{\VolumeRefMap}{#1}} \newcommand{\SurfaceRefDispMap}{\ManifoldMap{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMap}{\ManifoldMap{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\CurveRefMap}{\ManifoldMap{\ParamDomain}{\CurveRef}} \newcommand{\GenericGradOverCurveRefMap}[1]{\Grad{\CurveRefMap}{#1}} \newcommand{\VolumeEnvRefMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\SurfaceRefDispMapDef}{\ManifoldMapDef{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMapDef}{\ManifoldMapDef{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\SurfaceRefToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRef}} \newcommand{\SurfaceRefDispToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefTrac}} \newcommand{\CurveRefMapDef}{\ManifoldMapDef{\ParamDomain}{\CurveRef}} \newcommand{\GenericDeformMap}{\Vec{\varphi}} \newcommand{\VolumeEnvDeformMap}{\ManifoldMap{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\GenericGradOverVolumeEnvDeformMap}[1]{\Grad{\VolumeEnvDeformMap}{#1}} \newcommand{\VolumeDeformMap}{\ManifoldMap{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMap}{\ManifoldTemporalMap{\VolumeRef}{\VolumeCurr}} \newcommand{\GradVolumeDeformTemporalMap}{\GenericGradOverVolumeRefMap{\VolumeDeformTemporalMap}} \newcommand{\SurfaceDeformDispMap}{\ManifoldMap{\SurfaceRefDisp}{\SurfaceCurrDisp}} \newcommand{\SurfaceDeformTracMap}{\ManifoldMap{\SurfaceRefTrac}{\SurfaceCurrTrac}} \newcommand{\CurveDeformMap}{\ManifoldMap{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMap}{\ManifoldTemporalMap{\CurveRef}{\CurveCurr}} \newcommand{\VolumeDeformMapDef}{\ManifoldMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMapDef}{\ManifoldTemporalMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeEnvDeformMapDef}{\ManifoldMapDef{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\CurveDeformMapDef}{\ManifoldMapDef{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMapDef}{\ManifoldTemporalMapDef{\CurveRef}{\CurveCurr}} \newcommand{\DispTrialSpaceOverVolumeEnvRef}{\SpaceHilbert{U}(\VolumeEnvRef)} \newcommand{\DispTestSpaceOverVolumeEnvRef}{\delta \DispTrialSpaceOverVolumeEnvRef} \newcommand{\DispTrialSpaceOverVolumeRef}{\SpaceHilbert{U}(\VolumeRef)} \newcommand{\DispTestSpaceOverVolumeRef}{\delta \DispTrialSpaceOverVolumeRef} \newcommand{\DispTrialSpaceOverCurveRef}{\SpaceHilbert{U}(\CurveRef)} \newcommand{\DispTestSpaceOverCurveRef}{\delta \DispTrialSpaceOverCurveRef} \newcommand{\DispFieldRefComp}{\SymbolDispUpper} \newcommand{\DispFieldRefTen}{\Vec{\DispFieldRefComp}} \newcommand{\DispFieldCurrComp}{\SymbolDisp} \newcommand{\DispFieldCurrTen}{\Vec{\DispFieldCurrComp}} \newcommand{\VelFieldCurrTen}{\Vec{\SymbolVelocity}} \newcommand{\AccFieldCurrTen}{\Vec{\SymbolAcceleration}} \newcommand{\DeformGradComp}{\SymbolDeformGrad} \newcommand{\DeformGradTen}{\Mat{\DeformGradComp}} \newcommand{\DeformGradDet}{\Det{\DeformGradTen}} \newcommand{\KinematicElast}{e} \newcommand{\KinematicPlast}{p} \newcommand{\DivVolumeEnvRef}[1]{\Div{\VolumeEnvRefCoordVec}{#1}} \newcommand{\DivVolumeEnvCurr}[1]{\Div{\VolumeEnvCurrCoordVec}{#1}} \newcommand{\DeformGradIncComp}{\SymbolDeformGradInc} \newcommand{\DeformGradIncTen}{\Mat{\DeformGradIncComp}} \newcommand{\DeformGradIncDevComp}{\bar{\SymbolDeformGradInc}} \newcommand{\DeformGradIncDevTen}{\bar{\Mat{\DeformGradIncComp}}} \newcommand{\JAsDeformGradDet}{J} \newcommand{\StretchTen}{\Mat{V}} \newcommand{\StrainGreenLagrangeComp}{\SymbolStrainGreenLagrange} \newcommand{\StrainGreenLagrangeTen}{\Mat{\StrainGreenLagrangeComp}} \newcommand{\StrainGreenLagrangeVoigt}{\tilde{\StrainGreenLagrangeTen}} \newcommand{\DeformCauchyGreenRightComp}{\SymbolDeformCauchyGreenRight} \newcommand{\DeformCauchyGreenRightTen}{\Mat{\DeformCauchyGreenRightComp}} \newcommand{\DeformCauchyGreenLeftComp}{\SymbolDeformCauchyGreenLeft} \newcommand{\DeformCauchyGreenLeftTen}{\Mat{\DeformCauchyGreenLeftComp}} \newcommand{\DeformCauchyGreenLeftDevComp}{\bar{\SymbolDeformCauchyGreenLeft}} \newcommand{\DeformCauchyGreenLeftDevTen}{\bar{\Mat{\DeformCauchyGreenLeftComp}}} \newcommand{\StrainSymGradComp}{\SymbolStrainSymGrad} \newcommand{\StrainSymGradTen}{\Mat{\StrainSymGradComp}} \newcommand{\StrainDispMat}{\Mat{\SymbolStrainDisp}} \newcommand{\DeformCauchyGreenRightDevComp}{\bar{\SymbolDeformCauchyGreenRight}} \newcommand{\DeformCauchyGreenRightDevTen}{\bar{\Mat{\DeformCauchyGreenRightComp}}} \newcommand{\KinematicElastoplast}{{\rm ep}} \newcommand{\Trial}{{\rm trial}} \newcommand{\DeformCauchyGreenLeftElasticTenDef}{\DeformCauchyGreenLeftTen^\KinematicElast \DefEq \DeformGradTen^\KinematicElast \DeformGradTen^{\KinematicElast T}} \newcommand{\DeformCauchyGreenLeftElasticDevTenDef}{{\DeformCauchyGreenLeftDevTen}^\KinematicElast \DefEq {\JAsDeformGradDet}^{\KinematicElast-\frac{2}{3}} {\DeformCauchyGreenLeftTen}^\KinematicElast} \newcommand{\DeformCauchyGreenRightPlasticTenDef}{\DeformCauchyGreenRightTen^\KinematicPlast \DefEq \DeformGradTen^{\KinematicPlast T} \DeformGradTen^\KinematicPlast} \newcommand{\StrainPlasticEquiv}{\SymbolStrainPlasticEquiv} \newcommand{\ConsistencyParameterPlasticDiscrete}{\Delta \SymbolConsistencyParameterPlastic} \newcommand{\YieldSurfaceNormalComp}{\SymbolYieldSurfaceNormal} \newcommand{\YieldSurfaceNormalTen}{\Mat{\SymbolYieldSurfaceNormal}} \newcommand{\UnitNormalRefComp}{N} \newcommand{\UnitNormalRefTen}{\Vec{\UnitNormalRefComp}} \newcommand{\UnitNormalCurrComp}{\UnitNormalComp} \newcommand{\UnitNormalCurrTen}{\UnitNormal} \newcommand{\DispFieldOverVolumeEnvRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeEnvCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\DispFieldOverVolumeRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeDeformMap}} \newcommand{\DispFieldOverCurveRefTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\DispFieldOverCurveRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DeformGradOverVolumeRefTenDef}{\FuncDef{\DeformGradTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\DeformGradOverCurveRefTenDef}{\FuncDef{\DeformGradTen}{\CurveRef}{\CurveCurr}} \newcommand{\StrainGreenLagrangeOverVolumeEnvRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\StrainGreenLagrangeOverVolumeRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\StrainGreenLagrangeOverCurveRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\CurveRef}{\CurveCurr}} \newcommand{\DeformCauchyGreenLeftTenDef}{\DeformCauchyGreenLeftTen \DefEq \DeformGradTen \DeformGradTen^T} \newcommand{\DeformCauchyGreenLeftDevTenDef}{\DeformCauchyGreenLeftDevTen \DefEq \DeformGradDet^{-\frac{2}{3}} \DeformCauchyGreenLeftTen} \newcommand{\StressPKOneTen}{\Mat{P}} \newcommand{\StressPKTwoComp}{S} \newcommand{\StressPKTwoTen}{\Mat{\StressPKTwoComp}} \newcommand{\StressPKTwoVoigt}{\tilde{\StressPKTwoTen}} \newcommand{\StressCauchyComp}{\sigma} \newcommand{\StressCauchyTen}{\Mat{\sigma}} \newcommand{\StressCauchyVoigt}{\tilde{\StressCauchyTen}} \newcommand{\StressCauchyMean}{p} \newcommand{\StressCauchyYield}{\StressCauchyComp_Y} \newcommand{\StressKirchhoffComp}{\tau} \newcommand{\StressKirchhoffTen}{\Mat{\tau}} \newcommand{\StressKirchhoffVoigt}{\tilde{\StressKirchhoffTen}} \newcommand{\StressKirchhoffDevComp}{s} \newcommand{\StressKirchhoffDevTen}{\Mat{\StressKirchhoffDevComp}} \newcommand{\ModuliElastRefComp}{C} \newcommand{\ModuliElastRefTen}{\Mat{\ModuliElastRefComp}} \newcommand{\ModuliElastRefVoigt}{\tilde{\ModuliElastRefTen}} \newcommand{\ModuliElastCurrComp}{c} \newcommand{\ModuliElastCurrTen}{\Mat{\ModuliElastCurrComp}} \newcommand{\ModuliElastCurrVoigt}{\tilde{\ModuliElastCurrTen}} \newcommand{\MaterialYoungsModulus}{E} \newcommand{\MaterialPoissonsRatio}{\nu} \newcommand{\MaterialMassDensity}{\rho} \newcommand{\MaterialBulkModulus}{\kappa} \newcommand{\MaterialShearModulus}{\mu} \newcommand{\MaterialShearModulusDev}{\bar{\MaterialShearModulus}} \newcommand{\MaterialThermalExpansion}{\alpha_{\text{thermal}}} \newcommand{\Area}{\SymbolArea} \newcommand{\Length}{\SymbolLength} \newcommand{\Width}{b} \newcommand{\Height}{h} \newcommand{\PenaltyStiffness}{\SymbolPenalty_{\SymbolStiffness}} \newcommand{\PenaltyDisp}{\SymbolPenalty_{\SymbolDisp}} \newcommand{\BodyForceRefComp}{\SymbolBodyForceUpper} \newcommand{\BodyForceRefTen}{\Vec{\BodyForceRefComp}} \newcommand{\BodyForceCurrComp}{\SymbolBodyForce} \newcommand{\BodyForceCurrTen}{\Vec{\BodyForceCurrComp}} \newcommand{\TracForceRefComp}{\SymbolTracForceUpper} \newcommand{\TracForceRefTen}{\Vec{\TracForceRefComp}} \newcommand{\TracForceCurrComp}{\SymbolTracForce} \newcommand{\TracForceCurrTen}{\Vec{\TracForceCurrComp}} \newcommand{\Pressure}{p} \newcommand{\BodyForceOverVolumeEnvRefTenDef}{\FuncDef{\BodyForceRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\BodyForceOverCurveRefCompDef}{\FuncDef{\BodyForceRefComp}{\CurveRef}{\Reals}} \newcommand{\BodyForceOverCurveRefTenDef}{\FuncDef{\BodyForceRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\BodyForceOverCurveCurrCompDef}{\BodyForceCurrComp \DefEq \BodyForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\BodyForceOverCurveCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverSurfaceRefTracTenDef}{\FuncDef{\TracForceRefTen}{\SurfaceRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceCurrTracTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\SurfaceDeformTracMap}} \newcommand{\TracForceOverCurveRefCompDef}{\FuncDef{\TracForceRefComp}{\PointRefTrac}{\Reals}} \newcommand{\TracForceOverCurveRefTenDef}{\FuncDef{\TracForceRefTen}{\PointRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverCurveCurrCompDef}{\TracForceCurrComp \DefEq \TracForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverCurveCurrTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\ConstraintRefTen}{\Vec{\SymbolConstraintUpper}} \newcommand{\LagrangeMultTestSpaceOverSurfaceRef}{\delta \LagrangeMultTrialSpaceOverSurfaceRef} \newcommand{\LagrangeMultTrialSpaceOverSurfaceRef}{\SpaceHilbert{L}(\SurfaceRefDisp)} \newcommand{\LagrangeMultRefComp}{\SymbolLagrangeMultRef} \newcommand{\LagrangeMultRefTen}{\Vec{\LagrangeMultRefComp}} \newcommand{\LagrangeMultCurrComp}{\SymbolLagrangeMultCurr} \newcommand{\LagrangeMultCurrTen}{\Vec{\LagrangeMultCurrComp}} \newcommand{\ConstraintOverSurfaceRefDispTenDef}{\FuncDef{\ConstraintRefTen}{\SurfaceRefDisp}{\SpatialDomain}} \newcommand{\LagrangeMultOverSurfaceCurrTenDef}{\LagrangeMultCurrTen \DefEq \LagrangeMultRefTen \circ \Inverse{\SurfaceDeformDispMap}} \newcommand{\Energy}{\SymbolEnergy} \newcommand{\EnergyElastic}[1]{\QFO{\Energy}{#1}} \newcommand{\EnergyElasticNoArg}{\QFONA{\Energy}} \newcommand{\EnergyEnv}{\SymbolEnvModifier{\Energy}} \newcommand{\EnergyInside}{\Energy^{\SymbolInside}} \newcommand{\EnergyOutside}{\Energy^{\SymbolOutside}} \newcommand{\EnergyConstraint}{\Energy^{\LagrangeMultCurrComp}} \newcommand{\EnergyDensityStrain}{\SymbolEnergyDensityStrain} \newcommand{\EnergyDensityStrainVol}{\SymbolEnergyDensityStrainVol} \newcommand{\EnergyDensityStrainDev}{\bar{\SymbolEnergyDensityStrain}} \newcommand{\EnergyInsideOverVolumeEnvRefDef}{\FuncDef{\EnergyInside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyOutsideOverVolumeEnvRefDef}{\FuncDef{\EnergyOutside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefDef}{\FuncDef{\EnergyConstraint}{\DispTrialSpaceOverVolumeEnvRef\TensorProduct\LagrangeMultTrialSpaceOverSurfaceRef}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefDef}{\FuncDef{\EnergyDensityStrain}{\VolumeEnvRef}{\Reals}} \newcommand{\ResidualComp}{\SymbolResidual} \newcommand{\ResidualVec}{\Vec{\ResidualComp}} \newcommand{\ForceVec}{\Vec{\SymbolForce}} \newcommand{\ForceInternalVec}{\ForceVec^{int}} \newcommand{\ForceExternalVec}{\ForceVec^{ext}} \newcommand{\ForceConstraintPenaltyVec}{\ForceVec^{\PenaltyDisp}} \newcommand{\ForceConstraintLagrangeVec}{\ForceVec^{\lambda1}} \newcommand{\ForceConstraintVec}{\ForceVec^{\lambda2}} \newcommand{\StiffnessMat}{\Mat{\SymbolStiffness}} \newcommand{\StiffnessMaterialMat}{\StiffnessMat^{m}} \newcommand{\StiffnessGeometricMat}{\StiffnessMat^{g}} \newcommand{\StiffnessPenaltyMat}{\StiffnessMat^{\PenaltyDisp}} \newcommand{\StiffnessLagrangeMat}{\StiffnessMat^{\LagrangeMultCurrComp}} \newcommand{\MassMat}{\Mat{\SymbolMass}} \newcommand{\LumpedMassMat}{\tilde{\MassMat}} \newcommand{\SolutionComp}{\SymbolSolution} \newcommand{\Solution}{\Vec{\SymbolSolution}} \newcommand{\SolutionDisp}{\Solution^{\DispFieldCurrComp}} \newcommand{\SolutionLagrange}{\Solution^{\LagrangeMultCurrComp}} \newcommand{\Flex}[1]{\mathcal{F}_{#1}} \newcommand{\FlexIt}{\mathcal{F}} \newcommand{\FlexFEA}{\Flex{\bar{0}}} \newcommand{\FlexFEAModified}{\Flex{0}} \newcommand{\FlexOne}{\Flex{1}} \newcommand{\FlexImmersed}{\Flex{\infty}} \newcommand{\FlexInfty}{\mathcal{F}{\infty}} \newcommand{\FlexSpectrum}{\overleftrightarrow{\mathcal{F}}} \newcommand{\FlexSpectrumId}{i} \newcommand{\TimeStep}{\Delta \SymbolTime} \newcommand{\SpectralRadius}{\rho_{\infty}}$$\newcommand{\SymbolPressureContact}{p} \newcommand{\SymbolContactGap}{g} \newcommand{\NumUsplineBasisFuncsS}{\Size{\UsplineBasisFuncSetOnMeshUspline^s}} \newcommand{\NumUsplineBasisFuncsM}{\Size{\UsplineBasisFuncSetOnMeshUspline^m}} \newcommand{\NumUsplineBasisFuncsG}{\Size{\UsplineBasisFuncSetOnMeshUspline^\alpha}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactS}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactS}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactM}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactM}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactG}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactG}}} \newcommand{\ParamDomainEnvS}{\ParamDomainEnv^{s}} \newcommand{\ParamDomainEnvM}{\ParamDomainEnv^{m}} \newcommand{\ParamDomainEnvG}{\ParamDomainEnv^{\alpha}} \newcommand{\ParamDomainS}{\ParamDomain^{s}} \newcommand{\ParamDomainM}{\ParamDomain^{m}} \newcommand{\ParamDomainG}{\ParamDomain^\alpha} \newcommand{\ParamDomainClosureS}{\overline{\ParamDomain}^s} \newcommand{\ParamDomainClosureM}{\overline{\ParamDomain}^m} \newcommand{\ParamDomainClosureG}{\overline{\ParamDomain}^\alpha} \newcommand{\ParamDomainBdryG}{\ParamDomainBdry^\alpha} \newcommand{\ParamDomainBdryContactS}{\ParamDomainBdry^{c,s}} \newcommand{\ParamDomainBdryContactM}{\ParamDomainBdry^{c,m}} \newcommand{\ParamDomainBdryContactG}{\ParamDomainBdry^{c,\alpha}} \newcommand{\ParamDomainBdryTangentComp}{A} \newcommand{\ParamDomainBdryTangentTen}{\Mat{\ParamDomainBdryTangentComp}} \newcommand{\ParamDetJacobianS}{j^s} \newcommand{\ParamDomainGCoordVec}{\ParamCoordVecSimple^{\ParamDomainG}} \newcommand{\ParamDomainGCoord}{\ParamCoordSimple^{\ParamDomainG}} \newcommand{\ParamDomainEnvGCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvGCoord}{\ParamCoordSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvSCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvSCoord}{\ParamCoordSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvMCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainEnvMCoord}{\ParamCoordSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainBdryContactGCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactGCoord}{\ParamCoordSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactSCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactSCoord}{\ParamCoordSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactMCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactM}} \newcommand{\ParamDomainBdryContactMCoord}{\ParamCoordSimple^{\ParamDomainBdryContactM}} \newcommand{\SegmentParamDomainOfVolumeEnvRefS}{\QuantityRelatedTo{\ParamDomainEnvS}{\SegmentOfVolumeEnvRefS}} \newcommand{\SegmentParamDomainOfVolumeEnvRefM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvRefM}} \newcommand{\SegmentParamDomainOfVolumeEnvCurrM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvCurrM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactS}{\QuantityRelatedTo{\ParamDomainBdryContactS}{\SegmentOfSurfaceCurrContactS}} \newcommand{\SegmentParamDomainOfSurfaceRefContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceRefContactM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceCurrContactM}} \newcommand{\UsplineBasisFuncS}{\UsplineBasisFunc^{s}} \newcommand{\UsplineBasisFuncM}{\UsplineBasisFunc^{m}} \newcommand{\UsplineBasisFuncG}{\UsplineBasisFunc^{\alpha}} \newcommand{\UsplineBasisFuncParamDomainBdryContactS}{\UsplineBasisFunc^{\ParamDomainBdryContactS}} \newcommand{\UsplineBasisFuncParamDomainBdryContactM}{\UsplineBasisFunc^{\ParamDomainBdryContactM}} \newcommand{\UsplineBasisFuncParamDomainBdryContactG}{\UsplineBasisFunc^{\ParamDomainBdryContactG}} \newcommand{\UsplineBasisSymmSecondOrderComp}{S} \newcommand{\UsplineBasisSymmSecondOrderTen}{\Mat{\UsplineBasisSymmSecondOrderComp}} \newcommand{\UsplineBasisSymmFourthOrderComp}{E} \newcommand{\UsplineBasisSymmSixthOrderComp}{Z} \newcommand{\VolumeEnvRefG}{\VolumeEnvRef^{\alpha}} \newcommand{\VolumeEnvRefS}{\VolumeEnvRef^{s}} \newcommand{\VolumeEnvRefM}{\VolumeEnvRef^{m}} \newcommand{\VolumeRefG}{\VolumeRef^{\alpha}} \newcommand{\VolumeRefS}{\VolumeRef^{s}} \newcommand{\VolumeRefM}{\VolumeRef^{m}} \newcommand{\VolumeRefClosureG}{\VolumeRefClosure^\alpha} \newcommand{\VolumeRefClosureS}{\VolumeRefClosure^s} \newcommand{\VolumeRefClosureM}{\VolumeRefClosure^m} \newcommand{\SurfaceRefG}{\SurfaceRef^\alpha} \newcommand{\SurfaceRefS}{\SurfaceRef^s} \newcommand{\SurfaceRefM}{\SurfaceRef^m} \newcommand{\SurfaceRefTracG}{\SurfaceRef^{\SymbolTracForce,\alpha}} \newcommand{\SurfaceRefDispG}{\SurfaceRef^{\SymbolDisp,\alpha}} \newcommand{\SurfaceRefContactG}{\SurfaceRef^{c,\alpha}} \newcommand{\SurfaceRefContactS}{\SurfaceRef^{c,s}} \newcommand{\SurfaceRefContactM}{\SurfaceRef^{c,m}} \newcommand{\VolumeEnvRefSCoordVec}{\RefCoordVec{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMCoordVec}{\RefCoordVec{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGCoordVec}{\RefCoordVec{\VolumeEnvRefG}} \newcommand{\VolumeRefGCoordVec}{\RefCoordVec{\VolumeRefG}} \newcommand{\SurfaceRefContactSCoord}{\RefCoord{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactSCoordVec}{\RefCoordVec{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMCoord}{\RefCoord{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactMCoordVec}{\RefCoordVec{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGCoord}{\RefCoord{\SurfaceRefContactG}} \newcommand{\SurfaceRefContactGCoordVec}{\RefCoordVec{\SurfaceRefContactG}} \newcommand{\SurfaceRefDispGCoordVec}{\RefCoordVec{\SurfaceRefDispG}} \newcommand{\SegmentOfVolumeEnvRefS}{\Segment{\VolumeEnvRefS}} \newcommand{\SegmentOfVolumeEnvRefM}{\Segment{\VolumeEnvRefM}} \newcommand{\SegmentOfSurfaceRefContactS}{\Segment{\SurfaceRefContactS}} \newcommand{\SegmentOfSurfaceRefContactM}{\Segment{\SurfaceRefContactM}} \newcommand{\VolumeEnvCurrG}{\VolumeEnvCurr^{\alpha}} \newcommand{\VolumeEnvCurrS}{\VolumeEnvCurr^{s}} \newcommand{\VolumeEnvCurrM}{\VolumeEnvCurr^{m}} \newcommand{\VolumeCurrG}{\VolumeCurr^{\alpha}} \newcommand{\VolumeCurrS}{\VolumeCurr^{s}} \newcommand{\VolumeCurrM}{\VolumeCurr^{m}} \newcommand{\VolumeCurrClosureG}{\VolumeCurrClosure^\alpha} \newcommand{\VolumeCurrClosureS}{\VolumeCurrClosure^s} \newcommand{\VolumeCurrClosureM}{\VolumeCurrClosure^m} \newcommand{\SurfaceCurrG}{\SurfaceCurr^\alpha} \newcommand{\SurfaceCurrS}{\SurfaceCurr^s} \newcommand{\SurfaceCurrM}{\SurfaceCurr^m} \newcommand{\SurfaceCurrContact}{\SurfaceCurr^{c}} \newcommand{\SurfaceCurrContactG}{\SurfaceCurr^{c,\alpha}} \newcommand{\SurfaceCurrContactS}{\SurfaceCurr^{c,s}} \newcommand{\SurfaceCurrContactM}{\SurfaceCurr^{c,m}} \newcommand{\VolumeEnvCurrSCoordVec}{\CurrCoordVec{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMCoordVec}{\CurrCoordVec{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGCoordVec}{\CurrCoordVec{\VolumeEnvCurrG}} \newcommand{\VolumeCurrGCoordVec}{\CurrCoordVec{\VolumeCurrG}} \newcommand{\SurfaceCurrContactSCoord}{\CurrCoord{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactSCoordVec}{\CurrCoordVec{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMCoord}{\CurrCoord{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactMCoordVec}{\CurrCoordVec{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGCoord}{\CurrCoord{\SurfaceCurrContactG}} \newcommand{\SurfaceCurrContactGCoordVec}{\CurrCoordVec{\SurfaceCurrContactG}} \newcommand{\SegmentOfVolumeEnvCurrS}{\Segment{\VolumeEnvCurrS}} \newcommand{\SegmentOfVolumeEnvCurrM}{\Segment{\VolumeEnvCurrM}} \newcommand{\SegmentOfSurfaceCurrContactS}{\Segment{\SurfaceCurrContactS}} \newcommand{\SegmentOfSurfaceCurrContactM}{\Segment{\SurfaceCurrContactM}} \newcommand{\VolumeEnvRefSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeEnvRefSMapInv}{\Inverse{\VolumeEnvRefSMap}} \newcommand{\VolumeEnvRefMMapInv}{\Inverse{\VolumeEnvRefMMap}} \newcommand{\VolumeEnvRefGMapInv}{\Inverse{\VolumeEnvRefGMap}} \newcommand{\VolumeRefClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeRefClosureS}} \newcommand{\VolumeRefClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}} \newcommand{\VolumeRefClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\VolumeRefSMap}{\ManifoldMap{\ParamDomainS}{\VolumeRefS}} \newcommand{\VolumeRefMMap}{\ManifoldMap{\ParamDomainM}{\VolumeRefM}} \newcommand{\VolumeRefGMap}{\ManifoldMap{\ParamDomainG}{\VolumeRefG}} \newcommand{\VolumeRefClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\VolumeRefClosureMMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}\Big|_{\ParamDomainBdryContactM}} \newcommand{\SurfaceRefContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvRefGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeRefClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\SurfaceRefContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvCurrSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeCurrClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeCurrClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeCurrSMap}{\ManifoldMap{\ParamDomainS}{\VolumeCurrS}} \newcommand{\VolumeCurrMMap}{\ManifoldMap{\ParamDomainM}{\VolumeCurrM}} \newcommand{\VolumeCurrGMap}{\ManifoldMap{\ParamDomainG}{\VolumeCurrG}} \newcommand{\VolumeCurrClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\SurfaceCurrContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvCurrGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\SurfaceCurrContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvDeformSMap}{\ManifoldMap{\VolumeEnvRefS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvDeformMMap}{\ManifoldMap{\VolumeEnvRefM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvDeformGMap}{\ManifoldMap{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformSMap}{\ManifoldMap{\VolumeRefClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeDeformMMap}{\ManifoldMap{\VolumeRefClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeDeformGMap}{\ManifoldMap{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeEnvDeformGMapDef}{\ManifoldMapDef{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformGMapDef}{\ManifoldMapDef{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\DispTrialSpaceOverVolumeEnvRefS}{\SpaceHilbert{U}(\VolumeEnvRefS)} \newcommand{\DispTrialSpaceOverVolumeEnvRefM}{\SpaceHilbert{U}(\VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefSAndM}{\SpaceHilbert{U}(\VolumeEnvRefS, \VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefG}{\SpaceHilbert{U}(\VolumeEnvRefG)} \newcommand{\DispTrialSpaceOverVolumeRefS}{\SpaceHilbert{U}(\VolumeRefClosureS)} \newcommand{\DispTrialSpaceOverVolumeRefM}{\SpaceHilbert{U}(\VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefSAndM}{\SpaceHilbert{U}(\VolumeRefClosureS, \VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefG}{\SpaceHilbert{U}(\VolumeRefClosureG)} \newcommand{\DispTestSpaceOverVolumeEnvRefG}{\delta \DispTrialSpaceOverVolumeEnvRefG} \newcommand{\DispTestSpaceOverVolumeRefG}{\delta \DispTrialSpaceOverVolumeRefG} \newcommand{\DispFieldRefSComp}{\DispFieldRefComp^s} \newcommand{\DispFieldRefSTen}{\DispFieldRefTen^s} \newcommand{\DispFieldRefMComp}{\DispFieldRefComp^m} \newcommand{\DispFieldRefMTen}{\DispFieldRefTen^m} \newcommand{\DispFieldRefGTen}{\DispFieldRefTen^\alpha} \newcommand{\DispFieldDiscreteRefGTen}{\DispFieldRefTen^{h,\alpha}} \newcommand{\DispFieldOverVolumeEnvRefGTenDef}{\ManifoldMapDef{\VolumeEnvRefG}{\DispFieldRefGTen}} \newcommand{\DispFieldOverVolumeRefGTenDef}{\ManifoldMapDef{\VolumeRefClosureG}{\DispFieldRefGTen}} \newcommand{\GradVolumeRefG}[1]{\Grad{\RefCoordVec{\VolumeRefClosureG}}{#1}} \newcommand{\GradVolumeEnvRefS}[1]{\Grad{\VolumeEnvRefSCoordVec}{#1}} \newcommand{\GradVolumeEnvRefM}[1]{\Grad{\VolumeEnvRefMCoordVec}{#1}} \newcommand{\GradVolumeEnvRefG}[1]{\Grad{\VolumeEnvRefGCoordVec}{#1}} \newcommand{\DeformGradSComp}{\DeformGradComp^s} \newcommand{\DeformGradSTen}{\DeformGradTen^s} \newcommand{\DeformGradSDet}{\Det{\DeformGradSTen}} \newcommand{\DeformGradSInvTrans}{\InvTrans{\DeformGradSTen}} \newcommand{\DeformGradMComp}{\DeformGradComp^m} \newcommand{\DeformGradMTen}{\DeformGradTen^m} \newcommand{\DeformGradMDet}{\Det{\DeformGradMTen}} \newcommand{\DeformGradMInvTrans}{\InvTrans{\DeformGradMTen}} \newcommand{\DeformGradGTen}{\DeformGradTen^\alpha} \newcommand{\DeformGradOverVolumeEnvRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\DeformGradOverVolumeRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\UnitNormalRefSTen}{\UnitNormalRefTen^s} \newcommand{\UnitNormalRefMTen}{\UnitNormalRefTen^m} \newcommand{\UnitNormalCurrSComp}{\UnitNormalCurrComp^s} \newcommand{\UnitNormalCurrSTen}{\UnitNormalCurrTen^s} \newcommand{\UnitNormalCurrMComp}{\UnitNormalCurrComp^m} \newcommand{\UnitNormalCurrMTen}{\UnitNormalCurrTen^m} \newcommand{\AreaRatioS}{r^s} \newcommand{\AreaRatioM}{r^m} \newcommand{\ContraMTen}{\Mat{a}^m} \newcommand{\SymmProdInProjTan}{C} \newcommand{\ProdPBTanInvCurPBTanInv}{D} \newcommand{\ProdPBTanInvCurMetricInv}{M} \newcommand{\ProdPBTanInvCurMetricInvCurPBTanInv}{W} \newcommand{\PenaltyContactGap}{\SymbolPenalty_{\SymbolContactGap}} \newcommand{\BodyForceRefGTen}{\BodyForceRefTen^\alpha} \newcommand{\TracForceRefGTen}{\TracForceRefTen^\alpha} \newcommand{\BodyForceOverVolumeRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeRefG}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeEnvRefG}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceRefTracGTenDef}{\FuncDef{\TracForceRefGTen}{\SurfaceRefTracG}{\SpatialDomain}} \newcommand{\PressureContact}{\SymbolPressureContact} \newcommand{\PressureContactProjected}{\overline{\SymbolPressureContact}_{\UsplineBasisFuncId}} \newcommand{\CoeffPressureContact}{\SymbolPressureContact_{\UsplineBasisFuncId}} \newcommand{\PressureContactInterpolated}{\hat{\SymbolPressureContact}} \newcommand{\ConstraintRefGTen}{\ConstraintRefTen^\alpha} \newcommand{\GapContact}{\SymbolContactGap} \newcommand{\GapContactProjected}{\overline{\SymbolContactGap}_{\UsplineBasisFuncId}} \newcommand{\GapContactProjectedVariation}{\delta \GapContactProjected} \newcommand{\GapContactMortar}{\GapContact^{m}} \newcommand{\GapContactMortarProjected}{\overline{\GapContact}^{m}_{\UsplineBasisFuncId}} \newcommand{\CoeffGapContactMortar}{\GapContact^{m}_{\UsplineBasisFuncId}} \newcommand{\ConstraintOverSurfaceRefDispGTenDef}{\FuncDef{\ConstraintRefGTen}{\SurfaceRefDispG}{\SpatialDomain}} \newcommand{\EnergyEnvG}{\EnergyEnv^\alpha} \newcommand{\EnergyG}{\Energy^{\alpha}} \newcommand{\EnergyDensityStrainG}{\EnergyDensityStrain^\alpha} \newcommand{\EnergyConstraintG}{\Energy^{\SymbolDisp,\alpha}} \newcommand{\EnergyContact}{\Energy^c} \newcommand{\EnergyOverVolumeRefGDef}{\FuncDef{\EnergyG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyEnvOverVolumeEnvRefGDef}{\FuncDef{\EnergyEnvG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeEnvRefG}{\Reals}} \newcommand{\EnergyContactOverVolumeRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeRefSAndM}{\Reals}} \newcommand{\EnergyContactOverVolumeEnvRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeEnvRefSAndM}{\Reals}} \newcommand{\EnergyConstraintOverVolumeRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\ResidualMat}{\Mat{N}} \newcommand{\ForceInternalContactVec}{\ForceVec^{c,int,n}} \newcommand{\ForceGapContact}{C^n} \newcommand{\StiffnessMatA}{\hat{\Mat{N}}} \newcommand{\StiffnessMatB}{\Mat{T}} \newcommand{\StiffnessMatC}{\Mat{D}} \newcommand{\StiffnessGeometricContact}{\StiffnessMat^{c,g,n}} \newcommand{\StiffnessContact}{\StiffnessMat^{c,n}} \newcommand{\ElemCount}[1]{\operatorname{count}{(#1)}} \newcommand{\ConvexHull}[1]{\operatorname{ch}{\left(#1\right)}} \newcommand{\Normal}[1]{\operatorname{N}{\left(#1\right)}} \newcommand{\NormalConvexHull}[1]{\Normal{\ConvexHull{#1}}} \newcommand{\DiscretePointSetS}{\Set{SP}} \newcommand{\DiscreteElemSetM}{\Set{ME}} \newcommand{\EnvBoundConMapM}{\operatorname{mc}} \newcommand{\EnvBoundConSetM}{\Set{MC}} \newcommand{\SpatialCoordVecToSegmentSetMapMSensor}{\operatorname{cs}} \newcommand{\SpatialCoordVecToSegmentSetMapMElem}{\operatorname{ce}} \newcommand{\SelfContactMap}{\operatorname{sc}} \newcommand{\ColSetS}{\Set{I}} \newcommand{\PairEnvMapBoundM}{\operatorname{cp}} \newcommand{\ApproximateProjectionCollision}[1]{\widetilde{\Projection}{#1}} \newcommand{\ImageSlaveEnv}{\bar{\ParamCoordVecSimple}^{\ParamDomainEnvM}} \newcommand{\ImageSlaveBound}{\bar{\ParamCoordVecSimple}^{\ParamDomainBdryContactM}} \newcommand{\ActiveSet}{\Set{A}} \newcommand{\DiscretePointSetM}{\Set{MP}} \newcommand{\MortarActiveSet}{\Set{A}^m} \newcommand{\PressureContactAnalytical}{p_a} \newcommand{\TipPressureContactAnalytical}{p_0} \newcommand{\ContactHalfWidth}{b}$$\newcommand{\MidGeometryModifier}[1]{\bar{#1}} \newcommand{\SymbolRotationGlobal}{\omega} \newcommand{\SkewMat}[1]{\Mat{s} \left( #1 \right)} \newcommand{\SkewMatInv}[1]{\Mat{s}^{-1} \left( #1 \right)} \newcommand{\Ident}{\Mat{I}} \newcommand{\Cartesian}{\Vec{e}} \newcommand{\ManifoldDim}{n} \newcommand{\LaminaSymbol}{l} \newcommand{\LaminaSymbolUpper}{L} \newcommand{\LaminaMetricSymbol}{j} \newcommand{\ShellMomentSymbol}{q} \newcommand{\DirectorBilinearFunc}[3]{\left(#2,#3\right)_{#1}} \newcommand{\RotObjectiveFunc}{s} \newcommand{\ParamConfig}{\Omega_\xi} \newcommand{\ParamConfigMid}{\Omega_\xi^m} \newcommand{\ParamConfigSec}{\Omega_\xi^s} \newcommand{\ParamConfigBound}{\Gamma_\xi} \newcommand{\ParamConfigMidBound}{\Gamma_\xi^m} \newcommand{\ParamConfigSecBound}{\Gamma_\xi^s} \newcommand{\ParamConfigMuBound}{\Gamma_\xi^\mu} \newcommand{\ParamConfigSigBound}{\Gamma_\xi^\sigma} \newcommand{\ParamConfigDirichMidBound}{\Gamma_\xi^g} \newcommand{\ParamConfigNeuMidBound}{\Gamma_\xi^h} \newcommand{\ParamConfigDirichBound}{\Gamma_\xi^\gamma} \newcommand{\ParamConfigNeuBound}{\Gamma_\xi^\eta} \newcommand{\ParaParam}[1]{\xi_{#1}} \newcommand{\ParaParamVec}{\boldsymbol{\xi}} \newcommand{\RefConfig}{\Omega_0} \newcommand{\RefConfigMid}{\Omega_0^m} \newcommand{\RefConfigSec}{\Omega_0^s} \newcommand{\SurfaceRefRot}{\SurfaceRef^{\SymbolRotationGlobal}} \newcommand{\RefConfigBound}{\Gamma_0} \newcommand{\RefConfigMidBound}{\Gamma_0^m} \newcommand{\RefConfigSecBound}{\Gamma_0^s} \newcommand{\RefConfigMuBound}{\Gamma_0^\mu} \newcommand{\RefConfigSigBound}{\Gamma_0^\sigma} \newcommand{\RefConfigDirichMidBound}{\Gamma_0^g} \newcommand{\RefConfigNeuMidBound}{\Gamma_0^h} \newcommand{\RefConfigDirichBound}{\Gamma_0^\gamma} \newcommand{\RefConfigNeuBound}{\Gamma_0^\eta} \newcommand{\RefMap}{\Vec{X}} \newcommand{\RefMid}{\MidGeometryModifier{\Vec{X}}} \newcommand{\RefDir}{\Vec{D}} \newcommand{\RefSectionPos}{\Vec{R}} \newcommand{\RefCovar}[1]{\Vec{G}_{#1}} \newcommand{\RefMidCovar}[1]{\MidGeometryModifier{\Vec{G}}_{#1}} \newcommand{\RefContra}[1]{\Vec{G}^{#1}} \newcommand{\RefMidContra}[1]{\MidGeometryModifier{\Vec{G}}^{#1}} \newcommand{\RefLamina}[1]{\Vec{L}_{#1}} \newcommand{\RefLaminaDual}[1]{\Vec{\LaminaSymbolUpper}^{#1}} \newcommand{\RefShellProjectedBasis}[1]{\Vec{P}_{#1}} \newcommand{\CurConfig}{\Omega} \newcommand{\CurConfigMid}{\Omega^m} \newcommand{\CurConfigSec}{\Omega^s} \newcommand{\CurConfigBound}{\Gamma} \newcommand{\CurConfigMidBound}{\Gamma^m} \newcommand{\CurConfigSecBound}{\Gamma^s} \newcommand{\CurConfigMuBound}{\Gamma^\mu} \newcommand{\CurConfigSigBound}{\Gamma^\sigma} \newcommand{\CurConfigDirichMidBound}{\Gamma^g} \newcommand{\CurConfigNeuMidBound}{\Gamma^h} \newcommand{\CurConfigDirichBound}{\Gamma^\gamma} \newcommand{\CurConfigNeuBound}{\Gamma^\eta} \newcommand{\CurMap}{\Vec{x}} \newcommand{\CurMid}{\MidGeometryModifier{\Vec{x}}} \newcommand{\CurDir}{\Vec{d}} \newcommand{\CurSectionPos}{\Vec{r}} \newcommand{\CurCovar}[1]{\Vec{g}_{#1}} \newcommand{\CurMidCovar}[1]{\MidGeometryModifier{\Vec{g}}_{#1}} \newcommand{\CurContra}[1]{\Vec{g}^{#1}} \newcommand{\CurMidContra}[1]{\MidGeometryModifier{\Vec{g}}^{#1}} \newcommand{\CurLamina}[1]{\Vec{\LaminaSymbol}_{#1}} \newcommand{\CurLaminaDual}[1]{\Vec{\LaminaSymbol}^{#1}} \newcommand{\CurModLamina}[1]{\hat{\Vec{\LaminaSymbol}}_{#1}} \newcommand{\CurModLaminaDual}[1]{\hat{\Vec{\LaminaSymbol}}^{#1}} \newcommand{\CurShellProjectedBasis}[1]{\Vec{p}_{#1}} \newcommand{\DeformMap}{\varphi} \newcommand{\DeformMapMid}{\varphi^m} \newcommand{\Disp}{\Vec{u}} \newcommand{\DispMid}{\MidGeometryModifier{\Vec{u}}} \newcommand{\RotVec}{\boldsymbol{\omega}} \newcommand{\RotMat}{\boldsymbol{\Lambda}} \newcommand{\RotMatMembrane}{\Mat{\Psi}} \newcommand{\RotMatDelta}{\boldsymbol{\Lambda}_\Delta} \newcommand{\IncRotMat}{\Delta\RotMat} \newcommand{\EulerVec}{\boldsymbol{\vartheta}} \newcommand{\EulerVecNorm}{\theta} \newcommand{\EulerVecSinc}{\boldsymbol{\Theta}} \newcommand{\EulerRotVec}{\boldsymbol{\theta}} \newcommand{\EulerRotAngle}{\theta} \newcommand{\IncEulerRotVec}{\Delta\boldsymbol{\theta}} \newcommand{\AngularVelocity}{\boldsymbol{\eta}} \newcommand{\IncEulerRotVecVel}{\Delta\dot{\boldsymbol{\theta}}} \newcommand{\AngularAcceleration}{\boldsymbol{\alpha}} \newcommand{\IncEulerRotVecAcc}{\Delta\ddot{\boldsymbol{\theta}}} \newcommand{\DeformGrad}{\Mat{F}} \newcommand{\Strain}[1]{\boldsymbol{\tau}_{#1}} \newcommand{\StrainMid}[1]{\boldsymbol{\varepsilon}_{#1}} \newcommand{\StrainCurve}[1]{\boldsymbol{\kappa}_{#1}} \newcommand{\DecompDeform}{\Mat{U}} \newcommand{\ExtraDeformTen}{\Delta\DeformGradTen} \newcommand{\ExtraDeformComp}{\Delta\DeformGradComp} \newcommand{\GreenLagrange}{\Mat{E}} \newcommand{\ShellStrainCurve}[1]{\boldsymbol{\chi}_{#1}} \newcommand{\SecPK}{\Mat{S}} \newcommand{\FirstPK}{\Mat{P}} \newcommand{\Cauchy}{\boldsymbol{\sigma}} \newcommand{\IntTrac}[1]{\Vec{t}_{#1}} \newcommand{\RefModuli}{\Mat{C}} \newcommand{\CurModuli}{\Mat{c}} \newcommand{\PointModuli}{\Mat{m}} \newcommand{\ResModuli}{\Mat{M}} \newcommand{\RefAreaVec}[1]{\Vec{A}_{#1}} \newcommand{\RefAreaMidVec}[1]{\MidGeometryModifier{\Vec{A}}_{#1}} \newcommand{\RefMeas}{G} \newcommand{\UnitNormalRefVec}[1]{\Vec{N}_{#1}} \newcommand{\CurAreaVec}[1]{\Vec{a}_{#1}} \newcommand{\CurAreaMidVec}[1]{\MidGeometryModifier{\Vec{a}}_{#1}} \newcommand{\CurMeas}{g} \newcommand{\UnitNormalCurrVec}[1]{\Vec{n}_{#1}} \newcommand{\CurLaminaMetricTen}{\Mat{\LaminaMetricSymbol}} \newcommand{\CurLaminaMetricComp}{\LaminaMetricSymbol} \newcommand{\CurToModLaminaTransComp}{M} \newcommand{\IntForce}{\Vec{f}^{\, int}} \newcommand{\IntMoment}{\Vec{m}^{int}} \newcommand{\ExtForceBody}{\Vec{f}^{\, ext}_b} \newcommand{\ExtMomentBody}{\Vec{m}^{ext}_b} \newcommand{\ShellExtMomentBody}{\Vec{\ShellMomentSymbol}^{ext}_b} \newcommand{\ExtForceTrac}{\Vec{f}^{\, ext}_h} \newcommand{\ExtMomentTrac}{\Vec{m}^{ext}_h} \newcommand{\ShellExtMomentTrac}{\Vec{\ShellMomentSymbol}^{ext}_h} \newcommand{\MassForce}{\Vec{f}^{\,\rho}} \newcommand{\MassMoment}{\Vec{m}^{\rho}} \newcommand{\ShellMassMoment}{\Vec{\ShellMomentSymbol}^{\rho}} \newcommand{\ResidualInternal}{\Vec{R}^{int}} \newcommand{\ResidualExternal}{\Vec{R}^{ext}} \newcommand{\ResidualMass}{\Mat{R}^{\rho}} \newcommand{\NodalMass}[1]{\Mat{M}_{#1}} \newcommand{\NodalLinearInertia}[1]{A_{#1}} \newcommand{\NodalAngularInertia}[1]{I_{#1}} \newcommand{\ShellDeltaAngle}{\phi} \newcommand{\BStrainMatrix}[2]{\Mat{B}_{#1#2}} \newcommand{\ShellDrillingStiffness}{k} \newcommand{\DrillConstraint}{C} \newcommand{\IntForceDrilling}{\Vec{f}^{d}} \newcommand{\ModuliDrilling}{\Mat{M}^d} \newcommand{\ResidualDrilling}{\Vec{R}^d} \newcommand{\SymbolTop}{top} \newcommand{\SymbolCentroid}{c} \newcommand{\SymbolLeverArm}{r} \newcommand{\SpatialCoordVecCentroid}{\SpatialCoordVec^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidX}{\SpatialCoordX^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidY}{\SpatialCoordY^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidZ}{\SpatialCoordZ^{\SymbolCentroid}} \newcommand{\LeverArm}{\Vec{\SymbolLeverArm}} \newcommand{\LeverArmX}{\SymbolLeverArm_{\SpatialCoordX}} \newcommand{\LeverArmY}{\SymbolLeverArm_{\SpatialCoordY}} \newcommand{\LeverArmZ}{\SymbolLeverArm_{\SpatialCoordZ}} \newcommand{\MomentFirstMass}{Q} \newcommand{\MomentSecondMass}{I} \newcommand{\MomentSecondMassDetailed}[1]{I_{#1}} \newcommand{\DistributedLoad}{q} \newcommand{\TracForceCurrCompX}{\TracForceCurrComp_{\SpatialCoordX}} \newcommand{\TracForceCurrCompY}{\TracForceCurrComp_{\SpatialCoordY}} \newcommand{\TracForceCurrCompZ}{\TracForceCurrComp_{\SpatialCoordZ}} \newcommand{\TracMomentCurrCompDetailed}[1]{\TracMomentCurrComp_{#1}} \newcommand{\TracForceCurrCompSupportReaction}{r^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompSupportReactionDetailed}[1]{\TracForceCurrCompSupportReaction_{#1}} \newcommand{\TracForceCurrCompDistributedLoad}{\DistributedLoad^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompPointLoad}{p^{\TracForceCurrComp}} \newcommand{\TracMomentCurrVec}{\Vec{\TracMomentCurrComp}} \newcommand{\TracMomentCurrComp}{m} \newcommand{\BodyForceCurrCompX}{\BodyForceCurrComp_{\SpatialCoordX}} \newcommand{\BodyForceCurrCompY}{\BodyForceCurrComp_{\SpatialCoordY}} \newcommand{\BodyForceCurrCompZ}{\BodyForceCurrComp_{\SpatialCoordZ}} \newcommand{\BodyForceCurrCompDistributedLoad}{\DistributedLoad^{\BodyForceCurrComp}} \newcommand{\BodyForceCurrCompAxialLoad}{f^{\BodyForceCurrComp}} \newcommand{\StressCauchyTractionVec}{\Vec{t}} \newcommand{\StressCauchyTractionX}{t_{\SpatialCoordX}} \newcommand{\StressCauchyTractionY}{t_{\SpatialCoordY}} \newcommand{\StressCauchyTractionZ}{t_{\SpatialCoordZ}} \newcommand{\StressCauchyNormal}{\sigma} \newcommand{\StressCauchyNormalDetailed}[1]{\StressCauchyNormal_{#1}} \newcommand{\StressCauchyNormalXX}{\StressCauchyComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StressCauchyNormalYY}{\StressCauchyComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StressCauchyNormalZZ}{\StressCauchyComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StressCauchyShear}{\tau} \newcommand{\StressCauchyShearDetailed}[1]{\StressCauchyShear_{#1}} \newcommand{\StressCauchyShearXY}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StressCauchyShearYX}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordX}} \newcommand{\StressCauchyShearXZ}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StressCauchyShearZX}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordX}} \newcommand{\StressCauchyShearYZ}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\StressCauchyShearZY}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordY}} \newcommand{\StressCauchyResultantForce}{F} \newcommand{\StressCauchyResultantForceDetailed}[1]{F_{#1}} \newcommand{\StressCauchyResultantForceVec}{\Vec{\StressCauchyResultantForce}} \newcommand{\StressCauchyResultantMoment}{M} \newcommand{\StressCauchyResultantMomentDetailed}[1]{M_{#1}} \newcommand{\StressCauchyResultantMomentVec}{\Vec{\StressCauchyResultantMoment}} \newcommand{\StressCauchyResultantForceShear}{V} \newcommand{\StressCauchyResultantForceShearDetailed}[1]{V_{#1}} \newcommand{\StressCauchyResultantForceAxial}{\StressCauchyResultantForce} \newcommand{\DispFieldCurrCompX}{\DispFieldCurrComp_{\SpatialCoordX}} \newcommand{\DispFieldCurrCompY}{\DispFieldCurrComp_{\SpatialCoordY}} \newcommand{\DispFieldCurrCompZ}{\DispFieldCurrComp_{\SpatialCoordZ}} \newcommand{\DispFieldMidCurrCompX}{\overline{\DispFieldCurrComp}_{\SpatialCoordX}} \newcommand{\DispFieldMidCurrCompY}{\overline{\DispFieldCurrComp}_{\SpatialCoordY}} \newcommand{\StrainSymGradCompXX}{\StrainSymGradComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StrainSymGradCompYY}{\StrainSymGradComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StrainSymGradCompZZ}{\StrainSymGradComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StrainShearComp}{\gamma} \newcommand{\StrainShearCompXY}{\StrainShearComp_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StrainShearCompXZ}{\StrainShearComp_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StrainShearCompYZ}{\StrainShearComp_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\EquationBeamShearStress}{\frac{\StressCauchyResultantForceShear \MomentFirstMass}{\MomentSecondMassDetailed{\SpatialCoordZ}\Width}} \newcommand{\EquationVecInCoords}{\Vec{v} = v_{\SpatialCoordX} \BasisVecI + v_{\SpatialCoordY} \BasisVecJ + v_{\SpatialCoordZ} \BasisVecK} \newcommand{\EquationMatVecMultiply}{\Mat{M}\Vec{v} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Vec{v}} \\ \DotProduct{\Vec{m}_2}{\Vec{v}} \\ \DotProduct{\Vec{m}_3}{\Vec{v}} \end{bmatrix}} \newcommand{\EquationMatMatMultiply}{\Mat{M}\Mat{N} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Mat{n}_1} & \DotProduct{\Vec{m}_1}{\Mat{n}_2} & \DotProduct{\Vec{m}_1}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_2}{\Mat{n}_1} & \DotProduct{\Vec{m}_2}{\Mat{n}_2} & \DotProduct{\Vec{m}_2}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_3}{\Mat{n}_1} & \DotProduct{\Vec{m}_3}{\Mat{n}_2} & \DotProduct{\Vec{m}_3}{\Mat{n}_3} \end{bmatrix}} \newcommand{\Force}{F} \newcommand{\ShearFlow}{f}$$\newcommand{\BaseSymbol}{b} \newcommand{\EmbeddedSymbol}{e} \newcommand{\RefinedSymbol}{r} \newcommand{\HierarchicalSymbol}{\textsf{H}} \newcommand{\BlockSymbol}{\textsf{B}} \newcommand{\BaseModifier}[1]{{#1}_{\BaseSymbol}} \newcommand{\EmbeddedModifier}[1]{{#1}_{\EmbeddedSymbol}} \newcommand{\RefinedModifier}[1]{{#1}_{\RefinedSymbol}} \newcommand{\HierarchicalModifier}[1]{{#1}_{\HierarchicalSymbol}} \newcommand{\BlockModifier}[1]{{#1}_{\BlockSymbol}} \newcommand{\RefinementLevelI}{i} \newcommand{\RefinementLevelJ}{j} \newcommand{\RefinementLevelK}{k} \newcommand{\HighestRefinementLevel}{N} \newcommand{\BaseParentDomain}{\BaseModifier{\ParentDomain}} \newcommand{\RefinedDomain}[1]{\ParamDomain_{#1}} \newcommand{\BaseMesh}{\BaseModifier{\MeshTopo}} \newcommand{\BaseBezierMesh}{\BaseModifier{\MeshBezier}} \newcommand{\EmbeddedMesh}{\EmbeddedModifier{\MeshTopo}} \newcommand{\RefinedMesh}{\RefinedModifier{\MeshTopo}} \newcommand{\RefinedBezierMesh}{\RefinedModifier{\MeshBezier}} \newcommand{\HierarchicalBezierMesh}{\HierarchicalModifier{\MeshBezier}} \newcommand{\HierarchicalUsplineMesh}{\HierarchicalModifier{\MeshUspline}} \newcommand{\RefinementLevelMesh}[1]{\MeshBezier_{#1}} \newcommand{\LeafElemSet}[1]{\Set{L}_{#1}} \newcommand{\ActiveElemSet}[1]{\Set{A}_{#1}} \newcommand{\ActiveBasisFuncs}[1]{\Set{UFA}_{#1}} \newcommand{\UnderRefinedBasisFuncs}[1]{\Set{UFU}_{#1}} \newcommand{\HierarchicalBasisFuncs}{\Set{UFH}} \newcommand{\TruncatedBasisFuncs}{\Set{UFT}} \newcommand{\FuncsTruncatedToLevel}[1]{\Set{TK}_{#1}} \newcommand{\FuncsTouchingActiveFuncs}[1]{\Set{T}_{#1}} \newcommand{\FuncsSubsetOfCoarserFuncs}[1]{\Set{S}_{#1}} \newcommand{\RefinementLevelBasis}[1]{\UsplineBasisFuncSetFunctionOf{\RefinementLevelMesh{#1}}} \newcommand{\RefinementLevelSpace}[1]{\QuantityRelatedTo{\UsplineSpace}{\RefinementLevelMesh{#1}}} \newcommand{\BaseAssociated}{\operatorname{\textsf{base}}} \newcommand{\BaseAssociatedFunctionOf}[1]{\QFO{\BaseAssociated}{#1}} \newcommand{\TruncationOp}[2]{\QFO{\operatorname{\textsf{trunc}}_{#1}}{#2}} \newcommand{\EmbeddedToBaseChart}{\EmbeddedModifier{\ParentDomainChart}} \newcommand{\InvEmbeddedToBaseChart}{(\EmbeddedToBaseChart)^{-1}} \newcommand{\RefinementCoefficients}{c^A_B} \newcommand{\RefinementMat}{\Mat{D}} \newcommand{\NthLevelProlongationMat}[1]{\QSB{\ProlongationMat}{#1}} \newcommand{\NthLevelActiveMat}[1]{\QSB{\Mat{A}}{#1}} \newcommand{\NthLevelRefinementMat}[1]{\QSB{\RefinementMat}{#1}} \newcommand{\NthLevelTruncationMat}[1]{\QSB{\Mat{T}}{#1}} \newcommand{\NthLevelBasisMat}[1]{\QSB{\Mat{S}}{#1}} \newcommand{\NthLevelMassMat}[1]{\QSB{\MassMat}{#1}} \newcommand{\FuncIndex}{\operatorname*{\mathsf{ID}}} \newcommand{\MultiLevelRefinementMat}[2]{\QSB{\RefinementMat}{#1 #2}} \newcommand{\BlockRefinementMat}{\BlockModifier{\RefinementMat}} \newcommand{\BlockMassMat}{\BlockModifier{\MassMat}}$

Cubit™ has several functions that are currently in development and are considered "Alpha" features. These features can be can be accessed or hidden within Cubit by typing the following command:

Set Developer Commands {On|OFF}

15.1.1Automatic Detail Suppression

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcommand{\CurveCAD}{\CurveRelatedTo{\SymbolCAD}} \newcommand{\CurveCADModified}{\CurveRelatedTo{\SymbolCADModified}} \newcommand{\CurveMesh}{\CurveRelatedTo{\Partition}} \newcommand{\CurveUspline}{\CurveRelatedTo{\MeshUspline}} \newcommand{\dCurve}{\Differential[\Curve]} \newcommand{\PointCAD}{\PointRelatedTo{\SymbolCAD}} \newcommand{\PointCADModified}{\PointRelatedTo{\SymbolCADModified}} \newcommand{\PointUspline}{\PointRelatedTo{\MeshUspline}} \newcommand{\Segment}[1]{\QuantityChildOf{#1}{\SymbolSegment}} \newcommand{\SegmentOfVolumeEnv}{\Segment{\VolumeEnv}} \newcommand{\SegmentOfSurface}{\Segment{\Surface}} \newcommand{\Hex}{\Segment{}_{h}} \newcommand{\Tet}{\Segment{}_{t}} \newcommand{\SegmentParamDomain}[1]{\QuantityRelatedTo{\ParamDomain}{#1}} \newcommand{\SegmentParamDomainOfVolumeEnv}{\QuantityRelatedTo{\ParamDomain}{\Segment{\VolumeEnv}}} \newcommand{\SegmentParamDomainOfSurface}{\QuantityRelatedTo{\ParamDomain}{\Segment{\Surface}}} \newcommand{\SegmentSet}{\SymbolSegmentSet} \newcommand{\SegmentSetFunctionOf}[1]{\QuantityFunctionOf{\SegmentSet}{#1}} \newcommand{\SegmentSetOutside}{\SegmentSet^{\SymbolOutside}} \newcommand{\SegmentSetInside}{\SegmentSet^{\SymbolInside}} \newcommand{\SegmentSetHybrid}{\SegmentSet^{\SymbolHybrid}} \newcommand{\PartitionFunctionOf}[1]{\QuantityFunctionOf{\Partition}{#1}} \newcommand{\PartitionBezierExtraction}[1]{\QuantityFunctionOf{\SymbolPartition^{B}}{#1}} \newcommand{\PartitionTessellation}[1]{\QuantityFunctionOf{\SymbolPartition^{T}}{#1}} \newcommand{\PartitionTessellationOfUspline}{\PartitionTessellation{\MeshUspline}} \newcommand{\PartitionTessellationMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldCoeff}{\SymbolManifoldCoeff} \newcommand{\ManifoldCoeffUpper}{\SymbolManifoldCoeffUpper} \newcommand{\ManifoldCoeffUspline}{\QuantityRelatedTo{\SymbolManifoldCoeffUspline}{\MeshUspline}} \newcommand{\ManifoldCoeffBernstein}{\QuantityRelatedTo{\SymbolManifoldCoeffBernstein}{\MeshBezier}} \newcommand{\ManifoldCoeffVec}{\Vec{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffSet}{\Set{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVec}{\Vec{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVecCell}{\QuantityRelatedTo{\Vec{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsVecUsplineCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsVecSubmeshCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinSegmentOfVolumeEnv}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\SegmentOfVolumeEnv}} \newcommand{\ManifoldCoeffsSet}{\Set{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsSetCell}{\QuantityRelatedTo{\Set{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsSetUsplineCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsSetBernsteinCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsSetSubmeshCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldTemporalMap}[2]{\QuantityRelatedTo{#2}{#1,\SymbolTime}} \newcommand{\ManifoldPartitionMap}{\ManifoldMap{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldCADMap}{\ManifoldMap{\ParamDomainOnCAD}{\Manifold}} \newcommand{\ManifoldCADMapModified}{\ManifoldMap{\ParamDomainOnCADModified}{\Manifold}} \newcommand{\ManifoldBezierMap}{\ManifoldMap{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMap}{\ManifoldMap{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMap}{\ManifoldMap{\ParamDomain}{\Volume}} \newcommand{\SurfaceMap}{\ManifoldMap{\ParamDomainBdry}{\Surface}} \newcommand{\ManifoldMapDef}[2]{\FuncDef{\ManifoldMap{#1}{#2}}{#1}{#2}} \newcommand{\ManifoldMapInverseDef}[2]{\FuncDef{\Inverse{\ManifoldMap{#1}{#2}}}{#2}{#1}} \newcommand{\ManifoldTemporalMapDef}[2]{\FuncDef{\ManifoldTemporalMap{#1}{#2}}{#1\otimes\Reals_{+}}{#2}} \newcommand{\ManifoldPartitionMapDef}{\ManifoldMapDef{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldBezierMapDef}{\ManifoldMapDef{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMapDef}{\ManifoldMapDef{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMapDef}{\ManifoldMapDef{\ParamDomain}{\Volume}} \newcommand{\SurfaceMapDef}{\ManifoldMapDef{\ParamDomainBdry}{\Surface}} \newcommand{\SurfaceToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\Surface}} \newcommand{\ManifoldCoordDetailed}[2]{\QCO{#1}{#2}} \newcommand{\ManifoldCoordVecDetailed}[2]{\QCO{#1}{\Vec{#2}}} \newcommand{\ManifoldCoord}{x} \newcommand{\ManifoldCoordVec}{\Vec{x}} \newcommand{\ManifoldPartitionMapCoord}{\ManifoldCoordDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldPartitionMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoord}{\ManifoldCoordDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\CovariantBasisSurfVec}{\Vec{\SymbolCovariantBasisSurf}} \newcommand{\CovariantBasisVolVec}{\Vec{\SymbolCovariantBasisVol}} \newcommand{\MetricComp}{\SymbolMetric} \newcommand{\MetricTen}{\Mat{\MetricComp}} \newcommand{\CurvatureComp}{\SymbolCurvature} \newcommand{\CurvatureTen}{\Mat{\CurvatureComp}} \newcommand{\CurvCoordIdOne}{\SymbolCurvCoordIdOne} \newcommand{\CurvCoordIdTwo}{\SymbolCurvCoordIdTwo} \newcommand{\CurvCoordIdThree}{\SymbolCurvCoordIdThree} \newcommand{\OrthogonalCoordTransform}{\Mat{\SymbolOrthogonalTransform}} \newcommand{\InversionPointTen}{\Vec{p}} \newcommand{\InversionPointComp}{p} \newcommand{\BoundingVolume}[1]{\QuantityFunctionOf{\Set{bv}}{#1}} \newcommand{\BoundingVolumeSet}[1]{\QuantityFunctionOf{\Set{BV}}{#1}} \newcommand{\BoundingVolumeTree}[1]{\QuantityFunctionOf{\Set{BVH}}{#1}} \newcommand{\AxisAlignedBoundingBox}[1]{\QuantityFunctionOf{\Set{AABB}}{#1}} \newcommand{\AABBCornerLower}{\Vec{c}^l} \newcommand{\AABBCornerLowerComp}{c^l} \newcommand{\AABBCornerUpper}{\Vec{c}^u} \newcommand{\AABBCornerUpperComp}{c^u} \newcommand{\LowerBound}[2]{B^l\left(#1,#2\right)} \newcommand{\UpperBound}[2]{B^u\left(#1,#2\right)} \newcommand{\UpperBoundValue}{U} \newcommand{\UpperBoundValueBV}{U^{\text{BV}}} \newcommand{\UpperBoundValuePoints}{U^{\text{point}}} \newcommand{\GapTolerance}{\varepsilon^{\text{gap}}} \newcommand{\NearestCells}[3][]{\Set{C}_{#1}\left(#2,#3\right)} \newcommand{\BVHNearestGeom}[3][]{c_{#1}\left(#2,#3\right)} \newcommand{\BVHGeomSetOfSets}{\Set{G}} \newcommand{\BVHTessPointSet}{\Set{P}} \newcommand{\BVHBVSet}{\Set{L}} \newcommand{\SimplexMap}[1]{\QuantityFunctionOf{\Mat{L}}{#1}} \newcommand{\ParamCoordVecTarget}{\ParamCoordVecSimple_0} \newcommand{\SpatialCoordVecTarget}{\SpatialCoordVec_0} \newcommand{\SpatialCoordVecToSegmentSetMap}{\SegmentSet^f} \newcommand{\SpatialCoordVecToParamCoordVecSetMap}{\Inverse{\widetilde{\ManifoldMap{\ParamDomainEnv}{\Surface}}}} \newcommand{\HessMatComp}{H} \newcommand{\HessMatTen}{\Mat{\HessMatComp}} \newcommand{\QuadraturePointEnv}[2]{\SymbolEnvModifier{\QuadraturePoint{#1}{#2}}} \newcommand{\QuadraturePoint}[2]{\SymbolQuadraturePoint_{#1}^{#2}} \newcommand{\QuadraturePointToElemIndexMap}[1]{\operatorname{qe}(#1)} \newcommand{\QuadratureWeightEnv}[2]{\SymbolEnvModifier{\QuadratureWeight{#1}{#2}}} \newcommand{\QuadratureWeight}[2]{\SymbolQuadratureWeight_{#1}^{#2}} \newcommand{\QuadratureSet}{\Set{\SymbolQuadratureSet}} \newcommand{\QuadratureSetInside}{\QuadratureSet^{\SymbolInside}} \newcommand{\QuadratureSetOutside}{\QuadratureSet^{\SymbolOutside}} \newcommand{\QuadratureSubdDepth}{k} \newcommand{\ClosestPointMap}[1]{\QuantityChildOf{#1}{\Vec{\SymbolClosestPointMap}}} \newcommand{\ClosestPointMapCAD}{\ClosestPointMap{\SymbolCAD}} \newcommand{\ClosestPointMapCADModified}{\ClosestPointMap{\SymbolCADModified}} \newcommand{\ProjectionInto}[1]{\QuantityRelatedTo{\SymbolProjection}{#1}} \newcommand{\ProjectionIntoBernsteinCell}{\ProjectionInto{\Cell}} \newcommand{\ProjectionIntoBernsteinElem}{\ProjectionInto{\Elem}} \newcommand{\ProjectionIntoMeshBezier}{\ProjectionInto{\MeshBezier}} \newcommand{\ProjectionIntoMeshUspline}{\ProjectionInto{\MeshUspline}} \newcommand{\LinearInterpolationOp}[1]{\QRT{\SymbolLinearInterpolation}{#1}} \newcommand{\Valence}{k} \newcommand{\ArbitraryVector}[1]{\QSB{v}{#1}} \newcommand{\RotationMatrix}[1]{R^{#1}} \newcommand{\RepVecSymbol}{u} \newcommand{\RepVec}[1]{\QSB{\RepVecSymbol}{#1}} \newcommand{\RepVecVec}{\Vec{\RepVecSymbol}} \newcommand{\AlignmentField}{\RepVecVec'} \newcommand{\BiharmonicEnergy}{\QSB{E}{B}} \newcommand{\PrescribedRepVec}[1]{\QSB{d}{#1}} \newcommand{\AlignmentParameter}{\lambda} \newcommand{\SingularityIndex}[1]{\QSB{\chi}{#1}} \newcommand{\AngularDefect}[1]{\QSB{K}{#1}} \newcommand{\ArbitraryAngle}{\theta} \newcommand{\ParallelTransport}[1]{\QSB{\varphi}{#1}} \newcommand{\MinusPiToPi}[1]{\lfloor #1 \rfloor} \newcommand{\AreaOperator}[1]{\QFO{\operatorname{area}}{#1}} \newcommand{\VectorAngle}[1]{\QFO{\operatorname{arg}}{#1}} \newcommand{\DistanceFunction}{\phi} \newcommand{\DistanceGradient}{X} \newcommand{\HeatField}{\eta} \newcommand{\RegionAtZeroDistance}{\gamma}$$\newcommand{\SymbolDisp}{u} \newcommand{\SymbolDispUpper}{U} \newcommand{\SymbolVelocity}{v} \newcommand{\SymbolVelocityUpper}{V} \newcommand{\SymbolAcceleration}{a} \newcommand{\SymbolAccelerationUpper}{A} \newcommand{\SymbolMass}{M} \newcommand{\SymbolLength}{L} \newcommand{\SymbolArea}{A} \newcommand{\SymbolConstraint}{g} \newcommand{\SymbolConstraintUpper}{G} \newcommand{\SymbolPenalty}{\varepsilon} \newcommand{\SymbolLagrangeMultRef}{\Lambda} \newcommand{\SymbolLagrangeMultCurr}{\lambda} \newcommand{\SymbolFict}{f} \newcommand{\SymbolTracForce}{h} \newcommand{\SymbolTracForceUpper}{H} \newcommand{\SymbolBodyForce}{b} \newcommand{\SymbolBodyForceUpper}{B} \newcommand{\SymbolVolumeRef}{\SymbolVolumeUpper} \newcommand{\SymbolSurfaceRef}{\SymbolSurfaceUpper} \newcommand{\SymbolCurveRef}{\SymbolCurveUpper} \newcommand{\SymbolPointRef}{\SymbolPointUpper} \newcommand{\SymbolVolumeCurr}{\SymbolVolume} \newcommand{\SymbolSurfaceCurr}{\SymbolSurface} \newcommand{\SymbolCurveCurr}{\SymbolCurve} \newcommand{\SymbolPointCurr}{\SymbolPoint} \newcommand{\SymbolDeformGradInc}{f} \newcommand{\SymbolDeformGrad}{F} \newcommand{\SymbolStrainGreenLagrange}{E} \newcommand{\SymbolDeformCauchyGreenLeft}{b} \newcommand{\SymbolDeformCauchyGreenRight}{C} \newcommand{\SymbolStrainDisp}{B} \newcommand{\SymbolStrainSymGrad}{\epsilon} \newcommand{\SymbolStrainPlasticEquiv}{\alpha} \newcommand{\SymbolHardeningPlastic}{k} \newcommand{\SymbolYieldFunction}{f} \newcommand{\SymbolConsistencyParameterPlastic}{\gamma} \newcommand{\SymbolPlasticModuliScaling}{\beta} \newcommand{\SymbolYieldSurfaceNormal}{n} \newcommand{\SymbolEnergy}{\Pi} \newcommand{\SymbolEnergyDensityStrain}{\Psi} \newcommand{\SymbolEnergyDensityStrainVol}{U} \newcommand{\SymbolResidual}{R} \newcommand{\SymbolForce}{F} \newcommand{\SymbolStiffness}{K} \newcommand{\SymbolSolution}{d} \newcommand{\ParamDomainBdryDisp}{\ParamDomainBdry^{\SymbolDisp}} \newcommand{\ParamDomainBdryTrac}{\ParamDomainBdry^{\SymbolTracForce}} \newcommand{\VolumeEnvRef}{\Set{\SymbolEnvModifier{\SymbolVolumeRef}}} \newcommand{\VolumeRef}{\Set{\SymbolVolumeRef}} \newcommand{\VolumeRefClosure}{\overline{\VolumeRef}} \newcommand{\VolumeRefFict}{\VolumeEnvRef\setminus\VolumeRef} \newcommand{\dVolumeRef}{\Differential[\VolumeRef]} \newcommand{\VolumeIndicatorDef}{\FuncDef{\VolumeIndicator_{\PenaltyStiffness}}{\VolumeEnvRef}{\Reals_+}} \newcommand{\SurfaceEnvRef}{\Set{\SymbolEnvModifier{\SymbolSurfaceRef}}} \newcommand{\SurfaceRef}{\Set{\SymbolSurfaceRef}} \newcommand{\SurfaceRefWildCard}{\SurfaceRef^{\SymbolWildCard}} \newcommand{\SurfaceRefDisp}{\SurfaceRef^{\SymbolDisp}} \newcommand{\SurfaceRefTrac}{\SurfaceRef^{\SymbolTracForce}} \newcommand{\SurfaceRefFict}{\SurfaceRef^{\SymbolFict}} \newcommand{\SurfaceRefDispExternal}{\SurfaceRefDisp\setminus\SurfaceRefFict} \newcommand{\SurfaceRefTracExternal}{\SurfaceRefTrac\setminus\SurfaceRefFict} \newcommand{\SurfaceRefFictTrac}{\SurfaceRefTrac\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictDisp}{\SurfaceRefDisp\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictExternal}{\SurfaceRefFict\setminus\SurfaceRef} \newcommand{\dSurfaceRef}{\Differential[\SurfaceRef]} \newcommand{\CurveRef}{\Set{\SymbolCurveRef}} \newcommand{\dCurveRef}{\Differential[\CurveRef]} \newcommand{\PointRef}{\Set{\SymbolPointRef}} \newcommand{\PointRefDisp}{\PointRef^{\SymbolDisp}} \newcommand{\PointRefTrac}{\PointRef^{\SymbolTracForce}} \newcommand{\dPointRef}{\Differential[\PointRef]} \newcommand{\dPointRefTrac}{\Differential[\PointRefTrac]} \newcommand{\RefCoord}[1]{\ManifoldCoordDetailed{#1}{X}} \newcommand{\RefCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{X}} \newcommand{\VolumeEnvRefCoord}{\RefCoord{\VolumeEnvRef}} \newcommand{\VolumeEnvRefCoordVec}{\RefCoordVec{\VolumeEnvRef}} \newcommand{\VolumeRefCoord}{\RefCoord{\VolumeRef}} \newcommand{\VolumeRefCoordVec}{\RefCoordVec{\VolumeRef}} \newcommand{\SurfaceRefCoord}{\RefCoord{\SurfaceRef}} \newcommand{\SurfaceRefCoordVec}{\RefCoordVec{\SurfaceRef}} \newcommand{\SurfaceRefDispCoord}{\RefCoord{\SurfaceRefDisp}} \newcommand{\SurfaceRefDispCoordVec}{\RefCoordVec{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracCoord}{\RefCoord{\SurfaceRefTrac}} \newcommand{\SurfaceRefTracCoordVec}{\RefCoordVec{\SurfaceRefTrac}} \newcommand{\CurveRefCoord}{\RefCoord{\CurveRef}} \newcommand{\CurveRefCoordVec}{\RefCoordVec{\CurveRef}} \newcommand{\UsplineBasisFuncOverCurveRef}[1]{\UsplineBasisFuncDetailed{\CurveRef}{#1}} \newcommand{\UsplineBasisFuncOverSurfaceRefDisp}[1]{\UsplineBasisFuncDetailed{\SurfaceRefDisp}{#1}} \newcommand{\VolumeEnvCurr}{\Set{\SymbolEnvModifier{\SymbolVolumeCurr}}} \newcommand{\VolumeCurr}{\Set{\SymbolVolumeCurr}} \newcommand{\VolumeCurrClosure}{\overline{\VolumeCurr}} \newcommand{\dVolumeCurr}{\Differential[\VolumeCurr]} \newcommand{\SurfaceEnvCurr}{\Set{\SymbolEnvModifier{\SymbolSurfaceCurr}}} \newcommand{\SurfaceCurr}{\Set{\SymbolSurfaceCurr}} \newcommand{\SurfaceCurrDisp}{\SurfaceCurr^{\SymbolDisp}} \newcommand{\SurfaceCurrTrac}{\SurfaceCurr^{\SymbolTracForce}} \newcommand{\dSurfaceCurr}{\Differential[\SurfaceCurr]} \newcommand{\CurveCurr}{\Set{\SymbolCurveCurr}} \newcommand{\dCurveCurr}{\Differential[\CurveCurr]} \newcommand{\PointCurr}{\Set{\SymbolPointCurr}} \newcommand{\PointCurrDisp}{\PointCurr^{\SymbolDisp}} \newcommand{\PointCurrTrac}{\PointCurr^{\SymbolTracForce}} \newcommand{\dPointCurr}{\Differential[\PointCurr]} \newcommand{\CurrCoord}[1]{\ManifoldCoordDetailed{#1}{x}} \newcommand{\CurrCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{x}} \newcommand{\VolumeEnvCurrCoord}{\CurrCoord{\VolumeEnvCurr}} \newcommand{\VolumeEnvCurrCoordVec}{\CurrCoordVec{\VolumeEnvCurr}} \newcommand{\VolumeCurrCoord}{\CurrCoord{\VolumeCurr}} \newcommand{\VolumeCurrCoordVec}{\CurrCoordVec{\VolumeCurr}} \newcommand{\SurfaceCurrCoord}{\CurrCoord{\SurfaceCurr}} \newcommand{\SurfaceCurrCoordVec}{\CurrCoordVec{\SurfaceCurr}} \newcommand{\SurfaceCurrDispCoord}{\CurrCoord{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrDispCoordVec}{\CurrCoordVec{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrTracCoord}{\CurrCoord{\SurfaceCurrTrac}} \newcommand{\SurfaceCurrTracCoordVec}{\CurrCoordVec{\SurfaceCurrTrac}} \newcommand{\CurveCurrCoord}{\CurrCoord{\CurveRef}} \newcommand{\CurveCurrCoordVec}{\CurrCoordVec{\CurveRef}} \newcommand{\VolumeEnvRefMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\GenericGradOverVolumeEnvRefMap}[1]{\Grad{\VolumeEnvRefMap}{#1}} \newcommand{\VolumeRefMap}{\ManifoldMap{\ParamDomain}{\VolumeRef}} \newcommand{\GenericGradOverVolumeRefMap}[1]{\Grad{\VolumeRefMap}{#1}} \newcommand{\SurfaceRefDispMap}{\ManifoldMap{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMap}{\ManifoldMap{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\CurveRefMap}{\ManifoldMap{\ParamDomain}{\CurveRef}} \newcommand{\GenericGradOverCurveRefMap}[1]{\Grad{\CurveRefMap}{#1}} \newcommand{\VolumeEnvRefMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\SurfaceRefDispMapDef}{\ManifoldMapDef{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMapDef}{\ManifoldMapDef{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\SurfaceRefToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRef}} \newcommand{\SurfaceRefDispToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefTrac}} \newcommand{\CurveRefMapDef}{\ManifoldMapDef{\ParamDomain}{\CurveRef}} \newcommand{\GenericDeformMap}{\Vec{\varphi}} \newcommand{\VolumeEnvDeformMap}{\ManifoldMap{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\GenericGradOverVolumeEnvDeformMap}[1]{\Grad{\VolumeEnvDeformMap}{#1}} \newcommand{\VolumeDeformMap}{\ManifoldMap{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMap}{\ManifoldTemporalMap{\VolumeRef}{\VolumeCurr}} \newcommand{\GradVolumeDeformTemporalMap}{\GenericGradOverVolumeRefMap{\VolumeDeformTemporalMap}} \newcommand{\SurfaceDeformDispMap}{\ManifoldMap{\SurfaceRefDisp}{\SurfaceCurrDisp}} \newcommand{\SurfaceDeformTracMap}{\ManifoldMap{\SurfaceRefTrac}{\SurfaceCurrTrac}} \newcommand{\CurveDeformMap}{\ManifoldMap{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMap}{\ManifoldTemporalMap{\CurveRef}{\CurveCurr}} \newcommand{\VolumeDeformMapDef}{\ManifoldMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMapDef}{\ManifoldTemporalMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeEnvDeformMapDef}{\ManifoldMapDef{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\CurveDeformMapDef}{\ManifoldMapDef{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMapDef}{\ManifoldTemporalMapDef{\CurveRef}{\CurveCurr}} \newcommand{\DispTrialSpaceOverVolumeEnvRef}{\SpaceHilbert{U}(\VolumeEnvRef)} \newcommand{\DispTestSpaceOverVolumeEnvRef}{\delta \DispTrialSpaceOverVolumeEnvRef} \newcommand{\DispTrialSpaceOverVolumeRef}{\SpaceHilbert{U}(\VolumeRef)} \newcommand{\DispTestSpaceOverVolumeRef}{\delta \DispTrialSpaceOverVolumeRef} \newcommand{\DispTrialSpaceOverCurveRef}{\SpaceHilbert{U}(\CurveRef)} \newcommand{\DispTestSpaceOverCurveRef}{\delta \DispTrialSpaceOverCurveRef} \newcommand{\DispFieldRefComp}{\SymbolDispUpper} \newcommand{\DispFieldRefTen}{\Vec{\DispFieldRefComp}} \newcommand{\DispFieldCurrComp}{\SymbolDisp} \newcommand{\DispFieldCurrTen}{\Vec{\DispFieldCurrComp}} \newcommand{\VelFieldCurrTen}{\Vec{\SymbolVelocity}} \newcommand{\AccFieldCurrTen}{\Vec{\SymbolAcceleration}} \newcommand{\DeformGradComp}{\SymbolDeformGrad} \newcommand{\DeformGradTen}{\Mat{\DeformGradComp}} \newcommand{\DeformGradDet}{\Det{\DeformGradTen}} \newcommand{\KinematicElast}{e} \newcommand{\KinematicPlast}{p} \newcommand{\DivVolumeEnvRef}[1]{\Div{\VolumeEnvRefCoordVec}{#1}} \newcommand{\DivVolumeEnvCurr}[1]{\Div{\VolumeEnvCurrCoordVec}{#1}} \newcommand{\DeformGradIncComp}{\SymbolDeformGradInc} \newcommand{\DeformGradIncTen}{\Mat{\DeformGradIncComp}} \newcommand{\DeformGradIncDevComp}{\bar{\SymbolDeformGradInc}} \newcommand{\DeformGradIncDevTen}{\bar{\Mat{\DeformGradIncComp}}} \newcommand{\JAsDeformGradDet}{J} \newcommand{\StretchTen}{\Mat{V}} \newcommand{\StrainGreenLagrangeComp}{\SymbolStrainGreenLagrange} \newcommand{\StrainGreenLagrangeTen}{\Mat{\StrainGreenLagrangeComp}} \newcommand{\StrainGreenLagrangeVoigt}{\tilde{\StrainGreenLagrangeTen}} \newcommand{\DeformCauchyGreenRightComp}{\SymbolDeformCauchyGreenRight} \newcommand{\DeformCauchyGreenRightTen}{\Mat{\DeformCauchyGreenRightComp}} \newcommand{\DeformCauchyGreenLeftComp}{\SymbolDeformCauchyGreenLeft} \newcommand{\DeformCauchyGreenLeftTen}{\Mat{\DeformCauchyGreenLeftComp}} \newcommand{\DeformCauchyGreenLeftDevComp}{\bar{\SymbolDeformCauchyGreenLeft}} \newcommand{\DeformCauchyGreenLeftDevTen}{\bar{\Mat{\DeformCauchyGreenLeftComp}}} \newcommand{\StrainSymGradComp}{\SymbolStrainSymGrad} \newcommand{\StrainSymGradTen}{\Mat{\StrainSymGradComp}} \newcommand{\StrainDispMat}{\Mat{\SymbolStrainDisp}} \newcommand{\DeformCauchyGreenRightDevComp}{\bar{\SymbolDeformCauchyGreenRight}} \newcommand{\DeformCauchyGreenRightDevTen}{\bar{\Mat{\DeformCauchyGreenRightComp}}} \newcommand{\KinematicElastoplast}{{\rm ep}} \newcommand{\Trial}{{\rm trial}} \newcommand{\DeformCauchyGreenLeftElasticTenDef}{\DeformCauchyGreenLeftTen^\KinematicElast \DefEq \DeformGradTen^\KinematicElast \DeformGradTen^{\KinematicElast T}} \newcommand{\DeformCauchyGreenLeftElasticDevTenDef}{{\DeformCauchyGreenLeftDevTen}^\KinematicElast \DefEq {\JAsDeformGradDet}^{\KinematicElast-\frac{2}{3}} {\DeformCauchyGreenLeftTen}^\KinematicElast} \newcommand{\DeformCauchyGreenRightPlasticTenDef}{\DeformCauchyGreenRightTen^\KinematicPlast \DefEq \DeformGradTen^{\KinematicPlast T} \DeformGradTen^\KinematicPlast} \newcommand{\StrainPlasticEquiv}{\SymbolStrainPlasticEquiv} \newcommand{\ConsistencyParameterPlasticDiscrete}{\Delta \SymbolConsistencyParameterPlastic} \newcommand{\YieldSurfaceNormalComp}{\SymbolYieldSurfaceNormal} \newcommand{\YieldSurfaceNormalTen}{\Mat{\SymbolYieldSurfaceNormal}} \newcommand{\UnitNormalRefComp}{N} \newcommand{\UnitNormalRefTen}{\Vec{\UnitNormalRefComp}} \newcommand{\UnitNormalCurrComp}{\UnitNormalComp} \newcommand{\UnitNormalCurrTen}{\UnitNormal} \newcommand{\DispFieldOverVolumeEnvRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeEnvCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\DispFieldOverVolumeRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeDeformMap}} \newcommand{\DispFieldOverCurveRefTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\DispFieldOverCurveRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DeformGradOverVolumeRefTenDef}{\FuncDef{\DeformGradTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\DeformGradOverCurveRefTenDef}{\FuncDef{\DeformGradTen}{\CurveRef}{\CurveCurr}} \newcommand{\StrainGreenLagrangeOverVolumeEnvRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\StrainGreenLagrangeOverVolumeRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\StrainGreenLagrangeOverCurveRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\CurveRef}{\CurveCurr}} \newcommand{\DeformCauchyGreenLeftTenDef}{\DeformCauchyGreenLeftTen \DefEq \DeformGradTen \DeformGradTen^T} \newcommand{\DeformCauchyGreenLeftDevTenDef}{\DeformCauchyGreenLeftDevTen \DefEq \DeformGradDet^{-\frac{2}{3}} \DeformCauchyGreenLeftTen} \newcommand{\StressPKOneTen}{\Mat{P}} \newcommand{\StressPKTwoComp}{S} \newcommand{\StressPKTwoTen}{\Mat{\StressPKTwoComp}} \newcommand{\StressPKTwoVoigt}{\tilde{\StressPKTwoTen}} \newcommand{\StressCauchyComp}{\sigma} \newcommand{\StressCauchyTen}{\Mat{\sigma}} \newcommand{\StressCauchyVoigt}{\tilde{\StressCauchyTen}} \newcommand{\StressCauchyMean}{p} \newcommand{\StressCauchyYield}{\StressCauchyComp_Y} \newcommand{\StressKirchhoffComp}{\tau} \newcommand{\StressKirchhoffTen}{\Mat{\tau}} \newcommand{\StressKirchhoffVoigt}{\tilde{\StressKirchhoffTen}} \newcommand{\StressKirchhoffDevComp}{s} \newcommand{\StressKirchhoffDevTen}{\Mat{\StressKirchhoffDevComp}} \newcommand{\ModuliElastRefComp}{C} \newcommand{\ModuliElastRefTen}{\Mat{\ModuliElastRefComp}} \newcommand{\ModuliElastRefVoigt}{\tilde{\ModuliElastRefTen}} \newcommand{\ModuliElastCurrComp}{c} \newcommand{\ModuliElastCurrTen}{\Mat{\ModuliElastCurrComp}} \newcommand{\ModuliElastCurrVoigt}{\tilde{\ModuliElastCurrTen}} \newcommand{\MaterialYoungsModulus}{E} \newcommand{\MaterialPoissonsRatio}{\nu} \newcommand{\MaterialMassDensity}{\rho} \newcommand{\MaterialBulkModulus}{\kappa} \newcommand{\MaterialShearModulus}{\mu} \newcommand{\MaterialShearModulusDev}{\bar{\MaterialShearModulus}} \newcommand{\MaterialThermalExpansion}{\alpha_{\text{thermal}}} \newcommand{\Area}{\SymbolArea} \newcommand{\Length}{\SymbolLength} \newcommand{\Width}{b} \newcommand{\Height}{h} \newcommand{\PenaltyStiffness}{\SymbolPenalty_{\SymbolStiffness}} \newcommand{\PenaltyDisp}{\SymbolPenalty_{\SymbolDisp}} \newcommand{\BodyForceRefComp}{\SymbolBodyForceUpper} \newcommand{\BodyForceRefTen}{\Vec{\BodyForceRefComp}} \newcommand{\BodyForceCurrComp}{\SymbolBodyForce} \newcommand{\BodyForceCurrTen}{\Vec{\BodyForceCurrComp}} \newcommand{\TracForceRefComp}{\SymbolTracForceUpper} \newcommand{\TracForceRefTen}{\Vec{\TracForceRefComp}} \newcommand{\TracForceCurrComp}{\SymbolTracForce} \newcommand{\TracForceCurrTen}{\Vec{\TracForceCurrComp}} \newcommand{\Pressure}{p} \newcommand{\BodyForceOverVolumeEnvRefTenDef}{\FuncDef{\BodyForceRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\BodyForceOverCurveRefCompDef}{\FuncDef{\BodyForceRefComp}{\CurveRef}{\Reals}} \newcommand{\BodyForceOverCurveRefTenDef}{\FuncDef{\BodyForceRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\BodyForceOverCurveCurrCompDef}{\BodyForceCurrComp \DefEq \BodyForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\BodyForceOverCurveCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverSurfaceRefTracTenDef}{\FuncDef{\TracForceRefTen}{\SurfaceRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceCurrTracTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\SurfaceDeformTracMap}} \newcommand{\TracForceOverCurveRefCompDef}{\FuncDef{\TracForceRefComp}{\PointRefTrac}{\Reals}} \newcommand{\TracForceOverCurveRefTenDef}{\FuncDef{\TracForceRefTen}{\PointRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverCurveCurrCompDef}{\TracForceCurrComp \DefEq \TracForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverCurveCurrTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\ConstraintRefTen}{\Vec{\SymbolConstraintUpper}} \newcommand{\LagrangeMultTestSpaceOverSurfaceRef}{\delta \LagrangeMultTrialSpaceOverSurfaceRef} \newcommand{\LagrangeMultTrialSpaceOverSurfaceRef}{\SpaceHilbert{L}(\SurfaceRefDisp)} \newcommand{\LagrangeMultRefComp}{\SymbolLagrangeMultRef} \newcommand{\LagrangeMultRefTen}{\Vec{\LagrangeMultRefComp}} \newcommand{\LagrangeMultCurrComp}{\SymbolLagrangeMultCurr} \newcommand{\LagrangeMultCurrTen}{\Vec{\LagrangeMultCurrComp}} \newcommand{\ConstraintOverSurfaceRefDispTenDef}{\FuncDef{\ConstraintRefTen}{\SurfaceRefDisp}{\SpatialDomain}} \newcommand{\LagrangeMultOverSurfaceCurrTenDef}{\LagrangeMultCurrTen \DefEq \LagrangeMultRefTen \circ \Inverse{\SurfaceDeformDispMap}} \newcommand{\Energy}{\SymbolEnergy} \newcommand{\EnergyElastic}[1]{\QFO{\Energy}{#1}} \newcommand{\EnergyElasticNoArg}{\QFONA{\Energy}} \newcommand{\EnergyEnv}{\SymbolEnvModifier{\Energy}} \newcommand{\EnergyInside}{\Energy^{\SymbolInside}} \newcommand{\EnergyOutside}{\Energy^{\SymbolOutside}} \newcommand{\EnergyConstraint}{\Energy^{\LagrangeMultCurrComp}} \newcommand{\EnergyDensityStrain}{\SymbolEnergyDensityStrain} \newcommand{\EnergyDensityStrainVol}{\SymbolEnergyDensityStrainVol} \newcommand{\EnergyDensityStrainDev}{\bar{\SymbolEnergyDensityStrain}} \newcommand{\EnergyInsideOverVolumeEnvRefDef}{\FuncDef{\EnergyInside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyOutsideOverVolumeEnvRefDef}{\FuncDef{\EnergyOutside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefDef}{\FuncDef{\EnergyConstraint}{\DispTrialSpaceOverVolumeEnvRef\TensorProduct\LagrangeMultTrialSpaceOverSurfaceRef}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefDef}{\FuncDef{\EnergyDensityStrain}{\VolumeEnvRef}{\Reals}} \newcommand{\ResidualComp}{\SymbolResidual} \newcommand{\ResidualVec}{\Vec{\ResidualComp}} \newcommand{\ForceVec}{\Vec{\SymbolForce}} \newcommand{\ForceInternalVec}{\ForceVec^{int}} \newcommand{\ForceExternalVec}{\ForceVec^{ext}} \newcommand{\ForceConstraintPenaltyVec}{\ForceVec^{\PenaltyDisp}} \newcommand{\ForceConstraintLagrangeVec}{\ForceVec^{\lambda1}} \newcommand{\ForceConstraintVec}{\ForceVec^{\lambda2}} \newcommand{\StiffnessMat}{\Mat{\SymbolStiffness}} \newcommand{\StiffnessMaterialMat}{\StiffnessMat^{m}} \newcommand{\StiffnessGeometricMat}{\StiffnessMat^{g}} \newcommand{\StiffnessPenaltyMat}{\StiffnessMat^{\PenaltyDisp}} \newcommand{\StiffnessLagrangeMat}{\StiffnessMat^{\LagrangeMultCurrComp}} \newcommand{\MassMat}{\Mat{\SymbolMass}} \newcommand{\LumpedMassMat}{\tilde{\MassMat}} \newcommand{\SolutionComp}{\SymbolSolution} \newcommand{\Solution}{\Vec{\SymbolSolution}} \newcommand{\SolutionDisp}{\Solution^{\DispFieldCurrComp}} \newcommand{\SolutionLagrange}{\Solution^{\LagrangeMultCurrComp}} \newcommand{\Flex}[1]{\mathcal{F}_{#1}} \newcommand{\FlexIt}{\mathcal{F}} \newcommand{\FlexFEA}{\Flex{\bar{0}}} \newcommand{\FlexFEAModified}{\Flex{0}} \newcommand{\FlexOne}{\Flex{1}} \newcommand{\FlexImmersed}{\Flex{\infty}} \newcommand{\FlexInfty}{\mathcal{F}{\infty}} \newcommand{\FlexSpectrum}{\overleftrightarrow{\mathcal{F}}} \newcommand{\FlexSpectrumId}{i} \newcommand{\TimeStep}{\Delta \SymbolTime} \newcommand{\SpectralRadius}{\rho_{\infty}}$$\newcommand{\SymbolPressureContact}{p} \newcommand{\SymbolContactGap}{g} \newcommand{\NumUsplineBasisFuncsS}{\Size{\UsplineBasisFuncSetOnMeshUspline^s}} \newcommand{\NumUsplineBasisFuncsM}{\Size{\UsplineBasisFuncSetOnMeshUspline^m}} \newcommand{\NumUsplineBasisFuncsG}{\Size{\UsplineBasisFuncSetOnMeshUspline^\alpha}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactS}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactS}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactM}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactM}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactG}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactG}}} \newcommand{\ParamDomainEnvS}{\ParamDomainEnv^{s}} \newcommand{\ParamDomainEnvM}{\ParamDomainEnv^{m}} \newcommand{\ParamDomainEnvG}{\ParamDomainEnv^{\alpha}} \newcommand{\ParamDomainS}{\ParamDomain^{s}} \newcommand{\ParamDomainM}{\ParamDomain^{m}} \newcommand{\ParamDomainG}{\ParamDomain^\alpha} \newcommand{\ParamDomainClosureS}{\overline{\ParamDomain}^s} \newcommand{\ParamDomainClosureM}{\overline{\ParamDomain}^m} \newcommand{\ParamDomainClosureG}{\overline{\ParamDomain}^\alpha} \newcommand{\ParamDomainBdryG}{\ParamDomainBdry^\alpha} \newcommand{\ParamDomainBdryContactS}{\ParamDomainBdry^{c,s}} \newcommand{\ParamDomainBdryContactM}{\ParamDomainBdry^{c,m}} \newcommand{\ParamDomainBdryContactG}{\ParamDomainBdry^{c,\alpha}} \newcommand{\ParamDomainBdryTangentComp}{A} \newcommand{\ParamDomainBdryTangentTen}{\Mat{\ParamDomainBdryTangentComp}} \newcommand{\ParamDetJacobianS}{j^s} \newcommand{\ParamDomainGCoordVec}{\ParamCoordVecSimple^{\ParamDomainG}} \newcommand{\ParamDomainGCoord}{\ParamCoordSimple^{\ParamDomainG}} \newcommand{\ParamDomainEnvGCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvGCoord}{\ParamCoordSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvSCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvSCoord}{\ParamCoordSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvMCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainEnvMCoord}{\ParamCoordSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainBdryContactGCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactGCoord}{\ParamCoordSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactSCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactSCoord}{\ParamCoordSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactMCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactM}} \newcommand{\ParamDomainBdryContactMCoord}{\ParamCoordSimple^{\ParamDomainBdryContactM}} \newcommand{\SegmentParamDomainOfVolumeEnvRefS}{\QuantityRelatedTo{\ParamDomainEnvS}{\SegmentOfVolumeEnvRefS}} \newcommand{\SegmentParamDomainOfVolumeEnvRefM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvRefM}} \newcommand{\SegmentParamDomainOfVolumeEnvCurrM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvCurrM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactS}{\QuantityRelatedTo{\ParamDomainBdryContactS}{\SegmentOfSurfaceCurrContactS}} \newcommand{\SegmentParamDomainOfSurfaceRefContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceRefContactM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceCurrContactM}} \newcommand{\UsplineBasisFuncS}{\UsplineBasisFunc^{s}} \newcommand{\UsplineBasisFuncM}{\UsplineBasisFunc^{m}} \newcommand{\UsplineBasisFuncG}{\UsplineBasisFunc^{\alpha}} \newcommand{\UsplineBasisFuncParamDomainBdryContactS}{\UsplineBasisFunc^{\ParamDomainBdryContactS}} \newcommand{\UsplineBasisFuncParamDomainBdryContactM}{\UsplineBasisFunc^{\ParamDomainBdryContactM}} \newcommand{\UsplineBasisFuncParamDomainBdryContactG}{\UsplineBasisFunc^{\ParamDomainBdryContactG}} \newcommand{\UsplineBasisSymmSecondOrderComp}{S} \newcommand{\UsplineBasisSymmSecondOrderTen}{\Mat{\UsplineBasisSymmSecondOrderComp}} \newcommand{\UsplineBasisSymmFourthOrderComp}{E} \newcommand{\UsplineBasisSymmSixthOrderComp}{Z} \newcommand{\VolumeEnvRefG}{\VolumeEnvRef^{\alpha}} \newcommand{\VolumeEnvRefS}{\VolumeEnvRef^{s}} \newcommand{\VolumeEnvRefM}{\VolumeEnvRef^{m}} \newcommand{\VolumeRefG}{\VolumeRef^{\alpha}} \newcommand{\VolumeRefS}{\VolumeRef^{s}} \newcommand{\VolumeRefM}{\VolumeRef^{m}} \newcommand{\VolumeRefClosureG}{\VolumeRefClosure^\alpha} \newcommand{\VolumeRefClosureS}{\VolumeRefClosure^s} \newcommand{\VolumeRefClosureM}{\VolumeRefClosure^m} \newcommand{\SurfaceRefG}{\SurfaceRef^\alpha} \newcommand{\SurfaceRefS}{\SurfaceRef^s} \newcommand{\SurfaceRefM}{\SurfaceRef^m} \newcommand{\SurfaceRefTracG}{\SurfaceRef^{\SymbolTracForce,\alpha}} \newcommand{\SurfaceRefDispG}{\SurfaceRef^{\SymbolDisp,\alpha}} \newcommand{\SurfaceRefContactG}{\SurfaceRef^{c,\alpha}} \newcommand{\SurfaceRefContactS}{\SurfaceRef^{c,s}} \newcommand{\SurfaceRefContactM}{\SurfaceRef^{c,m}} \newcommand{\VolumeEnvRefSCoordVec}{\RefCoordVec{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMCoordVec}{\RefCoordVec{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGCoordVec}{\RefCoordVec{\VolumeEnvRefG}} \newcommand{\VolumeRefGCoordVec}{\RefCoordVec{\VolumeRefG}} \newcommand{\SurfaceRefContactSCoord}{\RefCoord{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactSCoordVec}{\RefCoordVec{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMCoord}{\RefCoord{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactMCoordVec}{\RefCoordVec{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGCoord}{\RefCoord{\SurfaceRefContactG}} \newcommand{\SurfaceRefContactGCoordVec}{\RefCoordVec{\SurfaceRefContactG}} \newcommand{\SurfaceRefDispGCoordVec}{\RefCoordVec{\SurfaceRefDispG}} \newcommand{\SegmentOfVolumeEnvRefS}{\Segment{\VolumeEnvRefS}} \newcommand{\SegmentOfVolumeEnvRefM}{\Segment{\VolumeEnvRefM}} \newcommand{\SegmentOfSurfaceRefContactS}{\Segment{\SurfaceRefContactS}} \newcommand{\SegmentOfSurfaceRefContactM}{\Segment{\SurfaceRefContactM}} \newcommand{\VolumeEnvCurrG}{\VolumeEnvCurr^{\alpha}} \newcommand{\VolumeEnvCurrS}{\VolumeEnvCurr^{s}} \newcommand{\VolumeEnvCurrM}{\VolumeEnvCurr^{m}} \newcommand{\VolumeCurrG}{\VolumeCurr^{\alpha}} \newcommand{\VolumeCurrS}{\VolumeCurr^{s}} \newcommand{\VolumeCurrM}{\VolumeCurr^{m}} \newcommand{\VolumeCurrClosureG}{\VolumeCurrClosure^\alpha} \newcommand{\VolumeCurrClosureS}{\VolumeCurrClosure^s} \newcommand{\VolumeCurrClosureM}{\VolumeCurrClosure^m} \newcommand{\SurfaceCurrG}{\SurfaceCurr^\alpha} \newcommand{\SurfaceCurrS}{\SurfaceCurr^s} \newcommand{\SurfaceCurrM}{\SurfaceCurr^m} \newcommand{\SurfaceCurrContact}{\SurfaceCurr^{c}} \newcommand{\SurfaceCurrContactG}{\SurfaceCurr^{c,\alpha}} \newcommand{\SurfaceCurrContactS}{\SurfaceCurr^{c,s}} \newcommand{\SurfaceCurrContactM}{\SurfaceCurr^{c,m}} \newcommand{\VolumeEnvCurrSCoordVec}{\CurrCoordVec{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMCoordVec}{\CurrCoordVec{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGCoordVec}{\CurrCoordVec{\VolumeEnvCurrG}} \newcommand{\VolumeCurrGCoordVec}{\CurrCoordVec{\VolumeCurrG}} \newcommand{\SurfaceCurrContactSCoord}{\CurrCoord{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactSCoordVec}{\CurrCoordVec{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMCoord}{\CurrCoord{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactMCoordVec}{\CurrCoordVec{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGCoord}{\CurrCoord{\SurfaceCurrContactG}} \newcommand{\SurfaceCurrContactGCoordVec}{\CurrCoordVec{\SurfaceCurrContactG}} \newcommand{\SegmentOfVolumeEnvCurrS}{\Segment{\VolumeEnvCurrS}} \newcommand{\SegmentOfVolumeEnvCurrM}{\Segment{\VolumeEnvCurrM}} \newcommand{\SegmentOfSurfaceCurrContactS}{\Segment{\SurfaceCurrContactS}} \newcommand{\SegmentOfSurfaceCurrContactM}{\Segment{\SurfaceCurrContactM}} \newcommand{\VolumeEnvRefSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeEnvRefSMapInv}{\Inverse{\VolumeEnvRefSMap}} \newcommand{\VolumeEnvRefMMapInv}{\Inverse{\VolumeEnvRefMMap}} \newcommand{\VolumeEnvRefGMapInv}{\Inverse{\VolumeEnvRefGMap}} \newcommand{\VolumeRefClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeRefClosureS}} \newcommand{\VolumeRefClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}} \newcommand{\VolumeRefClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\VolumeRefSMap}{\ManifoldMap{\ParamDomainS}{\VolumeRefS}} \newcommand{\VolumeRefMMap}{\ManifoldMap{\ParamDomainM}{\VolumeRefM}} \newcommand{\VolumeRefGMap}{\ManifoldMap{\ParamDomainG}{\VolumeRefG}} \newcommand{\VolumeRefClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\VolumeRefClosureMMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}\Big|_{\ParamDomainBdryContactM}} \newcommand{\SurfaceRefContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvRefGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeRefClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\SurfaceRefContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvCurrSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeCurrClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeCurrClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeCurrSMap}{\ManifoldMap{\ParamDomainS}{\VolumeCurrS}} \newcommand{\VolumeCurrMMap}{\ManifoldMap{\ParamDomainM}{\VolumeCurrM}} \newcommand{\VolumeCurrGMap}{\ManifoldMap{\ParamDomainG}{\VolumeCurrG}} \newcommand{\VolumeCurrClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\SurfaceCurrContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvCurrGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\SurfaceCurrContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvDeformSMap}{\ManifoldMap{\VolumeEnvRefS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvDeformMMap}{\ManifoldMap{\VolumeEnvRefM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvDeformGMap}{\ManifoldMap{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformSMap}{\ManifoldMap{\VolumeRefClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeDeformMMap}{\ManifoldMap{\VolumeRefClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeDeformGMap}{\ManifoldMap{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeEnvDeformGMapDef}{\ManifoldMapDef{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformGMapDef}{\ManifoldMapDef{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\DispTrialSpaceOverVolumeEnvRefS}{\SpaceHilbert{U}(\VolumeEnvRefS)} \newcommand{\DispTrialSpaceOverVolumeEnvRefM}{\SpaceHilbert{U}(\VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefSAndM}{\SpaceHilbert{U}(\VolumeEnvRefS, \VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefG}{\SpaceHilbert{U}(\VolumeEnvRefG)} \newcommand{\DispTrialSpaceOverVolumeRefS}{\SpaceHilbert{U}(\VolumeRefClosureS)} \newcommand{\DispTrialSpaceOverVolumeRefM}{\SpaceHilbert{U}(\VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefSAndM}{\SpaceHilbert{U}(\VolumeRefClosureS, \VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefG}{\SpaceHilbert{U}(\VolumeRefClosureG)} \newcommand{\DispTestSpaceOverVolumeEnvRefG}{\delta \DispTrialSpaceOverVolumeEnvRefG} \newcommand{\DispTestSpaceOverVolumeRefG}{\delta \DispTrialSpaceOverVolumeRefG} \newcommand{\DispFieldRefSComp}{\DispFieldRefComp^s} \newcommand{\DispFieldRefSTen}{\DispFieldRefTen^s} \newcommand{\DispFieldRefMComp}{\DispFieldRefComp^m} \newcommand{\DispFieldRefMTen}{\DispFieldRefTen^m} \newcommand{\DispFieldRefGTen}{\DispFieldRefTen^\alpha} \newcommand{\DispFieldDiscreteRefGTen}{\DispFieldRefTen^{h,\alpha}} \newcommand{\DispFieldOverVolumeEnvRefGTenDef}{\ManifoldMapDef{\VolumeEnvRefG}{\DispFieldRefGTen}} \newcommand{\DispFieldOverVolumeRefGTenDef}{\ManifoldMapDef{\VolumeRefClosureG}{\DispFieldRefGTen}} \newcommand{\GradVolumeRefG}[1]{\Grad{\RefCoordVec{\VolumeRefClosureG}}{#1}} \newcommand{\GradVolumeEnvRefS}[1]{\Grad{\VolumeEnvRefSCoordVec}{#1}} \newcommand{\GradVolumeEnvRefM}[1]{\Grad{\VolumeEnvRefMCoordVec}{#1}} \newcommand{\GradVolumeEnvRefG}[1]{\Grad{\VolumeEnvRefGCoordVec}{#1}} \newcommand{\DeformGradSComp}{\DeformGradComp^s} \newcommand{\DeformGradSTen}{\DeformGradTen^s} \newcommand{\DeformGradSDet}{\Det{\DeformGradSTen}} \newcommand{\DeformGradSInvTrans}{\InvTrans{\DeformGradSTen}} \newcommand{\DeformGradMComp}{\DeformGradComp^m} \newcommand{\DeformGradMTen}{\DeformGradTen^m} \newcommand{\DeformGradMDet}{\Det{\DeformGradMTen}} \newcommand{\DeformGradMInvTrans}{\InvTrans{\DeformGradMTen}} \newcommand{\DeformGradGTen}{\DeformGradTen^\alpha} \newcommand{\DeformGradOverVolumeEnvRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\DeformGradOverVolumeRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\UnitNormalRefSTen}{\UnitNormalRefTen^s} \newcommand{\UnitNormalRefMTen}{\UnitNormalRefTen^m} \newcommand{\UnitNormalCurrSComp}{\UnitNormalCurrComp^s} \newcommand{\UnitNormalCurrSTen}{\UnitNormalCurrTen^s} \newcommand{\UnitNormalCurrMComp}{\UnitNormalCurrComp^m} \newcommand{\UnitNormalCurrMTen}{\UnitNormalCurrTen^m} \newcommand{\AreaRatioS}{r^s} \newcommand{\AreaRatioM}{r^m} \newcommand{\ContraMTen}{\Mat{a}^m} \newcommand{\SymmProdInProjTan}{C} \newcommand{\ProdPBTanInvCurPBTanInv}{D} \newcommand{\ProdPBTanInvCurMetricInv}{M} \newcommand{\ProdPBTanInvCurMetricInvCurPBTanInv}{W} \newcommand{\PenaltyContactGap}{\SymbolPenalty_{\SymbolContactGap}} \newcommand{\BodyForceRefGTen}{\BodyForceRefTen^\alpha} \newcommand{\TracForceRefGTen}{\TracForceRefTen^\alpha} \newcommand{\BodyForceOverVolumeRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeRefG}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeEnvRefG}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceRefTracGTenDef}{\FuncDef{\TracForceRefGTen}{\SurfaceRefTracG}{\SpatialDomain}} \newcommand{\PressureContact}{\SymbolPressureContact} \newcommand{\PressureContactProjected}{\overline{\SymbolPressureContact}_{\UsplineBasisFuncId}} \newcommand{\CoeffPressureContact}{\SymbolPressureContact_{\UsplineBasisFuncId}} \newcommand{\PressureContactInterpolated}{\hat{\SymbolPressureContact}} \newcommand{\ConstraintRefGTen}{\ConstraintRefTen^\alpha} \newcommand{\GapContact}{\SymbolContactGap} \newcommand{\GapContactProjected}{\overline{\SymbolContactGap}_{\UsplineBasisFuncId}} \newcommand{\GapContactProjectedVariation}{\delta \GapContactProjected} \newcommand{\GapContactMortar}{\GapContact^{m}} \newcommand{\GapContactMortarProjected}{\overline{\GapContact}^{m}_{\UsplineBasisFuncId}} \newcommand{\CoeffGapContactMortar}{\GapContact^{m}_{\UsplineBasisFuncId}} \newcommand{\ConstraintOverSurfaceRefDispGTenDef}{\FuncDef{\ConstraintRefGTen}{\SurfaceRefDispG}{\SpatialDomain}} \newcommand{\EnergyEnvG}{\EnergyEnv^\alpha} \newcommand{\EnergyG}{\Energy^{\alpha}} \newcommand{\EnergyDensityStrainG}{\EnergyDensityStrain^\alpha} \newcommand{\EnergyConstraintG}{\Energy^{\SymbolDisp,\alpha}} \newcommand{\EnergyContact}{\Energy^c} \newcommand{\EnergyOverVolumeRefGDef}{\FuncDef{\EnergyG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyEnvOverVolumeEnvRefGDef}{\FuncDef{\EnergyEnvG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeEnvRefG}{\Reals}} \newcommand{\EnergyContactOverVolumeRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeRefSAndM}{\Reals}} \newcommand{\EnergyContactOverVolumeEnvRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeEnvRefSAndM}{\Reals}} \newcommand{\EnergyConstraintOverVolumeRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\ResidualMat}{\Mat{N}} \newcommand{\ForceInternalContactVec}{\ForceVec^{c,int,n}} \newcommand{\ForceGapContact}{C^n} \newcommand{\StiffnessMatA}{\hat{\Mat{N}}} \newcommand{\StiffnessMatB}{\Mat{T}} \newcommand{\StiffnessMatC}{\Mat{D}} \newcommand{\StiffnessGeometricContact}{\StiffnessMat^{c,g,n}} \newcommand{\StiffnessContact}{\StiffnessMat^{c,n}} \newcommand{\ElemCount}[1]{\operatorname{count}{(#1)}} \newcommand{\ConvexHull}[1]{\operatorname{ch}{\left(#1\right)}} \newcommand{\Normal}[1]{\operatorname{N}{\left(#1\right)}} \newcommand{\NormalConvexHull}[1]{\Normal{\ConvexHull{#1}}} \newcommand{\DiscretePointSetS}{\Set{SP}} \newcommand{\DiscreteElemSetM}{\Set{ME}} \newcommand{\EnvBoundConMapM}{\operatorname{mc}} \newcommand{\EnvBoundConSetM}{\Set{MC}} \newcommand{\SpatialCoordVecToSegmentSetMapMSensor}{\operatorname{cs}} \newcommand{\SpatialCoordVecToSegmentSetMapMElem}{\operatorname{ce}} \newcommand{\SelfContactMap}{\operatorname{sc}} \newcommand{\ColSetS}{\Set{I}} \newcommand{\PairEnvMapBoundM}{\operatorname{cp}} \newcommand{\ApproximateProjectionCollision}[1]{\widetilde{\Projection}{#1}} \newcommand{\ImageSlaveEnv}{\bar{\ParamCoordVecSimple}^{\ParamDomainEnvM}} \newcommand{\ImageSlaveBound}{\bar{\ParamCoordVecSimple}^{\ParamDomainBdryContactM}} \newcommand{\ActiveSet}{\Set{A}} \newcommand{\DiscretePointSetM}{\Set{MP}} \newcommand{\MortarActiveSet}{\Set{A}^m} \newcommand{\PressureContactAnalytical}{p_a} \newcommand{\TipPressureContactAnalytical}{p_0} \newcommand{\ContactHalfWidth}{b}$$\newcommand{\MidGeometryModifier}[1]{\bar{#1}} \newcommand{\SymbolRotationGlobal}{\omega} \newcommand{\SkewMat}[1]{\Mat{s} \left( #1 \right)} \newcommand{\SkewMatInv}[1]{\Mat{s}^{-1} \left( #1 \right)} \newcommand{\Ident}{\Mat{I}} \newcommand{\Cartesian}{\Vec{e}} \newcommand{\ManifoldDim}{n} \newcommand{\LaminaSymbol}{l} \newcommand{\LaminaSymbolUpper}{L} \newcommand{\LaminaMetricSymbol}{j} \newcommand{\ShellMomentSymbol}{q} \newcommand{\DirectorBilinearFunc}[3]{\left(#2,#3\right)_{#1}} \newcommand{\RotObjectiveFunc}{s} \newcommand{\ParamConfig}{\Omega_\xi} \newcommand{\ParamConfigMid}{\Omega_\xi^m} \newcommand{\ParamConfigSec}{\Omega_\xi^s} \newcommand{\ParamConfigBound}{\Gamma_\xi} \newcommand{\ParamConfigMidBound}{\Gamma_\xi^m} \newcommand{\ParamConfigSecBound}{\Gamma_\xi^s} \newcommand{\ParamConfigMuBound}{\Gamma_\xi^\mu} \newcommand{\ParamConfigSigBound}{\Gamma_\xi^\sigma} \newcommand{\ParamConfigDirichMidBound}{\Gamma_\xi^g} \newcommand{\ParamConfigNeuMidBound}{\Gamma_\xi^h} \newcommand{\ParamConfigDirichBound}{\Gamma_\xi^\gamma} \newcommand{\ParamConfigNeuBound}{\Gamma_\xi^\eta} \newcommand{\ParaParam}[1]{\xi_{#1}} \newcommand{\ParaParamVec}{\boldsymbol{\xi}} \newcommand{\RefConfig}{\Omega_0} \newcommand{\RefConfigMid}{\Omega_0^m} \newcommand{\RefConfigSec}{\Omega_0^s} \newcommand{\SurfaceRefRot}{\SurfaceRef^{\SymbolRotationGlobal}} \newcommand{\RefConfigBound}{\Gamma_0} \newcommand{\RefConfigMidBound}{\Gamma_0^m} \newcommand{\RefConfigSecBound}{\Gamma_0^s} \newcommand{\RefConfigMuBound}{\Gamma_0^\mu} \newcommand{\RefConfigSigBound}{\Gamma_0^\sigma} \newcommand{\RefConfigDirichMidBound}{\Gamma_0^g} \newcommand{\RefConfigNeuMidBound}{\Gamma_0^h} \newcommand{\RefConfigDirichBound}{\Gamma_0^\gamma} \newcommand{\RefConfigNeuBound}{\Gamma_0^\eta} \newcommand{\RefMap}{\Vec{X}} \newcommand{\RefMid}{\MidGeometryModifier{\Vec{X}}} \newcommand{\RefDir}{\Vec{D}} \newcommand{\RefSectionPos}{\Vec{R}} \newcommand{\RefCovar}[1]{\Vec{G}_{#1}} \newcommand{\RefMidCovar}[1]{\MidGeometryModifier{\Vec{G}}_{#1}} \newcommand{\RefContra}[1]{\Vec{G}^{#1}} \newcommand{\RefMidContra}[1]{\MidGeometryModifier{\Vec{G}}^{#1}} \newcommand{\RefLamina}[1]{\Vec{L}_{#1}} \newcommand{\RefLaminaDual}[1]{\Vec{\LaminaSymbolUpper}^{#1}} \newcommand{\RefShellProjectedBasis}[1]{\Vec{P}_{#1}} \newcommand{\CurConfig}{\Omega} \newcommand{\CurConfigMid}{\Omega^m} \newcommand{\CurConfigSec}{\Omega^s} \newcommand{\CurConfigBound}{\Gamma} \newcommand{\CurConfigMidBound}{\Gamma^m} \newcommand{\CurConfigSecBound}{\Gamma^s} \newcommand{\CurConfigMuBound}{\Gamma^\mu} \newcommand{\CurConfigSigBound}{\Gamma^\sigma} \newcommand{\CurConfigDirichMidBound}{\Gamma^g} \newcommand{\CurConfigNeuMidBound}{\Gamma^h} \newcommand{\CurConfigDirichBound}{\Gamma^\gamma} \newcommand{\CurConfigNeuBound}{\Gamma^\eta} \newcommand{\CurMap}{\Vec{x}} \newcommand{\CurMid}{\MidGeometryModifier{\Vec{x}}} \newcommand{\CurDir}{\Vec{d}} \newcommand{\CurSectionPos}{\Vec{r}} \newcommand{\CurCovar}[1]{\Vec{g}_{#1}} \newcommand{\CurMidCovar}[1]{\MidGeometryModifier{\Vec{g}}_{#1}} \newcommand{\CurContra}[1]{\Vec{g}^{#1}} \newcommand{\CurMidContra}[1]{\MidGeometryModifier{\Vec{g}}^{#1}} \newcommand{\CurLamina}[1]{\Vec{\LaminaSymbol}_{#1}} \newcommand{\CurLaminaDual}[1]{\Vec{\LaminaSymbol}^{#1}} \newcommand{\CurModLamina}[1]{\hat{\Vec{\LaminaSymbol}}_{#1}} \newcommand{\CurModLaminaDual}[1]{\hat{\Vec{\LaminaSymbol}}^{#1}} \newcommand{\CurShellProjectedBasis}[1]{\Vec{p}_{#1}} \newcommand{\DeformMap}{\varphi} \newcommand{\DeformMapMid}{\varphi^m} \newcommand{\Disp}{\Vec{u}} \newcommand{\DispMid}{\MidGeometryModifier{\Vec{u}}} \newcommand{\RotVec}{\boldsymbol{\omega}} \newcommand{\RotMat}{\boldsymbol{\Lambda}} \newcommand{\RotMatMembrane}{\Mat{\Psi}} \newcommand{\RotMatDelta}{\boldsymbol{\Lambda}_\Delta} \newcommand{\IncRotMat}{\Delta\RotMat} \newcommand{\EulerVec}{\boldsymbol{\vartheta}} \newcommand{\EulerVecNorm}{\theta} \newcommand{\EulerVecSinc}{\boldsymbol{\Theta}} \newcommand{\EulerRotVec}{\boldsymbol{\theta}} \newcommand{\EulerRotAngle}{\theta} \newcommand{\IncEulerRotVec}{\Delta\boldsymbol{\theta}} \newcommand{\AngularVelocity}{\boldsymbol{\eta}} \newcommand{\IncEulerRotVecVel}{\Delta\dot{\boldsymbol{\theta}}} \newcommand{\AngularAcceleration}{\boldsymbol{\alpha}} \newcommand{\IncEulerRotVecAcc}{\Delta\ddot{\boldsymbol{\theta}}} \newcommand{\DeformGrad}{\Mat{F}} \newcommand{\Strain}[1]{\boldsymbol{\tau}_{#1}} \newcommand{\StrainMid}[1]{\boldsymbol{\varepsilon}_{#1}} \newcommand{\StrainCurve}[1]{\boldsymbol{\kappa}_{#1}} \newcommand{\DecompDeform}{\Mat{U}} \newcommand{\ExtraDeformTen}{\Delta\DeformGradTen} \newcommand{\ExtraDeformComp}{\Delta\DeformGradComp} \newcommand{\GreenLagrange}{\Mat{E}} \newcommand{\ShellStrainCurve}[1]{\boldsymbol{\chi}_{#1}} \newcommand{\SecPK}{\Mat{S}} \newcommand{\FirstPK}{\Mat{P}} \newcommand{\Cauchy}{\boldsymbol{\sigma}} \newcommand{\IntTrac}[1]{\Vec{t}_{#1}} \newcommand{\RefModuli}{\Mat{C}} \newcommand{\CurModuli}{\Mat{c}} \newcommand{\PointModuli}{\Mat{m}} \newcommand{\ResModuli}{\Mat{M}} \newcommand{\RefAreaVec}[1]{\Vec{A}_{#1}} \newcommand{\RefAreaMidVec}[1]{\MidGeometryModifier{\Vec{A}}_{#1}} \newcommand{\RefMeas}{G} \newcommand{\UnitNormalRefVec}[1]{\Vec{N}_{#1}} \newcommand{\CurAreaVec}[1]{\Vec{a}_{#1}} \newcommand{\CurAreaMidVec}[1]{\MidGeometryModifier{\Vec{a}}_{#1}} \newcommand{\CurMeas}{g} \newcommand{\UnitNormalCurrVec}[1]{\Vec{n}_{#1}} \newcommand{\CurLaminaMetricTen}{\Mat{\LaminaMetricSymbol}} \newcommand{\CurLaminaMetricComp}{\LaminaMetricSymbol} \newcommand{\CurToModLaminaTransComp}{M} \newcommand{\IntForce}{\Vec{f}^{\, int}} \newcommand{\IntMoment}{\Vec{m}^{int}} \newcommand{\ExtForceBody}{\Vec{f}^{\, ext}_b} \newcommand{\ExtMomentBody}{\Vec{m}^{ext}_b} \newcommand{\ShellExtMomentBody}{\Vec{\ShellMomentSymbol}^{ext}_b} \newcommand{\ExtForceTrac}{\Vec{f}^{\, ext}_h} \newcommand{\ExtMomentTrac}{\Vec{m}^{ext}_h} \newcommand{\ShellExtMomentTrac}{\Vec{\ShellMomentSymbol}^{ext}_h} \newcommand{\MassForce}{\Vec{f}^{\,\rho}} \newcommand{\MassMoment}{\Vec{m}^{\rho}} \newcommand{\ShellMassMoment}{\Vec{\ShellMomentSymbol}^{\rho}} \newcommand{\ResidualInternal}{\Vec{R}^{int}} \newcommand{\ResidualExternal}{\Vec{R}^{ext}} \newcommand{\ResidualMass}{\Mat{R}^{\rho}} \newcommand{\NodalMass}[1]{\Mat{M}_{#1}} \newcommand{\NodalLinearInertia}[1]{A_{#1}} \newcommand{\NodalAngularInertia}[1]{I_{#1}} \newcommand{\ShellDeltaAngle}{\phi} \newcommand{\BStrainMatrix}[2]{\Mat{B}_{#1#2}} \newcommand{\ShellDrillingStiffness}{k} \newcommand{\DrillConstraint}{C} \newcommand{\IntForceDrilling}{\Vec{f}^{d}} \newcommand{\ModuliDrilling}{\Mat{M}^d} \newcommand{\ResidualDrilling}{\Vec{R}^d} \newcommand{\SymbolTop}{top} \newcommand{\SymbolCentroid}{c} \newcommand{\SymbolLeverArm}{r} \newcommand{\SpatialCoordVecCentroid}{\SpatialCoordVec^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidX}{\SpatialCoordX^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidY}{\SpatialCoordY^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidZ}{\SpatialCoordZ^{\SymbolCentroid}} \newcommand{\LeverArm}{\Vec{\SymbolLeverArm}} \newcommand{\LeverArmX}{\SymbolLeverArm_{\SpatialCoordX}} \newcommand{\LeverArmY}{\SymbolLeverArm_{\SpatialCoordY}} \newcommand{\LeverArmZ}{\SymbolLeverArm_{\SpatialCoordZ}} \newcommand{\MomentFirstMass}{Q} \newcommand{\MomentSecondMass}{I} \newcommand{\MomentSecondMassDetailed}[1]{I_{#1}} \newcommand{\DistributedLoad}{q} \newcommand{\TracForceCurrCompX}{\TracForceCurrComp_{\SpatialCoordX}} \newcommand{\TracForceCurrCompY}{\TracForceCurrComp_{\SpatialCoordY}} \newcommand{\TracForceCurrCompZ}{\TracForceCurrComp_{\SpatialCoordZ}} \newcommand{\TracMomentCurrCompDetailed}[1]{\TracMomentCurrComp_{#1}} \newcommand{\TracForceCurrCompSupportReaction}{r^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompSupportReactionDetailed}[1]{\TracForceCurrCompSupportReaction_{#1}} \newcommand{\TracForceCurrCompDistributedLoad}{\DistributedLoad^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompPointLoad}{p^{\TracForceCurrComp}} \newcommand{\TracMomentCurrVec}{\Vec{\TracMomentCurrComp}} \newcommand{\TracMomentCurrComp}{m} \newcommand{\BodyForceCurrCompX}{\BodyForceCurrComp_{\SpatialCoordX}} \newcommand{\BodyForceCurrCompY}{\BodyForceCurrComp_{\SpatialCoordY}} \newcommand{\BodyForceCurrCompZ}{\BodyForceCurrComp_{\SpatialCoordZ}} \newcommand{\BodyForceCurrCompDistributedLoad}{\DistributedLoad^{\BodyForceCurrComp}} \newcommand{\BodyForceCurrCompAxialLoad}{f^{\BodyForceCurrComp}} \newcommand{\StressCauchyTractionVec}{\Vec{t}} \newcommand{\StressCauchyTractionX}{t_{\SpatialCoordX}} \newcommand{\StressCauchyTractionY}{t_{\SpatialCoordY}} \newcommand{\StressCauchyTractionZ}{t_{\SpatialCoordZ}} \newcommand{\StressCauchyNormal}{\sigma} \newcommand{\StressCauchyNormalDetailed}[1]{\StressCauchyNormal_{#1}} \newcommand{\StressCauchyNormalXX}{\StressCauchyComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StressCauchyNormalYY}{\StressCauchyComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StressCauchyNormalZZ}{\StressCauchyComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StressCauchyShear}{\tau} \newcommand{\StressCauchyShearDetailed}[1]{\StressCauchyShear_{#1}} \newcommand{\StressCauchyShearXY}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StressCauchyShearYX}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordX}} \newcommand{\StressCauchyShearXZ}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StressCauchyShearZX}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordX}} \newcommand{\StressCauchyShearYZ}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\StressCauchyShearZY}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordY}} \newcommand{\StressCauchyResultantForce}{F} \newcommand{\StressCauchyResultantForceDetailed}[1]{F_{#1}} \newcommand{\StressCauchyResultantForceVec}{\Vec{\StressCauchyResultantForce}} \newcommand{\StressCauchyResultantMoment}{M} \newcommand{\StressCauchyResultantMomentDetailed}[1]{M_{#1}} \newcommand{\StressCauchyResultantMomentVec}{\Vec{\StressCauchyResultantMoment}} \newcommand{\StressCauchyResultantForceShear}{V} \newcommand{\StressCauchyResultantForceShearDetailed}[1]{V_{#1}} \newcommand{\StressCauchyResultantForceAxial}{\StressCauchyResultantForce} \newcommand{\DispFieldCurrCompX}{\DispFieldCurrComp_{\SpatialCoordX}} \newcommand{\DispFieldCurrCompY}{\DispFieldCurrComp_{\SpatialCoordY}} \newcommand{\DispFieldCurrCompZ}{\DispFieldCurrComp_{\SpatialCoordZ}} \newcommand{\DispFieldMidCurrCompX}{\overline{\DispFieldCurrComp}_{\SpatialCoordX}} \newcommand{\DispFieldMidCurrCompY}{\overline{\DispFieldCurrComp}_{\SpatialCoordY}} \newcommand{\StrainSymGradCompXX}{\StrainSymGradComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StrainSymGradCompYY}{\StrainSymGradComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StrainSymGradCompZZ}{\StrainSymGradComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StrainShearComp}{\gamma} \newcommand{\StrainShearCompXY}{\StrainShearComp_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StrainShearCompXZ}{\StrainShearComp_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StrainShearCompYZ}{\StrainShearComp_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\EquationBeamShearStress}{\frac{\StressCauchyResultantForceShear \MomentFirstMass}{\MomentSecondMassDetailed{\SpatialCoordZ}\Width}} \newcommand{\EquationVecInCoords}{\Vec{v} = v_{\SpatialCoordX} \BasisVecI + v_{\SpatialCoordY} \BasisVecJ + v_{\SpatialCoordZ} \BasisVecK} \newcommand{\EquationMatVecMultiply}{\Mat{M}\Vec{v} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Vec{v}} \\ \DotProduct{\Vec{m}_2}{\Vec{v}} \\ \DotProduct{\Vec{m}_3}{\Vec{v}} \end{bmatrix}} \newcommand{\EquationMatMatMultiply}{\Mat{M}\Mat{N} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Mat{n}_1} & \DotProduct{\Vec{m}_1}{\Mat{n}_2} & \DotProduct{\Vec{m}_1}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_2}{\Mat{n}_1} & \DotProduct{\Vec{m}_2}{\Mat{n}_2} & \DotProduct{\Vec{m}_2}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_3}{\Mat{n}_1} & \DotProduct{\Vec{m}_3}{\Mat{n}_2} & \DotProduct{\Vec{m}_3}{\Mat{n}_3} \end{bmatrix}} \newcommand{\Force}{F} \newcommand{\ShearFlow}{f}$$\newcommand{\BaseSymbol}{b} \newcommand{\EmbeddedSymbol}{e} \newcommand{\RefinedSymbol}{r} \newcommand{\HierarchicalSymbol}{\textsf{H}} \newcommand{\BlockSymbol}{\textsf{B}} \newcommand{\BaseModifier}[1]{{#1}_{\BaseSymbol}} \newcommand{\EmbeddedModifier}[1]{{#1}_{\EmbeddedSymbol}} \newcommand{\RefinedModifier}[1]{{#1}_{\RefinedSymbol}} \newcommand{\HierarchicalModifier}[1]{{#1}_{\HierarchicalSymbol}} \newcommand{\BlockModifier}[1]{{#1}_{\BlockSymbol}} \newcommand{\RefinementLevelI}{i} \newcommand{\RefinementLevelJ}{j} \newcommand{\RefinementLevelK}{k} \newcommand{\HighestRefinementLevel}{N} \newcommand{\BaseParentDomain}{\BaseModifier{\ParentDomain}} \newcommand{\RefinedDomain}[1]{\ParamDomain_{#1}} \newcommand{\BaseMesh}{\BaseModifier{\MeshTopo}} \newcommand{\BaseBezierMesh}{\BaseModifier{\MeshBezier}} \newcommand{\EmbeddedMesh}{\EmbeddedModifier{\MeshTopo}} \newcommand{\RefinedMesh}{\RefinedModifier{\MeshTopo}} \newcommand{\RefinedBezierMesh}{\RefinedModifier{\MeshBezier}} \newcommand{\HierarchicalBezierMesh}{\HierarchicalModifier{\MeshBezier}} \newcommand{\HierarchicalUsplineMesh}{\HierarchicalModifier{\MeshUspline}} \newcommand{\RefinementLevelMesh}[1]{\MeshBezier_{#1}} \newcommand{\LeafElemSet}[1]{\Set{L}_{#1}} \newcommand{\ActiveElemSet}[1]{\Set{A}_{#1}} \newcommand{\ActiveBasisFuncs}[1]{\Set{UFA}_{#1}} \newcommand{\UnderRefinedBasisFuncs}[1]{\Set{UFU}_{#1}} \newcommand{\HierarchicalBasisFuncs}{\Set{UFH}} \newcommand{\TruncatedBasisFuncs}{\Set{UFT}} \newcommand{\FuncsTruncatedToLevel}[1]{\Set{TK}_{#1}} \newcommand{\FuncsTouchingActiveFuncs}[1]{\Set{T}_{#1}} \newcommand{\FuncsSubsetOfCoarserFuncs}[1]{\Set{S}_{#1}} \newcommand{\RefinementLevelBasis}[1]{\UsplineBasisFuncSetFunctionOf{\RefinementLevelMesh{#1}}} \newcommand{\RefinementLevelSpace}[1]{\QuantityRelatedTo{\UsplineSpace}{\RefinementLevelMesh{#1}}} \newcommand{\BaseAssociated}{\operatorname{\textsf{base}}} \newcommand{\BaseAssociatedFunctionOf}[1]{\QFO{\BaseAssociated}{#1}} \newcommand{\TruncationOp}[2]{\QFO{\operatorname{\textsf{trunc}}_{#1}}{#2}} \newcommand{\EmbeddedToBaseChart}{\EmbeddedModifier{\ParentDomainChart}} \newcommand{\InvEmbeddedToBaseChart}{(\EmbeddedToBaseChart)^{-1}} \newcommand{\RefinementCoefficients}{c^A_B} \newcommand{\RefinementMat}{\Mat{D}} \newcommand{\NthLevelProlongationMat}[1]{\QSB{\ProlongationMat}{#1}} \newcommand{\NthLevelActiveMat}[1]{\QSB{\Mat{A}}{#1}} \newcommand{\NthLevelRefinementMat}[1]{\QSB{\RefinementMat}{#1}} \newcommand{\NthLevelTruncationMat}[1]{\QSB{\Mat{T}}{#1}} \newcommand{\NthLevelBasisMat}[1]{\QSB{\Mat{S}}{#1}} \newcommand{\NthLevelMassMat}[1]{\QSB{\MassMat}{#1}} \newcommand{\FuncIndex}{\operatorname*{\mathsf{ID}}} \newcommand{\MultiLevelRefinementMat}[2]{\QSB{\RefinementMat}{#1 #2}} \newcommand{\BlockRefinementMat}{\BlockModifier{\RefinementMat}} \newcommand{\BlockMassMat}{\BlockModifier{\MassMat}}$

Note: This feature is under development. The command to enable or disable features under development is:

Set Developer Commands {On|OFF}

Geometry models often have small features, which can be difficult to resolve in a mesh. In fact, these features are sometimes too small to see, and are revealed only when the user attempts to mesh the geometry. Automatic detail suppression identifies and removes the following types of features from the geometric model:

• valence-2 vertices

• short edges

• small faces

Details are removed using virtual geometry , which means they can be restored later if desired.

There are several stages to the automatic detail suppression process, all of which can be controlled separately by the user. Small details are identified using the command:

Detail <ref entity list> [identify] [dimension <dim> [only]]

The results are placed in a series of groups named "detail_vertices", "detail_edges", "detail_faces" and "detail_volumes". These details can be drawn or highlighted using the normal group commands:

Draw {detail_vertices | detail_edges | detail_faces | detail_volumes}

Highlight {detail_vertices | detail_edges | detail_faces | detail_volumes}

Or by using the following command:

Detail <ref entity list> draw [dimension <dim> [only]]

Details are removed automatically from the model using the command:

Detail <ref entity list> remove [dimension <dim> [only]]

The dimension option is used to identify the maximum dimension of entities examined for small detail identification (<dim> is 3, 2, 1 for volumes, surface, and curves, respectively). If the only identifier is specified, only entities of the specified dimension are examined, otherwise that dimension and all lower dimensions are examined.

In some cases, details are identified which the user would like to retain in the model; likewise, the algorithm used to identify small details sometimes misses small details the user would like removed from the model. To include or exclude geometric entities from the list of small details to be removed, the following command is used:

Detail <ref entity list> [include | exclude]

15.1.1.1Example

Shown below is a model of a game die meshed with identical mesh size, with details included and removed.

Note: "Small" Measurement

Automatic detail suppression identifies "small" geometric entities by comparing their "size" to the mesh size assigned by the user to the entity. Anything smaller than that size is designated as a detail and put in the appropriate detail group (e.g. detail_faces, detail_edges, etc.). The size of an edge is simply its arc length; surfaces and volumes are measured using the "hydraulic diameter" (see next note).

Note: Hydraulic Diameter

The hydraulic diameter of a surface is computed as 4.0*A/P, where A is the surface area and P is the summed arc lengths of all bounding curves. For circles, the hydraulic diameter is the circle diameter; for squares, it is the length of the bounding curves. Similarly, for volumes, the hydraulic diameter is computed as 6.0*V/A, which evaluates to the diameter and bounding curve length for perfect spheres and cubes, respectively.

15.1.2Automatic Geometry Decomposition

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcommand{\CurveCAD}{\CurveRelatedTo{\SymbolCAD}} \newcommand{\CurveCADModified}{\CurveRelatedTo{\SymbolCADModified}} \newcommand{\CurveMesh}{\CurveRelatedTo{\Partition}} \newcommand{\CurveUspline}{\CurveRelatedTo{\MeshUspline}} \newcommand{\dCurve}{\Differential[\Curve]} \newcommand{\PointCAD}{\PointRelatedTo{\SymbolCAD}} \newcommand{\PointCADModified}{\PointRelatedTo{\SymbolCADModified}} \newcommand{\PointUspline}{\PointRelatedTo{\MeshUspline}} \newcommand{\Segment}[1]{\QuantityChildOf{#1}{\SymbolSegment}} \newcommand{\SegmentOfVolumeEnv}{\Segment{\VolumeEnv}} \newcommand{\SegmentOfSurface}{\Segment{\Surface}} \newcommand{\Hex}{\Segment{}_{h}} \newcommand{\Tet}{\Segment{}_{t}} \newcommand{\SegmentParamDomain}[1]{\QuantityRelatedTo{\ParamDomain}{#1}} \newcommand{\SegmentParamDomainOfVolumeEnv}{\QuantityRelatedTo{\ParamDomain}{\Segment{\VolumeEnv}}} \newcommand{\SegmentParamDomainOfSurface}{\QuantityRelatedTo{\ParamDomain}{\Segment{\Surface}}} \newcommand{\SegmentSet}{\SymbolSegmentSet} \newcommand{\SegmentSetFunctionOf}[1]{\QuantityFunctionOf{\SegmentSet}{#1}} \newcommand{\SegmentSetOutside}{\SegmentSet^{\SymbolOutside}} \newcommand{\SegmentSetInside}{\SegmentSet^{\SymbolInside}} \newcommand{\SegmentSetHybrid}{\SegmentSet^{\SymbolHybrid}} \newcommand{\PartitionFunctionOf}[1]{\QuantityFunctionOf{\Partition}{#1}} \newcommand{\PartitionBezierExtraction}[1]{\QuantityFunctionOf{\SymbolPartition^{B}}{#1}} \newcommand{\PartitionTessellation}[1]{\QuantityFunctionOf{\SymbolPartition^{T}}{#1}} \newcommand{\PartitionTessellationOfUspline}{\PartitionTessellation{\MeshUspline}} \newcommand{\PartitionTessellationMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldCoeff}{\SymbolManifoldCoeff} \newcommand{\ManifoldCoeffUpper}{\SymbolManifoldCoeffUpper} \newcommand{\ManifoldCoeffUspline}{\QuantityRelatedTo{\SymbolManifoldCoeffUspline}{\MeshUspline}} \newcommand{\ManifoldCoeffBernstein}{\QuantityRelatedTo{\SymbolManifoldCoeffBernstein}{\MeshBezier}} \newcommand{\ManifoldCoeffVec}{\Vec{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffSet}{\Set{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVec}{\Vec{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVecCell}{\QuantityRelatedTo{\Vec{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsVecUsplineCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsVecSubmeshCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinSegmentOfVolumeEnv}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\SegmentOfVolumeEnv}} \newcommand{\ManifoldCoeffsSet}{\Set{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsSetCell}{\QuantityRelatedTo{\Set{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsSetUsplineCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsSetBernsteinCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsSetSubmeshCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldTemporalMap}[2]{\QuantityRelatedTo{#2}{#1,\SymbolTime}} \newcommand{\ManifoldPartitionMap}{\ManifoldMap{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldCADMap}{\ManifoldMap{\ParamDomainOnCAD}{\Manifold}} \newcommand{\ManifoldCADMapModified}{\ManifoldMap{\ParamDomainOnCADModified}{\Manifold}} \newcommand{\ManifoldBezierMap}{\ManifoldMap{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMap}{\ManifoldMap{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMap}{\ManifoldMap{\ParamDomain}{\Volume}} \newcommand{\SurfaceMap}{\ManifoldMap{\ParamDomainBdry}{\Surface}} \newcommand{\ManifoldMapDef}[2]{\FuncDef{\ManifoldMap{#1}{#2}}{#1}{#2}} \newcommand{\ManifoldMapInverseDef}[2]{\FuncDef{\Inverse{\ManifoldMap{#1}{#2}}}{#2}{#1}} \newcommand{\ManifoldTemporalMapDef}[2]{\FuncDef{\ManifoldTemporalMap{#1}{#2}}{#1\otimes\Reals_{+}}{#2}} \newcommand{\ManifoldPartitionMapDef}{\ManifoldMapDef{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldBezierMapDef}{\ManifoldMapDef{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMapDef}{\ManifoldMapDef{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMapDef}{\ManifoldMapDef{\ParamDomain}{\Volume}} \newcommand{\SurfaceMapDef}{\ManifoldMapDef{\ParamDomainBdry}{\Surface}} \newcommand{\SurfaceToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\Surface}} \newcommand{\ManifoldCoordDetailed}[2]{\QCO{#1}{#2}} \newcommand{\ManifoldCoordVecDetailed}[2]{\QCO{#1}{\Vec{#2}}} \newcommand{\ManifoldCoord}{x} \newcommand{\ManifoldCoordVec}{\Vec{x}} \newcommand{\ManifoldPartitionMapCoord}{\ManifoldCoordDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldPartitionMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoord}{\ManifoldCoordDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\CovariantBasisSurfVec}{\Vec{\SymbolCovariantBasisSurf}} \newcommand{\CovariantBasisVolVec}{\Vec{\SymbolCovariantBasisVol}} \newcommand{\MetricComp}{\SymbolMetric} \newcommand{\MetricTen}{\Mat{\MetricComp}} \newcommand{\CurvatureComp}{\SymbolCurvature} \newcommand{\CurvatureTen}{\Mat{\CurvatureComp}} \newcommand{\CurvCoordIdOne}{\SymbolCurvCoordIdOne} \newcommand{\CurvCoordIdTwo}{\SymbolCurvCoordIdTwo} \newcommand{\CurvCoordIdThree}{\SymbolCurvCoordIdThree} \newcommand{\OrthogonalCoordTransform}{\Mat{\SymbolOrthogonalTransform}} \newcommand{\InversionPointTen}{\Vec{p}} \newcommand{\InversionPointComp}{p} \newcommand{\BoundingVolume}[1]{\QuantityFunctionOf{\Set{bv}}{#1}} \newcommand{\BoundingVolumeSet}[1]{\QuantityFunctionOf{\Set{BV}}{#1}} \newcommand{\BoundingVolumeTree}[1]{\QuantityFunctionOf{\Set{BVH}}{#1}} \newcommand{\AxisAlignedBoundingBox}[1]{\QuantityFunctionOf{\Set{AABB}}{#1}} \newcommand{\AABBCornerLower}{\Vec{c}^l} \newcommand{\AABBCornerLowerComp}{c^l} \newcommand{\AABBCornerUpper}{\Vec{c}^u} \newcommand{\AABBCornerUpperComp}{c^u} \newcommand{\LowerBound}[2]{B^l\left(#1,#2\right)} \newcommand{\UpperBound}[2]{B^u\left(#1,#2\right)} \newcommand{\UpperBoundValue}{U} \newcommand{\UpperBoundValueBV}{U^{\text{BV}}} \newcommand{\UpperBoundValuePoints}{U^{\text{point}}} \newcommand{\GapTolerance}{\varepsilon^{\text{gap}}} \newcommand{\NearestCells}[3][]{\Set{C}_{#1}\left(#2,#3\right)} \newcommand{\BVHNearestGeom}[3][]{c_{#1}\left(#2,#3\right)} \newcommand{\BVHGeomSetOfSets}{\Set{G}} \newcommand{\BVHTessPointSet}{\Set{P}} \newcommand{\BVHBVSet}{\Set{L}} \newcommand{\SimplexMap}[1]{\QuantityFunctionOf{\Mat{L}}{#1}} \newcommand{\ParamCoordVecTarget}{\ParamCoordVecSimple_0} \newcommand{\SpatialCoordVecTarget}{\SpatialCoordVec_0} \newcommand{\SpatialCoordVecToSegmentSetMap}{\SegmentSet^f} \newcommand{\SpatialCoordVecToParamCoordVecSetMap}{\Inverse{\widetilde{\ManifoldMap{\ParamDomainEnv}{\Surface}}}} \newcommand{\HessMatComp}{H} \newcommand{\HessMatTen}{\Mat{\HessMatComp}} \newcommand{\QuadraturePointEnv}[2]{\SymbolEnvModifier{\QuadraturePoint{#1}{#2}}} \newcommand{\QuadraturePoint}[2]{\SymbolQuadraturePoint_{#1}^{#2}} \newcommand{\QuadraturePointToElemIndexMap}[1]{\operatorname{qe}(#1)} \newcommand{\QuadratureWeightEnv}[2]{\SymbolEnvModifier{\QuadratureWeight{#1}{#2}}} \newcommand{\QuadratureWeight}[2]{\SymbolQuadratureWeight_{#1}^{#2}} \newcommand{\QuadratureSet}{\Set{\SymbolQuadratureSet}} \newcommand{\QuadratureSetInside}{\QuadratureSet^{\SymbolInside}} \newcommand{\QuadratureSetOutside}{\QuadratureSet^{\SymbolOutside}} \newcommand{\QuadratureSubdDepth}{k} \newcommand{\ClosestPointMap}[1]{\QuantityChildOf{#1}{\Vec{\SymbolClosestPointMap}}} \newcommand{\ClosestPointMapCAD}{\ClosestPointMap{\SymbolCAD}} \newcommand{\ClosestPointMapCADModified}{\ClosestPointMap{\SymbolCADModified}} \newcommand{\ProjectionInto}[1]{\QuantityRelatedTo{\SymbolProjection}{#1}} \newcommand{\ProjectionIntoBernsteinCell}{\ProjectionInto{\Cell}} \newcommand{\ProjectionIntoBernsteinElem}{\ProjectionInto{\Elem}} \newcommand{\ProjectionIntoMeshBezier}{\ProjectionInto{\MeshBezier}} \newcommand{\ProjectionIntoMeshUspline}{\ProjectionInto{\MeshUspline}} \newcommand{\LinearInterpolationOp}[1]{\QRT{\SymbolLinearInterpolation}{#1}} \newcommand{\Valence}{k} \newcommand{\ArbitraryVector}[1]{\QSB{v}{#1}} \newcommand{\RotationMatrix}[1]{R^{#1}} \newcommand{\RepVecSymbol}{u} \newcommand{\RepVec}[1]{\QSB{\RepVecSymbol}{#1}} \newcommand{\RepVecVec}{\Vec{\RepVecSymbol}} \newcommand{\AlignmentField}{\RepVecVec'} \newcommand{\BiharmonicEnergy}{\QSB{E}{B}} \newcommand{\PrescribedRepVec}[1]{\QSB{d}{#1}} \newcommand{\AlignmentParameter}{\lambda} \newcommand{\SingularityIndex}[1]{\QSB{\chi}{#1}} \newcommand{\AngularDefect}[1]{\QSB{K}{#1}} \newcommand{\ArbitraryAngle}{\theta} \newcommand{\ParallelTransport}[1]{\QSB{\varphi}{#1}} \newcommand{\MinusPiToPi}[1]{\lfloor #1 \rfloor} \newcommand{\AreaOperator}[1]{\QFO{\operatorname{area}}{#1}} \newcommand{\VectorAngle}[1]{\QFO{\operatorname{arg}}{#1}} \newcommand{\DistanceFunction}{\phi} \newcommand{\DistanceGradient}{X} \newcommand{\HeatField}{\eta} \newcommand{\RegionAtZeroDistance}{\gamma}$$\newcommand{\SymbolDisp}{u} \newcommand{\SymbolDispUpper}{U} \newcommand{\SymbolVelocity}{v} \newcommand{\SymbolVelocityUpper}{V} \newcommand{\SymbolAcceleration}{a} \newcommand{\SymbolAccelerationUpper}{A} \newcommand{\SymbolMass}{M} \newcommand{\SymbolLength}{L} \newcommand{\SymbolArea}{A} \newcommand{\SymbolConstraint}{g} \newcommand{\SymbolConstraintUpper}{G} \newcommand{\SymbolPenalty}{\varepsilon} \newcommand{\SymbolLagrangeMultRef}{\Lambda} \newcommand{\SymbolLagrangeMultCurr}{\lambda} \newcommand{\SymbolFict}{f} \newcommand{\SymbolTracForce}{h} \newcommand{\SymbolTracForceUpper}{H} \newcommand{\SymbolBodyForce}{b} \newcommand{\SymbolBodyForceUpper}{B} \newcommand{\SymbolVolumeRef}{\SymbolVolumeUpper} \newcommand{\SymbolSurfaceRef}{\SymbolSurfaceUpper} \newcommand{\SymbolCurveRef}{\SymbolCurveUpper} \newcommand{\SymbolPointRef}{\SymbolPointUpper} \newcommand{\SymbolVolumeCurr}{\SymbolVolume} \newcommand{\SymbolSurfaceCurr}{\SymbolSurface} \newcommand{\SymbolCurveCurr}{\SymbolCurve} \newcommand{\SymbolPointCurr}{\SymbolPoint} \newcommand{\SymbolDeformGradInc}{f} \newcommand{\SymbolDeformGrad}{F} \newcommand{\SymbolStrainGreenLagrange}{E} \newcommand{\SymbolDeformCauchyGreenLeft}{b} \newcommand{\SymbolDeformCauchyGreenRight}{C} \newcommand{\SymbolStrainDisp}{B} \newcommand{\SymbolStrainSymGrad}{\epsilon} \newcommand{\SymbolStrainPlasticEquiv}{\alpha} \newcommand{\SymbolHardeningPlastic}{k} \newcommand{\SymbolYieldFunction}{f} \newcommand{\SymbolConsistencyParameterPlastic}{\gamma} \newcommand{\SymbolPlasticModuliScaling}{\beta} \newcommand{\SymbolYieldSurfaceNormal}{n} \newcommand{\SymbolEnergy}{\Pi} \newcommand{\SymbolEnergyDensityStrain}{\Psi} \newcommand{\SymbolEnergyDensityStrainVol}{U} \newcommand{\SymbolResidual}{R} \newcommand{\SymbolForce}{F} \newcommand{\SymbolStiffness}{K} \newcommand{\SymbolSolution}{d} \newcommand{\ParamDomainBdryDisp}{\ParamDomainBdry^{\SymbolDisp}} \newcommand{\ParamDomainBdryTrac}{\ParamDomainBdry^{\SymbolTracForce}} \newcommand{\VolumeEnvRef}{\Set{\SymbolEnvModifier{\SymbolVolumeRef}}} \newcommand{\VolumeRef}{\Set{\SymbolVolumeRef}} \newcommand{\VolumeRefClosure}{\overline{\VolumeRef}} \newcommand{\VolumeRefFict}{\VolumeEnvRef\setminus\VolumeRef} \newcommand{\dVolumeRef}{\Differential[\VolumeRef]} \newcommand{\VolumeIndicatorDef}{\FuncDef{\VolumeIndicator_{\PenaltyStiffness}}{\VolumeEnvRef}{\Reals_+}} \newcommand{\SurfaceEnvRef}{\Set{\SymbolEnvModifier{\SymbolSurfaceRef}}} \newcommand{\SurfaceRef}{\Set{\SymbolSurfaceRef}} \newcommand{\SurfaceRefWildCard}{\SurfaceRef^{\SymbolWildCard}} \newcommand{\SurfaceRefDisp}{\SurfaceRef^{\SymbolDisp}} \newcommand{\SurfaceRefTrac}{\SurfaceRef^{\SymbolTracForce}} \newcommand{\SurfaceRefFict}{\SurfaceRef^{\SymbolFict}} \newcommand{\SurfaceRefDispExternal}{\SurfaceRefDisp\setminus\SurfaceRefFict} \newcommand{\SurfaceRefTracExternal}{\SurfaceRefTrac\setminus\SurfaceRefFict} \newcommand{\SurfaceRefFictTrac}{\SurfaceRefTrac\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictDisp}{\SurfaceRefDisp\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictExternal}{\SurfaceRefFict\setminus\SurfaceRef} \newcommand{\dSurfaceRef}{\Differential[\SurfaceRef]} \newcommand{\CurveRef}{\Set{\SymbolCurveRef}} \newcommand{\dCurveRef}{\Differential[\CurveRef]} \newcommand{\PointRef}{\Set{\SymbolPointRef}} \newcommand{\PointRefDisp}{\PointRef^{\SymbolDisp}} \newcommand{\PointRefTrac}{\PointRef^{\SymbolTracForce}} \newcommand{\dPointRef}{\Differential[\PointRef]} \newcommand{\dPointRefTrac}{\Differential[\PointRefTrac]} \newcommand{\RefCoord}[1]{\ManifoldCoordDetailed{#1}{X}} \newcommand{\RefCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{X}} \newcommand{\VolumeEnvRefCoord}{\RefCoord{\VolumeEnvRef}} \newcommand{\VolumeEnvRefCoordVec}{\RefCoordVec{\VolumeEnvRef}} \newcommand{\VolumeRefCoord}{\RefCoord{\VolumeRef}} \newcommand{\VolumeRefCoordVec}{\RefCoordVec{\VolumeRef}} \newcommand{\SurfaceRefCoord}{\RefCoord{\SurfaceRef}} \newcommand{\SurfaceRefCoordVec}{\RefCoordVec{\SurfaceRef}} \newcommand{\SurfaceRefDispCoord}{\RefCoord{\SurfaceRefDisp}} \newcommand{\SurfaceRefDispCoordVec}{\RefCoordVec{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracCoord}{\RefCoord{\SurfaceRefTrac}} \newcommand{\SurfaceRefTracCoordVec}{\RefCoordVec{\SurfaceRefTrac}} \newcommand{\CurveRefCoord}{\RefCoord{\CurveRef}} \newcommand{\CurveRefCoordVec}{\RefCoordVec{\CurveRef}} \newcommand{\UsplineBasisFuncOverCurveRef}[1]{\UsplineBasisFuncDetailed{\CurveRef}{#1}} \newcommand{\UsplineBasisFuncOverSurfaceRefDisp}[1]{\UsplineBasisFuncDetailed{\SurfaceRefDisp}{#1}} \newcommand{\VolumeEnvCurr}{\Set{\SymbolEnvModifier{\SymbolVolumeCurr}}} \newcommand{\VolumeCurr}{\Set{\SymbolVolumeCurr}} \newcommand{\VolumeCurrClosure}{\overline{\VolumeCurr}} \newcommand{\dVolumeCurr}{\Differential[\VolumeCurr]} \newcommand{\SurfaceEnvCurr}{\Set{\SymbolEnvModifier{\SymbolSurfaceCurr}}} \newcommand{\SurfaceCurr}{\Set{\SymbolSurfaceCurr}} \newcommand{\SurfaceCurrDisp}{\SurfaceCurr^{\SymbolDisp}} \newcommand{\SurfaceCurrTrac}{\SurfaceCurr^{\SymbolTracForce}} \newcommand{\dSurfaceCurr}{\Differential[\SurfaceCurr]} \newcommand{\CurveCurr}{\Set{\SymbolCurveCurr}} \newcommand{\dCurveCurr}{\Differential[\CurveCurr]} \newcommand{\PointCurr}{\Set{\SymbolPointCurr}} \newcommand{\PointCurrDisp}{\PointCurr^{\SymbolDisp}} \newcommand{\PointCurrTrac}{\PointCurr^{\SymbolTracForce}} \newcommand{\dPointCurr}{\Differential[\PointCurr]} \newcommand{\CurrCoord}[1]{\ManifoldCoordDetailed{#1}{x}} \newcommand{\CurrCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{x}} \newcommand{\VolumeEnvCurrCoord}{\CurrCoord{\VolumeEnvCurr}} \newcommand{\VolumeEnvCurrCoordVec}{\CurrCoordVec{\VolumeEnvCurr}} \newcommand{\VolumeCurrCoord}{\CurrCoord{\VolumeCurr}} \newcommand{\VolumeCurrCoordVec}{\CurrCoordVec{\VolumeCurr}} \newcommand{\SurfaceCurrCoord}{\CurrCoord{\SurfaceCurr}} \newcommand{\SurfaceCurrCoordVec}{\CurrCoordVec{\SurfaceCurr}} \newcommand{\SurfaceCurrDispCoord}{\CurrCoord{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrDispCoordVec}{\CurrCoordVec{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrTracCoord}{\CurrCoord{\SurfaceCurrTrac}} \newcommand{\SurfaceCurrTracCoordVec}{\CurrCoordVec{\SurfaceCurrTrac}} \newcommand{\CurveCurrCoord}{\CurrCoord{\CurveRef}} \newcommand{\CurveCurrCoordVec}{\CurrCoordVec{\CurveRef}} \newcommand{\VolumeEnvRefMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\GenericGradOverVolumeEnvRefMap}[1]{\Grad{\VolumeEnvRefMap}{#1}} \newcommand{\VolumeRefMap}{\ManifoldMap{\ParamDomain}{\VolumeRef}} \newcommand{\GenericGradOverVolumeRefMap}[1]{\Grad{\VolumeRefMap}{#1}} \newcommand{\SurfaceRefDispMap}{\ManifoldMap{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMap}{\ManifoldMap{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\CurveRefMap}{\ManifoldMap{\ParamDomain}{\CurveRef}} \newcommand{\GenericGradOverCurveRefMap}[1]{\Grad{\CurveRefMap}{#1}} \newcommand{\VolumeEnvRefMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\SurfaceRefDispMapDef}{\ManifoldMapDef{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMapDef}{\ManifoldMapDef{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\SurfaceRefToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRef}} \newcommand{\SurfaceRefDispToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefTrac}} \newcommand{\CurveRefMapDef}{\ManifoldMapDef{\ParamDomain}{\CurveRef}} \newcommand{\GenericDeformMap}{\Vec{\varphi}} \newcommand{\VolumeEnvDeformMap}{\ManifoldMap{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\GenericGradOverVolumeEnvDeformMap}[1]{\Grad{\VolumeEnvDeformMap}{#1}} \newcommand{\VolumeDeformMap}{\ManifoldMap{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMap}{\ManifoldTemporalMap{\VolumeRef}{\VolumeCurr}} \newcommand{\GradVolumeDeformTemporalMap}{\GenericGradOverVolumeRefMap{\VolumeDeformTemporalMap}} \newcommand{\SurfaceDeformDispMap}{\ManifoldMap{\SurfaceRefDisp}{\SurfaceCurrDisp}} \newcommand{\SurfaceDeformTracMap}{\ManifoldMap{\SurfaceRefTrac}{\SurfaceCurrTrac}} \newcommand{\CurveDeformMap}{\ManifoldMap{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMap}{\ManifoldTemporalMap{\CurveRef}{\CurveCurr}} \newcommand{\VolumeDeformMapDef}{\ManifoldMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMapDef}{\ManifoldTemporalMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeEnvDeformMapDef}{\ManifoldMapDef{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\CurveDeformMapDef}{\ManifoldMapDef{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMapDef}{\ManifoldTemporalMapDef{\CurveRef}{\CurveCurr}} \newcommand{\DispTrialSpaceOverVolumeEnvRef}{\SpaceHilbert{U}(\VolumeEnvRef)} \newcommand{\DispTestSpaceOverVolumeEnvRef}{\delta \DispTrialSpaceOverVolumeEnvRef} \newcommand{\DispTrialSpaceOverVolumeRef}{\SpaceHilbert{U}(\VolumeRef)} \newcommand{\DispTestSpaceOverVolumeRef}{\delta \DispTrialSpaceOverVolumeRef} \newcommand{\DispTrialSpaceOverCurveRef}{\SpaceHilbert{U}(\CurveRef)} \newcommand{\DispTestSpaceOverCurveRef}{\delta \DispTrialSpaceOverCurveRef} \newcommand{\DispFieldRefComp}{\SymbolDispUpper} \newcommand{\DispFieldRefTen}{\Vec{\DispFieldRefComp}} \newcommand{\DispFieldCurrComp}{\SymbolDisp} \newcommand{\DispFieldCurrTen}{\Vec{\DispFieldCurrComp}} \newcommand{\VelFieldCurrTen}{\Vec{\SymbolVelocity}} \newcommand{\AccFieldCurrTen}{\Vec{\SymbolAcceleration}} \newcommand{\DeformGradComp}{\SymbolDeformGrad} \newcommand{\DeformGradTen}{\Mat{\DeformGradComp}} \newcommand{\DeformGradDet}{\Det{\DeformGradTen}} \newcommand{\KinematicElast}{e} \newcommand{\KinematicPlast}{p} \newcommand{\DivVolumeEnvRef}[1]{\Div{\VolumeEnvRefCoordVec}{#1}} \newcommand{\DivVolumeEnvCurr}[1]{\Div{\VolumeEnvCurrCoordVec}{#1}} \newcommand{\DeformGradIncComp}{\SymbolDeformGradInc} \newcommand{\DeformGradIncTen}{\Mat{\DeformGradIncComp}} \newcommand{\DeformGradIncDevComp}{\bar{\SymbolDeformGradInc}} \newcommand{\DeformGradIncDevTen}{\bar{\Mat{\DeformGradIncComp}}} \newcommand{\JAsDeformGradDet}{J} \newcommand{\StretchTen}{\Mat{V}} \newcommand{\StrainGreenLagrangeComp}{\SymbolStrainGreenLagrange} \newcommand{\StrainGreenLagrangeTen}{\Mat{\StrainGreenLagrangeComp}} \newcommand{\StrainGreenLagrangeVoigt}{\tilde{\StrainGreenLagrangeTen}} \newcommand{\DeformCauchyGreenRightComp}{\SymbolDeformCauchyGreenRight} \newcommand{\DeformCauchyGreenRightTen}{\Mat{\DeformCauchyGreenRightComp}} \newcommand{\DeformCauchyGreenLeftComp}{\SymbolDeformCauchyGreenLeft} \newcommand{\DeformCauchyGreenLeftTen}{\Mat{\DeformCauchyGreenLeftComp}} \newcommand{\DeformCauchyGreenLeftDevComp}{\bar{\SymbolDeformCauchyGreenLeft}} \newcommand{\DeformCauchyGreenLeftDevTen}{\bar{\Mat{\DeformCauchyGreenLeftComp}}} \newcommand{\StrainSymGradComp}{\SymbolStrainSymGrad} \newcommand{\StrainSymGradTen}{\Mat{\StrainSymGradComp}} \newcommand{\StrainDispMat}{\Mat{\SymbolStrainDisp}} \newcommand{\DeformCauchyGreenRightDevComp}{\bar{\SymbolDeformCauchyGreenRight}} \newcommand{\DeformCauchyGreenRightDevTen}{\bar{\Mat{\DeformCauchyGreenRightComp}}} \newcommand{\KinematicElastoplast}{{\rm ep}} \newcommand{\Trial}{{\rm trial}} \newcommand{\DeformCauchyGreenLeftElasticTenDef}{\DeformCauchyGreenLeftTen^\KinematicElast \DefEq \DeformGradTen^\KinematicElast \DeformGradTen^{\KinematicElast T}} \newcommand{\DeformCauchyGreenLeftElasticDevTenDef}{{\DeformCauchyGreenLeftDevTen}^\KinematicElast \DefEq {\JAsDeformGradDet}^{\KinematicElast-\frac{2}{3}} {\DeformCauchyGreenLeftTen}^\KinematicElast} \newcommand{\DeformCauchyGreenRightPlasticTenDef}{\DeformCauchyGreenRightTen^\KinematicPlast \DefEq \DeformGradTen^{\KinematicPlast T} \DeformGradTen^\KinematicPlast} \newcommand{\StrainPlasticEquiv}{\SymbolStrainPlasticEquiv} \newcommand{\ConsistencyParameterPlasticDiscrete}{\Delta \SymbolConsistencyParameterPlastic} \newcommand{\YieldSurfaceNormalComp}{\SymbolYieldSurfaceNormal} \newcommand{\YieldSurfaceNormalTen}{\Mat{\SymbolYieldSurfaceNormal}} \newcommand{\UnitNormalRefComp}{N} \newcommand{\UnitNormalRefTen}{\Vec{\UnitNormalRefComp}} \newcommand{\UnitNormalCurrComp}{\UnitNormalComp} \newcommand{\UnitNormalCurrTen}{\UnitNormal} \newcommand{\DispFieldOverVolumeEnvRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeEnvCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\DispFieldOverVolumeRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeDeformMap}} \newcommand{\DispFieldOverCurveRefTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\DispFieldOverCurveRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DeformGradOverVolumeRefTenDef}{\FuncDef{\DeformGradTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\DeformGradOverCurveRefTenDef}{\FuncDef{\DeformGradTen}{\CurveRef}{\CurveCurr}} \newcommand{\StrainGreenLagrangeOverVolumeEnvRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\StrainGreenLagrangeOverVolumeRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\StrainGreenLagrangeOverCurveRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\CurveRef}{\CurveCurr}} \newcommand{\DeformCauchyGreenLeftTenDef}{\DeformCauchyGreenLeftTen \DefEq \DeformGradTen \DeformGradTen^T} \newcommand{\DeformCauchyGreenLeftDevTenDef}{\DeformCauchyGreenLeftDevTen \DefEq \DeformGradDet^{-\frac{2}{3}} \DeformCauchyGreenLeftTen} \newcommand{\StressPKOneTen}{\Mat{P}} \newcommand{\StressPKTwoComp}{S} \newcommand{\StressPKTwoTen}{\Mat{\StressPKTwoComp}} \newcommand{\StressPKTwoVoigt}{\tilde{\StressPKTwoTen}} \newcommand{\StressCauchyComp}{\sigma} \newcommand{\StressCauchyTen}{\Mat{\sigma}} \newcommand{\StressCauchyVoigt}{\tilde{\StressCauchyTen}} \newcommand{\StressCauchyMean}{p} \newcommand{\StressCauchyYield}{\StressCauchyComp_Y} \newcommand{\StressKirchhoffComp}{\tau} \newcommand{\StressKirchhoffTen}{\Mat{\tau}} \newcommand{\StressKirchhoffVoigt}{\tilde{\StressKirchhoffTen}} \newcommand{\StressKirchhoffDevComp}{s} \newcommand{\StressKirchhoffDevTen}{\Mat{\StressKirchhoffDevComp}} \newcommand{\ModuliElastRefComp}{C} \newcommand{\ModuliElastRefTen}{\Mat{\ModuliElastRefComp}} \newcommand{\ModuliElastRefVoigt}{\tilde{\ModuliElastRefTen}} \newcommand{\ModuliElastCurrComp}{c} \newcommand{\ModuliElastCurrTen}{\Mat{\ModuliElastCurrComp}} \newcommand{\ModuliElastCurrVoigt}{\tilde{\ModuliElastCurrTen}} \newcommand{\MaterialYoungsModulus}{E} \newcommand{\MaterialPoissonsRatio}{\nu} \newcommand{\MaterialMassDensity}{\rho} \newcommand{\MaterialBulkModulus}{\kappa} \newcommand{\MaterialShearModulus}{\mu} \newcommand{\MaterialShearModulusDev}{\bar{\MaterialShearModulus}} \newcommand{\MaterialThermalExpansion}{\alpha_{\text{thermal}}} \newcommand{\Area}{\SymbolArea} \newcommand{\Length}{\SymbolLength} \newcommand{\Width}{b} \newcommand{\Height}{h} \newcommand{\PenaltyStiffness}{\SymbolPenalty_{\SymbolStiffness}} \newcommand{\PenaltyDisp}{\SymbolPenalty_{\SymbolDisp}} \newcommand{\BodyForceRefComp}{\SymbolBodyForceUpper} \newcommand{\BodyForceRefTen}{\Vec{\BodyForceRefComp}} \newcommand{\BodyForceCurrComp}{\SymbolBodyForce} \newcommand{\BodyForceCurrTen}{\Vec{\BodyForceCurrComp}} \newcommand{\TracForceRefComp}{\SymbolTracForceUpper} \newcommand{\TracForceRefTen}{\Vec{\TracForceRefComp}} \newcommand{\TracForceCurrComp}{\SymbolTracForce} \newcommand{\TracForceCurrTen}{\Vec{\TracForceCurrComp}} \newcommand{\Pressure}{p} \newcommand{\BodyForceOverVolumeEnvRefTenDef}{\FuncDef{\BodyForceRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\BodyForceOverCurveRefCompDef}{\FuncDef{\BodyForceRefComp}{\CurveRef}{\Reals}} \newcommand{\BodyForceOverCurveRefTenDef}{\FuncDef{\BodyForceRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\BodyForceOverCurveCurrCompDef}{\BodyForceCurrComp \DefEq \BodyForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\BodyForceOverCurveCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverSurfaceRefTracTenDef}{\FuncDef{\TracForceRefTen}{\SurfaceRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceCurrTracTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\SurfaceDeformTracMap}} \newcommand{\TracForceOverCurveRefCompDef}{\FuncDef{\TracForceRefComp}{\PointRefTrac}{\Reals}} \newcommand{\TracForceOverCurveRefTenDef}{\FuncDef{\TracForceRefTen}{\PointRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverCurveCurrCompDef}{\TracForceCurrComp \DefEq \TracForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverCurveCurrTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\ConstraintRefTen}{\Vec{\SymbolConstraintUpper}} \newcommand{\LagrangeMultTestSpaceOverSurfaceRef}{\delta \LagrangeMultTrialSpaceOverSurfaceRef} \newcommand{\LagrangeMultTrialSpaceOverSurfaceRef}{\SpaceHilbert{L}(\SurfaceRefDisp)} \newcommand{\LagrangeMultRefComp}{\SymbolLagrangeMultRef} \newcommand{\LagrangeMultRefTen}{\Vec{\LagrangeMultRefComp}} \newcommand{\LagrangeMultCurrComp}{\SymbolLagrangeMultCurr} \newcommand{\LagrangeMultCurrTen}{\Vec{\LagrangeMultCurrComp}} \newcommand{\ConstraintOverSurfaceRefDispTenDef}{\FuncDef{\ConstraintRefTen}{\SurfaceRefDisp}{\SpatialDomain}} \newcommand{\LagrangeMultOverSurfaceCurrTenDef}{\LagrangeMultCurrTen \DefEq \LagrangeMultRefTen \circ \Inverse{\SurfaceDeformDispMap}} \newcommand{\Energy}{\SymbolEnergy} \newcommand{\EnergyElastic}[1]{\QFO{\Energy}{#1}} \newcommand{\EnergyElasticNoArg}{\QFONA{\Energy}} \newcommand{\EnergyEnv}{\SymbolEnvModifier{\Energy}} \newcommand{\EnergyInside}{\Energy^{\SymbolInside}} \newcommand{\EnergyOutside}{\Energy^{\SymbolOutside}} \newcommand{\EnergyConstraint}{\Energy^{\LagrangeMultCurrComp}} \newcommand{\EnergyDensityStrain}{\SymbolEnergyDensityStrain} \newcommand{\EnergyDensityStrainVol}{\SymbolEnergyDensityStrainVol} \newcommand{\EnergyDensityStrainDev}{\bar{\SymbolEnergyDensityStrain}} \newcommand{\EnergyInsideOverVolumeEnvRefDef}{\FuncDef{\EnergyInside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyOutsideOverVolumeEnvRefDef}{\FuncDef{\EnergyOutside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefDef}{\FuncDef{\EnergyConstraint}{\DispTrialSpaceOverVolumeEnvRef\TensorProduct\LagrangeMultTrialSpaceOverSurfaceRef}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefDef}{\FuncDef{\EnergyDensityStrain}{\VolumeEnvRef}{\Reals}} \newcommand{\ResidualComp}{\SymbolResidual} \newcommand{\ResidualVec}{\Vec{\ResidualComp}} \newcommand{\ForceVec}{\Vec{\SymbolForce}} \newcommand{\ForceInternalVec}{\ForceVec^{int}} \newcommand{\ForceExternalVec}{\ForceVec^{ext}} \newcommand{\ForceConstraintPenaltyVec}{\ForceVec^{\PenaltyDisp}} \newcommand{\ForceConstraintLagrangeVec}{\ForceVec^{\lambda1}} \newcommand{\ForceConstraintVec}{\ForceVec^{\lambda2}} \newcommand{\StiffnessMat}{\Mat{\SymbolStiffness}} \newcommand{\StiffnessMaterialMat}{\StiffnessMat^{m}} \newcommand{\StiffnessGeometricMat}{\StiffnessMat^{g}} \newcommand{\StiffnessPenaltyMat}{\StiffnessMat^{\PenaltyDisp}} \newcommand{\StiffnessLagrangeMat}{\StiffnessMat^{\LagrangeMultCurrComp}} \newcommand{\MassMat}{\Mat{\SymbolMass}} \newcommand{\LumpedMassMat}{\tilde{\MassMat}} \newcommand{\SolutionComp}{\SymbolSolution} \newcommand{\Solution}{\Vec{\SymbolSolution}} \newcommand{\SolutionDisp}{\Solution^{\DispFieldCurrComp}} \newcommand{\SolutionLagrange}{\Solution^{\LagrangeMultCurrComp}} \newcommand{\Flex}[1]{\mathcal{F}_{#1}} \newcommand{\FlexIt}{\mathcal{F}} \newcommand{\FlexFEA}{\Flex{\bar{0}}} \newcommand{\FlexFEAModified}{\Flex{0}} \newcommand{\FlexOne}{\Flex{1}} \newcommand{\FlexImmersed}{\Flex{\infty}} \newcommand{\FlexInfty}{\mathcal{F}{\infty}} \newcommand{\FlexSpectrum}{\overleftrightarrow{\mathcal{F}}} \newcommand{\FlexSpectrumId}{i} \newcommand{\TimeStep}{\Delta \SymbolTime} \newcommand{\SpectralRadius}{\rho_{\infty}}$$\newcommand{\SymbolPressureContact}{p} \newcommand{\SymbolContactGap}{g} \newcommand{\NumUsplineBasisFuncsS}{\Size{\UsplineBasisFuncSetOnMeshUspline^s}} \newcommand{\NumUsplineBasisFuncsM}{\Size{\UsplineBasisFuncSetOnMeshUspline^m}} \newcommand{\NumUsplineBasisFuncsG}{\Size{\UsplineBasisFuncSetOnMeshUspline^\alpha}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactS}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactS}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactM}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactM}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactG}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactG}}} \newcommand{\ParamDomainEnvS}{\ParamDomainEnv^{s}} \newcommand{\ParamDomainEnvM}{\ParamDomainEnv^{m}} \newcommand{\ParamDomainEnvG}{\ParamDomainEnv^{\alpha}} \newcommand{\ParamDomainS}{\ParamDomain^{s}} \newcommand{\ParamDomainM}{\ParamDomain^{m}} \newcommand{\ParamDomainG}{\ParamDomain^\alpha} \newcommand{\ParamDomainClosureS}{\overline{\ParamDomain}^s} \newcommand{\ParamDomainClosureM}{\overline{\ParamDomain}^m} \newcommand{\ParamDomainClosureG}{\overline{\ParamDomain}^\alpha} \newcommand{\ParamDomainBdryG}{\ParamDomainBdry^\alpha} \newcommand{\ParamDomainBdryContactS}{\ParamDomainBdry^{c,s}} \newcommand{\ParamDomainBdryContactM}{\ParamDomainBdry^{c,m}} \newcommand{\ParamDomainBdryContactG}{\ParamDomainBdry^{c,\alpha}} \newcommand{\ParamDomainBdryTangentComp}{A} \newcommand{\ParamDomainBdryTangentTen}{\Mat{\ParamDomainBdryTangentComp}} \newcommand{\ParamDetJacobianS}{j^s} \newcommand{\ParamDomainGCoordVec}{\ParamCoordVecSimple^{\ParamDomainG}} \newcommand{\ParamDomainGCoord}{\ParamCoordSimple^{\ParamDomainG}} \newcommand{\ParamDomainEnvGCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvGCoord}{\ParamCoordSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvSCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvSCoord}{\ParamCoordSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvMCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainEnvMCoord}{\ParamCoordSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainBdryContactGCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactGCoord}{\ParamCoordSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactSCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactSCoord}{\ParamCoordSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactMCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactM}} \newcommand{\ParamDomainBdryContactMCoord}{\ParamCoordSimple^{\ParamDomainBdryContactM}} \newcommand{\SegmentParamDomainOfVolumeEnvRefS}{\QuantityRelatedTo{\ParamDomainEnvS}{\SegmentOfVolumeEnvRefS}} \newcommand{\SegmentParamDomainOfVolumeEnvRefM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvRefM}} \newcommand{\SegmentParamDomainOfVolumeEnvCurrM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvCurrM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactS}{\QuantityRelatedTo{\ParamDomainBdryContactS}{\SegmentOfSurfaceCurrContactS}} \newcommand{\SegmentParamDomainOfSurfaceRefContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceRefContactM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceCurrContactM}} \newcommand{\UsplineBasisFuncS}{\UsplineBasisFunc^{s}} \newcommand{\UsplineBasisFuncM}{\UsplineBasisFunc^{m}} \newcommand{\UsplineBasisFuncG}{\UsplineBasisFunc^{\alpha}} \newcommand{\UsplineBasisFuncParamDomainBdryContactS}{\UsplineBasisFunc^{\ParamDomainBdryContactS}} \newcommand{\UsplineBasisFuncParamDomainBdryContactM}{\UsplineBasisFunc^{\ParamDomainBdryContactM}} \newcommand{\UsplineBasisFuncParamDomainBdryContactG}{\UsplineBasisFunc^{\ParamDomainBdryContactG}} \newcommand{\UsplineBasisSymmSecondOrderComp}{S} \newcommand{\UsplineBasisSymmSecondOrderTen}{\Mat{\UsplineBasisSymmSecondOrderComp}} \newcommand{\UsplineBasisSymmFourthOrderComp}{E} \newcommand{\UsplineBasisSymmSixthOrderComp}{Z} \newcommand{\VolumeEnvRefG}{\VolumeEnvRef^{\alpha}} \newcommand{\VolumeEnvRefS}{\VolumeEnvRef^{s}} \newcommand{\VolumeEnvRefM}{\VolumeEnvRef^{m}} \newcommand{\VolumeRefG}{\VolumeRef^{\alpha}} \newcommand{\VolumeRefS}{\VolumeRef^{s}} \newcommand{\VolumeRefM}{\VolumeRef^{m}} \newcommand{\VolumeRefClosureG}{\VolumeRefClosure^\alpha} \newcommand{\VolumeRefClosureS}{\VolumeRefClosure^s} \newcommand{\VolumeRefClosureM}{\VolumeRefClosure^m} \newcommand{\SurfaceRefG}{\SurfaceRef^\alpha} \newcommand{\SurfaceRefS}{\SurfaceRef^s} \newcommand{\SurfaceRefM}{\SurfaceRef^m} \newcommand{\SurfaceRefTracG}{\SurfaceRef^{\SymbolTracForce,\alpha}} \newcommand{\SurfaceRefDispG}{\SurfaceRef^{\SymbolDisp,\alpha}} \newcommand{\SurfaceRefContactG}{\SurfaceRef^{c,\alpha}} \newcommand{\SurfaceRefContactS}{\SurfaceRef^{c,s}} \newcommand{\SurfaceRefContactM}{\SurfaceRef^{c,m}} \newcommand{\VolumeEnvRefSCoordVec}{\RefCoordVec{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMCoordVec}{\RefCoordVec{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGCoordVec}{\RefCoordVec{\VolumeEnvRefG}} \newcommand{\VolumeRefGCoordVec}{\RefCoordVec{\VolumeRefG}} \newcommand{\SurfaceRefContactSCoord}{\RefCoord{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactSCoordVec}{\RefCoordVec{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMCoord}{\RefCoord{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactMCoordVec}{\RefCoordVec{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGCoord}{\RefCoord{\SurfaceRefContactG}} \newcommand{\SurfaceRefContactGCoordVec}{\RefCoordVec{\SurfaceRefContactG}} \newcommand{\SurfaceRefDispGCoordVec}{\RefCoordVec{\SurfaceRefDispG}} \newcommand{\SegmentOfVolumeEnvRefS}{\Segment{\VolumeEnvRefS}} \newcommand{\SegmentOfVolumeEnvRefM}{\Segment{\VolumeEnvRefM}} \newcommand{\SegmentOfSurfaceRefContactS}{\Segment{\SurfaceRefContactS}} \newcommand{\SegmentOfSurfaceRefContactM}{\Segment{\SurfaceRefContactM}} \newcommand{\VolumeEnvCurrG}{\VolumeEnvCurr^{\alpha}} \newcommand{\VolumeEnvCurrS}{\VolumeEnvCurr^{s}} \newcommand{\VolumeEnvCurrM}{\VolumeEnvCurr^{m}} \newcommand{\VolumeCurrG}{\VolumeCurr^{\alpha}} \newcommand{\VolumeCurrS}{\VolumeCurr^{s}} \newcommand{\VolumeCurrM}{\VolumeCurr^{m}} \newcommand{\VolumeCurrClosureG}{\VolumeCurrClosure^\alpha} \newcommand{\VolumeCurrClosureS}{\VolumeCurrClosure^s} \newcommand{\VolumeCurrClosureM}{\VolumeCurrClosure^m} \newcommand{\SurfaceCurrG}{\SurfaceCurr^\alpha} \newcommand{\SurfaceCurrS}{\SurfaceCurr^s} \newcommand{\SurfaceCurrM}{\SurfaceCurr^m} \newcommand{\SurfaceCurrContact}{\SurfaceCurr^{c}} \newcommand{\SurfaceCurrContactG}{\SurfaceCurr^{c,\alpha}} \newcommand{\SurfaceCurrContactS}{\SurfaceCurr^{c,s}} \newcommand{\SurfaceCurrContactM}{\SurfaceCurr^{c,m}} \newcommand{\VolumeEnvCurrSCoordVec}{\CurrCoordVec{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMCoordVec}{\CurrCoordVec{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGCoordVec}{\CurrCoordVec{\VolumeEnvCurrG}} \newcommand{\VolumeCurrGCoordVec}{\CurrCoordVec{\VolumeCurrG}} \newcommand{\SurfaceCurrContactSCoord}{\CurrCoord{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactSCoordVec}{\CurrCoordVec{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMCoord}{\CurrCoord{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactMCoordVec}{\CurrCoordVec{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGCoord}{\CurrCoord{\SurfaceCurrContactG}} \newcommand{\SurfaceCurrContactGCoordVec}{\CurrCoordVec{\SurfaceCurrContactG}} \newcommand{\SegmentOfVolumeEnvCurrS}{\Segment{\VolumeEnvCurrS}} \newcommand{\SegmentOfVolumeEnvCurrM}{\Segment{\VolumeEnvCurrM}} \newcommand{\SegmentOfSurfaceCurrContactS}{\Segment{\SurfaceCurrContactS}} \newcommand{\SegmentOfSurfaceCurrContactM}{\Segment{\SurfaceCurrContactM}} \newcommand{\VolumeEnvRefSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeEnvRefSMapInv}{\Inverse{\VolumeEnvRefSMap}} \newcommand{\VolumeEnvRefMMapInv}{\Inverse{\VolumeEnvRefMMap}} \newcommand{\VolumeEnvRefGMapInv}{\Inverse{\VolumeEnvRefGMap}} \newcommand{\VolumeRefClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeRefClosureS}} \newcommand{\VolumeRefClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}} \newcommand{\VolumeRefClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\VolumeRefSMap}{\ManifoldMap{\ParamDomainS}{\VolumeRefS}} \newcommand{\VolumeRefMMap}{\ManifoldMap{\ParamDomainM}{\VolumeRefM}} \newcommand{\VolumeRefGMap}{\ManifoldMap{\ParamDomainG}{\VolumeRefG}} \newcommand{\VolumeRefClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\VolumeRefClosureMMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}\Big|_{\ParamDomainBdryContactM}} \newcommand{\SurfaceRefContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvRefGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeRefClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\SurfaceRefContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvCurrSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeCurrClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeCurrClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeCurrSMap}{\ManifoldMap{\ParamDomainS}{\VolumeCurrS}} \newcommand{\VolumeCurrMMap}{\ManifoldMap{\ParamDomainM}{\VolumeCurrM}} \newcommand{\VolumeCurrGMap}{\ManifoldMap{\ParamDomainG}{\VolumeCurrG}} \newcommand{\VolumeCurrClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\SurfaceCurrContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvCurrGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\SurfaceCurrContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvDeformSMap}{\ManifoldMap{\VolumeEnvRefS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvDeformMMap}{\ManifoldMap{\VolumeEnvRefM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvDeformGMap}{\ManifoldMap{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformSMap}{\ManifoldMap{\VolumeRefClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeDeformMMap}{\ManifoldMap{\VolumeRefClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeDeformGMap}{\ManifoldMap{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeEnvDeformGMapDef}{\ManifoldMapDef{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformGMapDef}{\ManifoldMapDef{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\DispTrialSpaceOverVolumeEnvRefS}{\SpaceHilbert{U}(\VolumeEnvRefS)} \newcommand{\DispTrialSpaceOverVolumeEnvRefM}{\SpaceHilbert{U}(\VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefSAndM}{\SpaceHilbert{U}(\VolumeEnvRefS, \VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefG}{\SpaceHilbert{U}(\VolumeEnvRefG)} \newcommand{\DispTrialSpaceOverVolumeRefS}{\SpaceHilbert{U}(\VolumeRefClosureS)} \newcommand{\DispTrialSpaceOverVolumeRefM}{\SpaceHilbert{U}(\VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefSAndM}{\SpaceHilbert{U}(\VolumeRefClosureS, \VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefG}{\SpaceHilbert{U}(\VolumeRefClosureG)} \newcommand{\DispTestSpaceOverVolumeEnvRefG}{\delta \DispTrialSpaceOverVolumeEnvRefG} \newcommand{\DispTestSpaceOverVolumeRefG}{\delta \DispTrialSpaceOverVolumeRefG} \newcommand{\DispFieldRefSComp}{\DispFieldRefComp^s} \newcommand{\DispFieldRefSTen}{\DispFieldRefTen^s} \newcommand{\DispFieldRefMComp}{\DispFieldRefComp^m} \newcommand{\DispFieldRefMTen}{\DispFieldRefTen^m} \newcommand{\DispFieldRefGTen}{\DispFieldRefTen^\alpha} \newcommand{\DispFieldDiscreteRefGTen}{\DispFieldRefTen^{h,\alpha}} \newcommand{\DispFieldOverVolumeEnvRefGTenDef}{\ManifoldMapDef{\VolumeEnvRefG}{\DispFieldRefGTen}} \newcommand{\DispFieldOverVolumeRefGTenDef}{\ManifoldMapDef{\VolumeRefClosureG}{\DispFieldRefGTen}} \newcommand{\GradVolumeRefG}[1]{\Grad{\RefCoordVec{\VolumeRefClosureG}}{#1}} \newcommand{\GradVolumeEnvRefS}[1]{\Grad{\VolumeEnvRefSCoordVec}{#1}} \newcommand{\GradVolumeEnvRefM}[1]{\Grad{\VolumeEnvRefMCoordVec}{#1}} \newcommand{\GradVolumeEnvRefG}[1]{\Grad{\VolumeEnvRefGCoordVec}{#1}} \newcommand{\DeformGradSComp}{\DeformGradComp^s} \newcommand{\DeformGradSTen}{\DeformGradTen^s} \newcommand{\DeformGradSDet}{\Det{\DeformGradSTen}} \newcommand{\DeformGradSInvTrans}{\InvTrans{\DeformGradSTen}} \newcommand{\DeformGradMComp}{\DeformGradComp^m} \newcommand{\DeformGradMTen}{\DeformGradTen^m} \newcommand{\DeformGradMDet}{\Det{\DeformGradMTen}} \newcommand{\DeformGradMInvTrans}{\InvTrans{\DeformGradMTen}} \newcommand{\DeformGradGTen}{\DeformGradTen^\alpha} \newcommand{\DeformGradOverVolumeEnvRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\DeformGradOverVolumeRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\UnitNormalRefSTen}{\UnitNormalRefTen^s} \newcommand{\UnitNormalRefMTen}{\UnitNormalRefTen^m} \newcommand{\UnitNormalCurrSComp}{\UnitNormalCurrComp^s} \newcommand{\UnitNormalCurrSTen}{\UnitNormalCurrTen^s} \newcommand{\UnitNormalCurrMComp}{\UnitNormalCurrComp^m} \newcommand{\UnitNormalCurrMTen}{\UnitNormalCurrTen^m} \newcommand{\AreaRatioS}{r^s} \newcommand{\AreaRatioM}{r^m} \newcommand{\ContraMTen}{\Mat{a}^m} \newcommand{\SymmProdInProjTan}{C} \newcommand{\ProdPBTanInvCurPBTanInv}{D} \newcommand{\ProdPBTanInvCurMetricInv}{M} \newcommand{\ProdPBTanInvCurMetricInvCurPBTanInv}{W} \newcommand{\PenaltyContactGap}{\SymbolPenalty_{\SymbolContactGap}} \newcommand{\BodyForceRefGTen}{\BodyForceRefTen^\alpha} \newcommand{\TracForceRefGTen}{\TracForceRefTen^\alpha} \newcommand{\BodyForceOverVolumeRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeRefG}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeEnvRefG}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceRefTracGTenDef}{\FuncDef{\TracForceRefGTen}{\SurfaceRefTracG}{\SpatialDomain}} \newcommand{\PressureContact}{\SymbolPressureContact} \newcommand{\PressureContactProjected}{\overline{\SymbolPressureContact}_{\UsplineBasisFuncId}} \newcommand{\CoeffPressureContact}{\SymbolPressureContact_{\UsplineBasisFuncId}} \newcommand{\PressureContactInterpolated}{\hat{\SymbolPressureContact}} \newcommand{\ConstraintRefGTen}{\ConstraintRefTen^\alpha} \newcommand{\GapContact}{\SymbolContactGap} \newcommand{\GapContactProjected}{\overline{\SymbolContactGap}_{\UsplineBasisFuncId}} \newcommand{\GapContactProjectedVariation}{\delta \GapContactProjected} \newcommand{\GapContactMortar}{\GapContact^{m}} \newcommand{\GapContactMortarProjected}{\overline{\GapContact}^{m}_{\UsplineBasisFuncId}} \newcommand{\CoeffGapContactMortar}{\GapContact^{m}_{\UsplineBasisFuncId}} \newcommand{\ConstraintOverSurfaceRefDispGTenDef}{\FuncDef{\ConstraintRefGTen}{\SurfaceRefDispG}{\SpatialDomain}} \newcommand{\EnergyEnvG}{\EnergyEnv^\alpha} \newcommand{\EnergyG}{\Energy^{\alpha}} \newcommand{\EnergyDensityStrainG}{\EnergyDensityStrain^\alpha} \newcommand{\EnergyConstraintG}{\Energy^{\SymbolDisp,\alpha}} \newcommand{\EnergyContact}{\Energy^c} \newcommand{\EnergyOverVolumeRefGDef}{\FuncDef{\EnergyG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyEnvOverVolumeEnvRefGDef}{\FuncDef{\EnergyEnvG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeEnvRefG}{\Reals}} \newcommand{\EnergyContactOverVolumeRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeRefSAndM}{\Reals}} \newcommand{\EnergyContactOverVolumeEnvRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeEnvRefSAndM}{\Reals}} \newcommand{\EnergyConstraintOverVolumeRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\ResidualMat}{\Mat{N}} \newcommand{\ForceInternalContactVec}{\ForceVec^{c,int,n}} \newcommand{\ForceGapContact}{C^n} \newcommand{\StiffnessMatA}{\hat{\Mat{N}}} \newcommand{\StiffnessMatB}{\Mat{T}} \newcommand{\StiffnessMatC}{\Mat{D}} \newcommand{\StiffnessGeometricContact}{\StiffnessMat^{c,g,n}} \newcommand{\StiffnessContact}{\StiffnessMat^{c,n}} \newcommand{\ElemCount}[1]{\operatorname{count}{(#1)}} \newcommand{\ConvexHull}[1]{\operatorname{ch}{\left(#1\right)}} \newcommand{\Normal}[1]{\operatorname{N}{\left(#1\right)}} \newcommand{\NormalConvexHull}[1]{\Normal{\ConvexHull{#1}}} \newcommand{\DiscretePointSetS}{\Set{SP}} \newcommand{\DiscreteElemSetM}{\Set{ME}} \newcommand{\EnvBoundConMapM}{\operatorname{mc}} \newcommand{\EnvBoundConSetM}{\Set{MC}} \newcommand{\SpatialCoordVecToSegmentSetMapMSensor}{\operatorname{cs}} \newcommand{\SpatialCoordVecToSegmentSetMapMElem}{\operatorname{ce}} \newcommand{\SelfContactMap}{\operatorname{sc}} \newcommand{\ColSetS}{\Set{I}} \newcommand{\PairEnvMapBoundM}{\operatorname{cp}} \newcommand{\ApproximateProjectionCollision}[1]{\widetilde{\Projection}{#1}} \newcommand{\ImageSlaveEnv}{\bar{\ParamCoordVecSimple}^{\ParamDomainEnvM}} \newcommand{\ImageSlaveBound}{\bar{\ParamCoordVecSimple}^{\ParamDomainBdryContactM}} \newcommand{\ActiveSet}{\Set{A}} \newcommand{\DiscretePointSetM}{\Set{MP}} \newcommand{\MortarActiveSet}{\Set{A}^m} \newcommand{\PressureContactAnalytical}{p_a} \newcommand{\TipPressureContactAnalytical}{p_0} \newcommand{\ContactHalfWidth}{b}$$\newcommand{\MidGeometryModifier}[1]{\bar{#1}} \newcommand{\SymbolRotationGlobal}{\omega} \newcommand{\SkewMat}[1]{\Mat{s} \left( #1 \right)} \newcommand{\SkewMatInv}[1]{\Mat{s}^{-1} \left( #1 \right)} \newcommand{\Ident}{\Mat{I}} \newcommand{\Cartesian}{\Vec{e}} \newcommand{\ManifoldDim}{n} \newcommand{\LaminaSymbol}{l} \newcommand{\LaminaSymbolUpper}{L} \newcommand{\LaminaMetricSymbol}{j} \newcommand{\ShellMomentSymbol}{q} \newcommand{\DirectorBilinearFunc}[3]{\left(#2,#3\right)_{#1}} \newcommand{\RotObjectiveFunc}{s} \newcommand{\ParamConfig}{\Omega_\xi} \newcommand{\ParamConfigMid}{\Omega_\xi^m} \newcommand{\ParamConfigSec}{\Omega_\xi^s} \newcommand{\ParamConfigBound}{\Gamma_\xi} \newcommand{\ParamConfigMidBound}{\Gamma_\xi^m} \newcommand{\ParamConfigSecBound}{\Gamma_\xi^s} \newcommand{\ParamConfigMuBound}{\Gamma_\xi^\mu} \newcommand{\ParamConfigSigBound}{\Gamma_\xi^\sigma} \newcommand{\ParamConfigDirichMidBound}{\Gamma_\xi^g} \newcommand{\ParamConfigNeuMidBound}{\Gamma_\xi^h} \newcommand{\ParamConfigDirichBound}{\Gamma_\xi^\gamma} \newcommand{\ParamConfigNeuBound}{\Gamma_\xi^\eta} \newcommand{\ParaParam}[1]{\xi_{#1}} \newcommand{\ParaParamVec}{\boldsymbol{\xi}} \newcommand{\RefConfig}{\Omega_0} \newcommand{\RefConfigMid}{\Omega_0^m} \newcommand{\RefConfigSec}{\Omega_0^s} \newcommand{\SurfaceRefRot}{\SurfaceRef^{\SymbolRotationGlobal}} \newcommand{\RefConfigBound}{\Gamma_0} \newcommand{\RefConfigMidBound}{\Gamma_0^m} \newcommand{\RefConfigSecBound}{\Gamma_0^s} \newcommand{\RefConfigMuBound}{\Gamma_0^\mu} \newcommand{\RefConfigSigBound}{\Gamma_0^\sigma} \newcommand{\RefConfigDirichMidBound}{\Gamma_0^g} \newcommand{\RefConfigNeuMidBound}{\Gamma_0^h} \newcommand{\RefConfigDirichBound}{\Gamma_0^\gamma} \newcommand{\RefConfigNeuBound}{\Gamma_0^\eta} \newcommand{\RefMap}{\Vec{X}} \newcommand{\RefMid}{\MidGeometryModifier{\Vec{X}}} \newcommand{\RefDir}{\Vec{D}} \newcommand{\RefSectionPos}{\Vec{R}} \newcommand{\RefCovar}[1]{\Vec{G}_{#1}} \newcommand{\RefMidCovar}[1]{\MidGeometryModifier{\Vec{G}}_{#1}} \newcommand{\RefContra}[1]{\Vec{G}^{#1}} \newcommand{\RefMidContra}[1]{\MidGeometryModifier{\Vec{G}}^{#1}} \newcommand{\RefLamina}[1]{\Vec{L}_{#1}} \newcommand{\RefLaminaDual}[1]{\Vec{\LaminaSymbolUpper}^{#1}} \newcommand{\RefShellProjectedBasis}[1]{\Vec{P}_{#1}} \newcommand{\CurConfig}{\Omega} \newcommand{\CurConfigMid}{\Omega^m} \newcommand{\CurConfigSec}{\Omega^s} \newcommand{\CurConfigBound}{\Gamma} \newcommand{\CurConfigMidBound}{\Gamma^m} \newcommand{\CurConfigSecBound}{\Gamma^s} \newcommand{\CurConfigMuBound}{\Gamma^\mu} \newcommand{\CurConfigSigBound}{\Gamma^\sigma} \newcommand{\CurConfigDirichMidBound}{\Gamma^g} \newcommand{\CurConfigNeuMidBound}{\Gamma^h} \newcommand{\CurConfigDirichBound}{\Gamma^\gamma} \newcommand{\CurConfigNeuBound}{\Gamma^\eta} \newcommand{\CurMap}{\Vec{x}} \newcommand{\CurMid}{\MidGeometryModifier{\Vec{x}}} \newcommand{\CurDir}{\Vec{d}} \newcommand{\CurSectionPos}{\Vec{r}} \newcommand{\CurCovar}[1]{\Vec{g}_{#1}} \newcommand{\CurMidCovar}[1]{\MidGeometryModifier{\Vec{g}}_{#1}} \newcommand{\CurContra}[1]{\Vec{g}^{#1}} \newcommand{\CurMidContra}[1]{\MidGeometryModifier{\Vec{g}}^{#1}} \newcommand{\CurLamina}[1]{\Vec{\LaminaSymbol}_{#1}} \newcommand{\CurLaminaDual}[1]{\Vec{\LaminaSymbol}^{#1}} \newcommand{\CurModLamina}[1]{\hat{\Vec{\LaminaSymbol}}_{#1}} \newcommand{\CurModLaminaDual}[1]{\hat{\Vec{\LaminaSymbol}}^{#1}} \newcommand{\CurShellProjectedBasis}[1]{\Vec{p}_{#1}} \newcommand{\DeformMap}{\varphi} \newcommand{\DeformMapMid}{\varphi^m} \newcommand{\Disp}{\Vec{u}} \newcommand{\DispMid}{\MidGeometryModifier{\Vec{u}}} \newcommand{\RotVec}{\boldsymbol{\omega}} \newcommand{\RotMat}{\boldsymbol{\Lambda}} \newcommand{\RotMatMembrane}{\Mat{\Psi}} \newcommand{\RotMatDelta}{\boldsymbol{\Lambda}_\Delta} \newcommand{\IncRotMat}{\Delta\RotMat} \newcommand{\EulerVec}{\boldsymbol{\vartheta}} \newcommand{\EulerVecNorm}{\theta} \newcommand{\EulerVecSinc}{\boldsymbol{\Theta}} \newcommand{\EulerRotVec}{\boldsymbol{\theta}} \newcommand{\EulerRotAngle}{\theta} \newcommand{\IncEulerRotVec}{\Delta\boldsymbol{\theta}} \newcommand{\AngularVelocity}{\boldsymbol{\eta}} \newcommand{\IncEulerRotVecVel}{\Delta\dot{\boldsymbol{\theta}}} \newcommand{\AngularAcceleration}{\boldsymbol{\alpha}} \newcommand{\IncEulerRotVecAcc}{\Delta\ddot{\boldsymbol{\theta}}} \newcommand{\DeformGrad}{\Mat{F}} \newcommand{\Strain}[1]{\boldsymbol{\tau}_{#1}} \newcommand{\StrainMid}[1]{\boldsymbol{\varepsilon}_{#1}} \newcommand{\StrainCurve}[1]{\boldsymbol{\kappa}_{#1}} \newcommand{\DecompDeform}{\Mat{U}} \newcommand{\ExtraDeformTen}{\Delta\DeformGradTen} \newcommand{\ExtraDeformComp}{\Delta\DeformGradComp} \newcommand{\GreenLagrange}{\Mat{E}} \newcommand{\ShellStrainCurve}[1]{\boldsymbol{\chi}_{#1}} \newcommand{\SecPK}{\Mat{S}} \newcommand{\FirstPK}{\Mat{P}} \newcommand{\Cauchy}{\boldsymbol{\sigma}} \newcommand{\IntTrac}[1]{\Vec{t}_{#1}} \newcommand{\RefModuli}{\Mat{C}} \newcommand{\CurModuli}{\Mat{c}} \newcommand{\PointModuli}{\Mat{m}} \newcommand{\ResModuli}{\Mat{M}} \newcommand{\RefAreaVec}[1]{\Vec{A}_{#1}} \newcommand{\RefAreaMidVec}[1]{\MidGeometryModifier{\Vec{A}}_{#1}} \newcommand{\RefMeas}{G} \newcommand{\UnitNormalRefVec}[1]{\Vec{N}_{#1}} \newcommand{\CurAreaVec}[1]{\Vec{a}_{#1}} \newcommand{\CurAreaMidVec}[1]{\MidGeometryModifier{\Vec{a}}_{#1}} \newcommand{\CurMeas}{g} \newcommand{\UnitNormalCurrVec}[1]{\Vec{n}_{#1}} \newcommand{\CurLaminaMetricTen}{\Mat{\LaminaMetricSymbol}} \newcommand{\CurLaminaMetricComp}{\LaminaMetricSymbol} \newcommand{\CurToModLaminaTransComp}{M} \newcommand{\IntForce}{\Vec{f}^{\, int}} \newcommand{\IntMoment}{\Vec{m}^{int}} \newcommand{\ExtForceBody}{\Vec{f}^{\, ext}_b} \newcommand{\ExtMomentBody}{\Vec{m}^{ext}_b} \newcommand{\ShellExtMomentBody}{\Vec{\ShellMomentSymbol}^{ext}_b} \newcommand{\ExtForceTrac}{\Vec{f}^{\, ext}_h} \newcommand{\ExtMomentTrac}{\Vec{m}^{ext}_h} \newcommand{\ShellExtMomentTrac}{\Vec{\ShellMomentSymbol}^{ext}_h} \newcommand{\MassForce}{\Vec{f}^{\,\rho}} \newcommand{\MassMoment}{\Vec{m}^{\rho}} \newcommand{\ShellMassMoment}{\Vec{\ShellMomentSymbol}^{\rho}} \newcommand{\ResidualInternal}{\Vec{R}^{int}} \newcommand{\ResidualExternal}{\Vec{R}^{ext}} \newcommand{\ResidualMass}{\Mat{R}^{\rho}} \newcommand{\NodalMass}[1]{\Mat{M}_{#1}} \newcommand{\NodalLinearInertia}[1]{A_{#1}} \newcommand{\NodalAngularInertia}[1]{I_{#1}} \newcommand{\ShellDeltaAngle}{\phi} \newcommand{\BStrainMatrix}[2]{\Mat{B}_{#1#2}} \newcommand{\ShellDrillingStiffness}{k} \newcommand{\DrillConstraint}{C} \newcommand{\IntForceDrilling}{\Vec{f}^{d}} \newcommand{\ModuliDrilling}{\Mat{M}^d} \newcommand{\ResidualDrilling}{\Vec{R}^d} \newcommand{\SymbolTop}{top} \newcommand{\SymbolCentroid}{c} \newcommand{\SymbolLeverArm}{r} \newcommand{\SpatialCoordVecCentroid}{\SpatialCoordVec^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidX}{\SpatialCoordX^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidY}{\SpatialCoordY^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidZ}{\SpatialCoordZ^{\SymbolCentroid}} \newcommand{\LeverArm}{\Vec{\SymbolLeverArm}} \newcommand{\LeverArmX}{\SymbolLeverArm_{\SpatialCoordX}} \newcommand{\LeverArmY}{\SymbolLeverArm_{\SpatialCoordY}} \newcommand{\LeverArmZ}{\SymbolLeverArm_{\SpatialCoordZ}} \newcommand{\MomentFirstMass}{Q} \newcommand{\MomentSecondMass}{I} \newcommand{\MomentSecondMassDetailed}[1]{I_{#1}} \newcommand{\DistributedLoad}{q} \newcommand{\TracForceCurrCompX}{\TracForceCurrComp_{\SpatialCoordX}} \newcommand{\TracForceCurrCompY}{\TracForceCurrComp_{\SpatialCoordY}} \newcommand{\TracForceCurrCompZ}{\TracForceCurrComp_{\SpatialCoordZ}} \newcommand{\TracMomentCurrCompDetailed}[1]{\TracMomentCurrComp_{#1}} \newcommand{\TracForceCurrCompSupportReaction}{r^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompSupportReactionDetailed}[1]{\TracForceCurrCompSupportReaction_{#1}} \newcommand{\TracForceCurrCompDistributedLoad}{\DistributedLoad^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompPointLoad}{p^{\TracForceCurrComp}} \newcommand{\TracMomentCurrVec}{\Vec{\TracMomentCurrComp}} \newcommand{\TracMomentCurrComp}{m} \newcommand{\BodyForceCurrCompX}{\BodyForceCurrComp_{\SpatialCoordX}} \newcommand{\BodyForceCurrCompY}{\BodyForceCurrComp_{\SpatialCoordY}} \newcommand{\BodyForceCurrCompZ}{\BodyForceCurrComp_{\SpatialCoordZ}} \newcommand{\BodyForceCurrCompDistributedLoad}{\DistributedLoad^{\BodyForceCurrComp}} \newcommand{\BodyForceCurrCompAxialLoad}{f^{\BodyForceCurrComp}} \newcommand{\StressCauchyTractionVec}{\Vec{t}} \newcommand{\StressCauchyTractionX}{t_{\SpatialCoordX}} \newcommand{\StressCauchyTractionY}{t_{\SpatialCoordY}} \newcommand{\StressCauchyTractionZ}{t_{\SpatialCoordZ}} \newcommand{\StressCauchyNormal}{\sigma} \newcommand{\StressCauchyNormalDetailed}[1]{\StressCauchyNormal_{#1}} \newcommand{\StressCauchyNormalXX}{\StressCauchyComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StressCauchyNormalYY}{\StressCauchyComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StressCauchyNormalZZ}{\StressCauchyComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StressCauchyShear}{\tau} \newcommand{\StressCauchyShearDetailed}[1]{\StressCauchyShear_{#1}} \newcommand{\StressCauchyShearXY}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StressCauchyShearYX}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordX}} \newcommand{\StressCauchyShearXZ}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StressCauchyShearZX}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordX}} \newcommand{\StressCauchyShearYZ}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\StressCauchyShearZY}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordY}} \newcommand{\StressCauchyResultantForce}{F} \newcommand{\StressCauchyResultantForceDetailed}[1]{F_{#1}} \newcommand{\StressCauchyResultantForceVec}{\Vec{\StressCauchyResultantForce}} \newcommand{\StressCauchyResultantMoment}{M} \newcommand{\StressCauchyResultantMomentDetailed}[1]{M_{#1}} \newcommand{\StressCauchyResultantMomentVec}{\Vec{\StressCauchyResultantMoment}} \newcommand{\StressCauchyResultantForceShear}{V} \newcommand{\StressCauchyResultantForceShearDetailed}[1]{V_{#1}} \newcommand{\StressCauchyResultantForceAxial}{\StressCauchyResultantForce} \newcommand{\DispFieldCurrCompX}{\DispFieldCurrComp_{\SpatialCoordX}} \newcommand{\DispFieldCurrCompY}{\DispFieldCurrComp_{\SpatialCoordY}} \newcommand{\DispFieldCurrCompZ}{\DispFieldCurrComp_{\SpatialCoordZ}} \newcommand{\DispFieldMidCurrCompX}{\overline{\DispFieldCurrComp}_{\SpatialCoordX}} \newcommand{\DispFieldMidCurrCompY}{\overline{\DispFieldCurrComp}_{\SpatialCoordY}} \newcommand{\StrainSymGradCompXX}{\StrainSymGradComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StrainSymGradCompYY}{\StrainSymGradComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StrainSymGradCompZZ}{\StrainSymGradComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StrainShearComp}{\gamma} \newcommand{\StrainShearCompXY}{\StrainShearComp_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StrainShearCompXZ}{\StrainShearComp_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StrainShearCompYZ}{\StrainShearComp_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\EquationBeamShearStress}{\frac{\StressCauchyResultantForceShear \MomentFirstMass}{\MomentSecondMassDetailed{\SpatialCoordZ}\Width}} \newcommand{\EquationVecInCoords}{\Vec{v} = v_{\SpatialCoordX} \BasisVecI + v_{\SpatialCoordY} \BasisVecJ + v_{\SpatialCoordZ} \BasisVecK} \newcommand{\EquationMatVecMultiply}{\Mat{M}\Vec{v} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Vec{v}} \\ \DotProduct{\Vec{m}_2}{\Vec{v}} \\ \DotProduct{\Vec{m}_3}{\Vec{v}} \end{bmatrix}} \newcommand{\EquationMatMatMultiply}{\Mat{M}\Mat{N} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Mat{n}_1} & \DotProduct{\Vec{m}_1}{\Mat{n}_2} & \DotProduct{\Vec{m}_1}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_2}{\Mat{n}_1} & \DotProduct{\Vec{m}_2}{\Mat{n}_2} & \DotProduct{\Vec{m}_2}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_3}{\Mat{n}_1} & \DotProduct{\Vec{m}_3}{\Mat{n}_2} & \DotProduct{\Vec{m}_3}{\Mat{n}_3} \end{bmatrix}} \newcommand{\Force}{F} \newcommand{\ShearFlow}{f}$$\newcommand{\BaseSymbol}{b} \newcommand{\EmbeddedSymbol}{e} \newcommand{\RefinedSymbol}{r} \newcommand{\HierarchicalSymbol}{\textsf{H}} \newcommand{\BlockSymbol}{\textsf{B}} \newcommand{\BaseModifier}[1]{{#1}_{\BaseSymbol}} \newcommand{\EmbeddedModifier}[1]{{#1}_{\EmbeddedSymbol}} \newcommand{\RefinedModifier}[1]{{#1}_{\RefinedSymbol}} \newcommand{\HierarchicalModifier}[1]{{#1}_{\HierarchicalSymbol}} \newcommand{\BlockModifier}[1]{{#1}_{\BlockSymbol}} \newcommand{\RefinementLevelI}{i} \newcommand{\RefinementLevelJ}{j} \newcommand{\RefinementLevelK}{k} \newcommand{\HighestRefinementLevel}{N} \newcommand{\BaseParentDomain}{\BaseModifier{\ParentDomain}} \newcommand{\RefinedDomain}[1]{\ParamDomain_{#1}} \newcommand{\BaseMesh}{\BaseModifier{\MeshTopo}} \newcommand{\BaseBezierMesh}{\BaseModifier{\MeshBezier}} \newcommand{\EmbeddedMesh}{\EmbeddedModifier{\MeshTopo}} \newcommand{\RefinedMesh}{\RefinedModifier{\MeshTopo}} \newcommand{\RefinedBezierMesh}{\RefinedModifier{\MeshBezier}} \newcommand{\HierarchicalBezierMesh}{\HierarchicalModifier{\MeshBezier}} \newcommand{\HierarchicalUsplineMesh}{\HierarchicalModifier{\MeshUspline}} \newcommand{\RefinementLevelMesh}[1]{\MeshBezier_{#1}} \newcommand{\LeafElemSet}[1]{\Set{L}_{#1}} \newcommand{\ActiveElemSet}[1]{\Set{A}_{#1}} \newcommand{\ActiveBasisFuncs}[1]{\Set{UFA}_{#1}} \newcommand{\UnderRefinedBasisFuncs}[1]{\Set{UFU}_{#1}} \newcommand{\HierarchicalBasisFuncs}{\Set{UFH}} \newcommand{\TruncatedBasisFuncs}{\Set{UFT}} \newcommand{\FuncsTruncatedToLevel}[1]{\Set{TK}_{#1}} \newcommand{\FuncsTouchingActiveFuncs}[1]{\Set{T}_{#1}} \newcommand{\FuncsSubsetOfCoarserFuncs}[1]{\Set{S}_{#1}} \newcommand{\RefinementLevelBasis}[1]{\UsplineBasisFuncSetFunctionOf{\RefinementLevelMesh{#1}}} \newcommand{\RefinementLevelSpace}[1]{\QuantityRelatedTo{\UsplineSpace}{\RefinementLevelMesh{#1}}} \newcommand{\BaseAssociated}{\operatorname{\textsf{base}}} \newcommand{\BaseAssociatedFunctionOf}[1]{\QFO{\BaseAssociated}{#1}} \newcommand{\TruncationOp}[2]{\QFO{\operatorname{\textsf{trunc}}_{#1}}{#2}} \newcommand{\EmbeddedToBaseChart}{\EmbeddedModifier{\ParentDomainChart}} \newcommand{\InvEmbeddedToBaseChart}{(\EmbeddedToBaseChart)^{-1}} \newcommand{\RefinementCoefficients}{c^A_B} \newcommand{\RefinementMat}{\Mat{D}} \newcommand{\NthLevelProlongationMat}[1]{\QSB{\ProlongationMat}{#1}} \newcommand{\NthLevelActiveMat}[1]{\QSB{\Mat{A}}{#1}} \newcommand{\NthLevelRefinementMat}[1]{\QSB{\RefinementMat}{#1}} \newcommand{\NthLevelTruncationMat}[1]{\QSB{\Mat{T}}{#1}} \newcommand{\NthLevelBasisMat}[1]{\QSB{\Mat{S}}{#1}} \newcommand{\NthLevelMassMat}[1]{\QSB{\MassMat}{#1}} \newcommand{\FuncIndex}{\operatorname*{\mathsf{ID}}} \newcommand{\MultiLevelRefinementMat}[2]{\QSB{\RefinementMat}{#1 #2}} \newcommand{\BlockRefinementMat}{\BlockModifier{\RefinementMat}} \newcommand{\BlockMassMat}{\BlockModifier{\MassMat}}$

Note: This feature is under development. The command to enable or disable features under development is:

Set Developer Commands {On|OFF}

In many cases, model geometry includes protrusions which, when cut off using geometry decomposition, are easily meshable with existing algorithms. Cubit includes a feature-based decomposition capability, which automates this process. This algorithm operates by finding concave curves in the model, grouping them into closed loops, then forming cutting surfaces based on those loops. Although this algorithm is still in the research stage, it can be useful for automating some of the decomposition required for typical models.

To automatically decompose a model, use the command

Cut Body <body_id_range> [Trace {on|off}] [Depth <cut_depth>]

If the trace option is used, the algorithm prints progress information as decomposition progresses. The depth option controls how many cuts are made before the algorithm returns; by default, the algorithm cuts the model wherever it can.

Automatic decomposition is used to decompose the model shown in Figure 571 (left), with the results shown in Figure 571 (right). In this case, automatic decomposition performs all but one of the required cuts.

Figure 571: Model where automatic decomposition was utilized.

15.1.3Cohesive Elements

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcommand{\CurveCAD}{\CurveRelatedTo{\SymbolCAD}} \newcommand{\CurveCADModified}{\CurveRelatedTo{\SymbolCADModified}} \newcommand{\CurveMesh}{\CurveRelatedTo{\Partition}} \newcommand{\CurveUspline}{\CurveRelatedTo{\MeshUspline}} \newcommand{\dCurve}{\Differential[\Curve]} \newcommand{\PointCAD}{\PointRelatedTo{\SymbolCAD}} \newcommand{\PointCADModified}{\PointRelatedTo{\SymbolCADModified}} \newcommand{\PointUspline}{\PointRelatedTo{\MeshUspline}} \newcommand{\Segment}[1]{\QuantityChildOf{#1}{\SymbolSegment}} \newcommand{\SegmentOfVolumeEnv}{\Segment{\VolumeEnv}} \newcommand{\SegmentOfSurface}{\Segment{\Surface}} \newcommand{\Hex}{\Segment{}_{h}} \newcommand{\Tet}{\Segment{}_{t}} \newcommand{\SegmentParamDomain}[1]{\QuantityRelatedTo{\ParamDomain}{#1}} \newcommand{\SegmentParamDomainOfVolumeEnv}{\QuantityRelatedTo{\ParamDomain}{\Segment{\VolumeEnv}}} \newcommand{\SegmentParamDomainOfSurface}{\QuantityRelatedTo{\ParamDomain}{\Segment{\Surface}}} \newcommand{\SegmentSet}{\SymbolSegmentSet} \newcommand{\SegmentSetFunctionOf}[1]{\QuantityFunctionOf{\SegmentSet}{#1}} \newcommand{\SegmentSetOutside}{\SegmentSet^{\SymbolOutside}} \newcommand{\SegmentSetInside}{\SegmentSet^{\SymbolInside}} \newcommand{\SegmentSetHybrid}{\SegmentSet^{\SymbolHybrid}} \newcommand{\PartitionFunctionOf}[1]{\QuantityFunctionOf{\Partition}{#1}} \newcommand{\PartitionBezierExtraction}[1]{\QuantityFunctionOf{\SymbolPartition^{B}}{#1}} \newcommand{\PartitionTessellation}[1]{\QuantityFunctionOf{\SymbolPartition^{T}}{#1}} \newcommand{\PartitionTessellationOfUspline}{\PartitionTessellation{\MeshUspline}} \newcommand{\PartitionTessellationMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldCoeff}{\SymbolManifoldCoeff} \newcommand{\ManifoldCoeffUpper}{\SymbolManifoldCoeffUpper} \newcommand{\ManifoldCoeffUspline}{\QuantityRelatedTo{\SymbolManifoldCoeffUspline}{\MeshUspline}} \newcommand{\ManifoldCoeffBernstein}{\QuantityRelatedTo{\SymbolManifoldCoeffBernstein}{\MeshBezier}} \newcommand{\ManifoldCoeffVec}{\Vec{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffSet}{\Set{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVec}{\Vec{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVecCell}{\QuantityRelatedTo{\Vec{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsVecUsplineCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsVecSubmeshCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinSegmentOfVolumeEnv}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\SegmentOfVolumeEnv}} \newcommand{\ManifoldCoeffsSet}{\Set{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsSetCell}{\QuantityRelatedTo{\Set{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsSetUsplineCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsSetBernsteinCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsSetSubmeshCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldTemporalMap}[2]{\QuantityRelatedTo{#2}{#1,\SymbolTime}} \newcommand{\ManifoldPartitionMap}{\ManifoldMap{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldCADMap}{\ManifoldMap{\ParamDomainOnCAD}{\Manifold}} \newcommand{\ManifoldCADMapModified}{\ManifoldMap{\ParamDomainOnCADModified}{\Manifold}} \newcommand{\ManifoldBezierMap}{\ManifoldMap{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMap}{\ManifoldMap{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMap}{\ManifoldMap{\ParamDomain}{\Volume}} \newcommand{\SurfaceMap}{\ManifoldMap{\ParamDomainBdry}{\Surface}} \newcommand{\ManifoldMapDef}[2]{\FuncDef{\ManifoldMap{#1}{#2}}{#1}{#2}} \newcommand{\ManifoldMapInverseDef}[2]{\FuncDef{\Inverse{\ManifoldMap{#1}{#2}}}{#2}{#1}} \newcommand{\ManifoldTemporalMapDef}[2]{\FuncDef{\ManifoldTemporalMap{#1}{#2}}{#1\otimes\Reals_{+}}{#2}} \newcommand{\ManifoldPartitionMapDef}{\ManifoldMapDef{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldBezierMapDef}{\ManifoldMapDef{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMapDef}{\ManifoldMapDef{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMapDef}{\ManifoldMapDef{\ParamDomain}{\Volume}} \newcommand{\SurfaceMapDef}{\ManifoldMapDef{\ParamDomainBdry}{\Surface}} \newcommand{\SurfaceToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\Surface}} \newcommand{\ManifoldCoordDetailed}[2]{\QCO{#1}{#2}} \newcommand{\ManifoldCoordVecDetailed}[2]{\QCO{#1}{\Vec{#2}}} \newcommand{\ManifoldCoord}{x} \newcommand{\ManifoldCoordVec}{\Vec{x}} \newcommand{\ManifoldPartitionMapCoord}{\ManifoldCoordDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldPartitionMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoord}{\ManifoldCoordDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\CovariantBasisSurfVec}{\Vec{\SymbolCovariantBasisSurf}} \newcommand{\CovariantBasisVolVec}{\Vec{\SymbolCovariantBasisVol}} \newcommand{\MetricComp}{\SymbolMetric} \newcommand{\MetricTen}{\Mat{\MetricComp}} \newcommand{\CurvatureComp}{\SymbolCurvature} \newcommand{\CurvatureTen}{\Mat{\CurvatureComp}} \newcommand{\CurvCoordIdOne}{\SymbolCurvCoordIdOne} \newcommand{\CurvCoordIdTwo}{\SymbolCurvCoordIdTwo} \newcommand{\CurvCoordIdThree}{\SymbolCurvCoordIdThree} \newcommand{\OrthogonalCoordTransform}{\Mat{\SymbolOrthogonalTransform}} \newcommand{\InversionPointTen}{\Vec{p}} \newcommand{\InversionPointComp}{p} \newcommand{\BoundingVolume}[1]{\QuantityFunctionOf{\Set{bv}}{#1}} \newcommand{\BoundingVolumeSet}[1]{\QuantityFunctionOf{\Set{BV}}{#1}} \newcommand{\BoundingVolumeTree}[1]{\QuantityFunctionOf{\Set{BVH}}{#1}} \newcommand{\AxisAlignedBoundingBox}[1]{\QuantityFunctionOf{\Set{AABB}}{#1}} \newcommand{\AABBCornerLower}{\Vec{c}^l} \newcommand{\AABBCornerLowerComp}{c^l} \newcommand{\AABBCornerUpper}{\Vec{c}^u} \newcommand{\AABBCornerUpperComp}{c^u} \newcommand{\LowerBound}[2]{B^l\left(#1,#2\right)} \newcommand{\UpperBound}[2]{B^u\left(#1,#2\right)} \newcommand{\UpperBoundValue}{U} \newcommand{\UpperBoundValueBV}{U^{\text{BV}}} \newcommand{\UpperBoundValuePoints}{U^{\text{point}}} \newcommand{\GapTolerance}{\varepsilon^{\text{gap}}} \newcommand{\NearestCells}[3][]{\Set{C}_{#1}\left(#2,#3\right)} \newcommand{\BVHNearestGeom}[3][]{c_{#1}\left(#2,#3\right)} \newcommand{\BVHGeomSetOfSets}{\Set{G}} \newcommand{\BVHTessPointSet}{\Set{P}} \newcommand{\BVHBVSet}{\Set{L}} \newcommand{\SimplexMap}[1]{\QuantityFunctionOf{\Mat{L}}{#1}} \newcommand{\ParamCoordVecTarget}{\ParamCoordVecSimple_0} \newcommand{\SpatialCoordVecTarget}{\SpatialCoordVec_0} \newcommand{\SpatialCoordVecToSegmentSetMap}{\SegmentSet^f} \newcommand{\SpatialCoordVecToParamCoordVecSetMap}{\Inverse{\widetilde{\ManifoldMap{\ParamDomainEnv}{\Surface}}}} \newcommand{\HessMatComp}{H} \newcommand{\HessMatTen}{\Mat{\HessMatComp}} \newcommand{\QuadraturePointEnv}[2]{\SymbolEnvModifier{\QuadraturePoint{#1}{#2}}} \newcommand{\QuadraturePoint}[2]{\SymbolQuadraturePoint_{#1}^{#2}} \newcommand{\QuadraturePointToElemIndexMap}[1]{\operatorname{qe}(#1)} \newcommand{\QuadratureWeightEnv}[2]{\SymbolEnvModifier{\QuadratureWeight{#1}{#2}}} \newcommand{\QuadratureWeight}[2]{\SymbolQuadratureWeight_{#1}^{#2}} \newcommand{\QuadratureSet}{\Set{\SymbolQuadratureSet}} \newcommand{\QuadratureSetInside}{\QuadratureSet^{\SymbolInside}} \newcommand{\QuadratureSetOutside}{\QuadratureSet^{\SymbolOutside}} \newcommand{\QuadratureSubdDepth}{k} \newcommand{\ClosestPointMap}[1]{\QuantityChildOf{#1}{\Vec{\SymbolClosestPointMap}}} \newcommand{\ClosestPointMapCAD}{\ClosestPointMap{\SymbolCAD}} \newcommand{\ClosestPointMapCADModified}{\ClosestPointMap{\SymbolCADModified}} \newcommand{\ProjectionInto}[1]{\QuantityRelatedTo{\SymbolProjection}{#1}} \newcommand{\ProjectionIntoBernsteinCell}{\ProjectionInto{\Cell}} \newcommand{\ProjectionIntoBernsteinElem}{\ProjectionInto{\Elem}} \newcommand{\ProjectionIntoMeshBezier}{\ProjectionInto{\MeshBezier}} \newcommand{\ProjectionIntoMeshUspline}{\ProjectionInto{\MeshUspline}} \newcommand{\LinearInterpolationOp}[1]{\QRT{\SymbolLinearInterpolation}{#1}} \newcommand{\Valence}{k} \newcommand{\ArbitraryVector}[1]{\QSB{v}{#1}} \newcommand{\RotationMatrix}[1]{R^{#1}} \newcommand{\RepVecSymbol}{u} \newcommand{\RepVec}[1]{\QSB{\RepVecSymbol}{#1}} \newcommand{\RepVecVec}{\Vec{\RepVecSymbol}} \newcommand{\AlignmentField}{\RepVecVec'} \newcommand{\BiharmonicEnergy}{\QSB{E}{B}} \newcommand{\PrescribedRepVec}[1]{\QSB{d}{#1}} \newcommand{\AlignmentParameter}{\lambda} \newcommand{\SingularityIndex}[1]{\QSB{\chi}{#1}} \newcommand{\AngularDefect}[1]{\QSB{K}{#1}} \newcommand{\ArbitraryAngle}{\theta} \newcommand{\ParallelTransport}[1]{\QSB{\varphi}{#1}} \newcommand{\MinusPiToPi}[1]{\lfloor #1 \rfloor} \newcommand{\AreaOperator}[1]{\QFO{\operatorname{area}}{#1}} \newcommand{\VectorAngle}[1]{\QFO{\operatorname{arg}}{#1}} \newcommand{\DistanceFunction}{\phi} \newcommand{\DistanceGradient}{X} \newcommand{\HeatField}{\eta} \newcommand{\RegionAtZeroDistance}{\gamma}$$\newcommand{\SymbolDisp}{u} \newcommand{\SymbolDispUpper}{U} \newcommand{\SymbolVelocity}{v} \newcommand{\SymbolVelocityUpper}{V} \newcommand{\SymbolAcceleration}{a} \newcommand{\SymbolAccelerationUpper}{A} \newcommand{\SymbolMass}{M} \newcommand{\SymbolLength}{L} \newcommand{\SymbolArea}{A} \newcommand{\SymbolConstraint}{g} \newcommand{\SymbolConstraintUpper}{G} \newcommand{\SymbolPenalty}{\varepsilon} \newcommand{\SymbolLagrangeMultRef}{\Lambda} \newcommand{\SymbolLagrangeMultCurr}{\lambda} \newcommand{\SymbolFict}{f} \newcommand{\SymbolTracForce}{h} \newcommand{\SymbolTracForceUpper}{H} \newcommand{\SymbolBodyForce}{b} \newcommand{\SymbolBodyForceUpper}{B} \newcommand{\SymbolVolumeRef}{\SymbolVolumeUpper} \newcommand{\SymbolSurfaceRef}{\SymbolSurfaceUpper} \newcommand{\SymbolCurveRef}{\SymbolCurveUpper} \newcommand{\SymbolPointRef}{\SymbolPointUpper} \newcommand{\SymbolVolumeCurr}{\SymbolVolume} \newcommand{\SymbolSurfaceCurr}{\SymbolSurface} \newcommand{\SymbolCurveCurr}{\SymbolCurve} \newcommand{\SymbolPointCurr}{\SymbolPoint} \newcommand{\SymbolDeformGradInc}{f} \newcommand{\SymbolDeformGrad}{F} \newcommand{\SymbolStrainGreenLagrange}{E} \newcommand{\SymbolDeformCauchyGreenLeft}{b} \newcommand{\SymbolDeformCauchyGreenRight}{C} \newcommand{\SymbolStrainDisp}{B} \newcommand{\SymbolStrainSymGrad}{\epsilon} \newcommand{\SymbolStrainPlasticEquiv}{\alpha} \newcommand{\SymbolHardeningPlastic}{k} \newcommand{\SymbolYieldFunction}{f} \newcommand{\SymbolConsistencyParameterPlastic}{\gamma} \newcommand{\SymbolPlasticModuliScaling}{\beta} \newcommand{\SymbolYieldSurfaceNormal}{n} \newcommand{\SymbolEnergy}{\Pi} \newcommand{\SymbolEnergyDensityStrain}{\Psi} \newcommand{\SymbolEnergyDensityStrainVol}{U} \newcommand{\SymbolResidual}{R} \newcommand{\SymbolForce}{F} \newcommand{\SymbolStiffness}{K} \newcommand{\SymbolSolution}{d} \newcommand{\ParamDomainBdryDisp}{\ParamDomainBdry^{\SymbolDisp}} \newcommand{\ParamDomainBdryTrac}{\ParamDomainBdry^{\SymbolTracForce}} \newcommand{\VolumeEnvRef}{\Set{\SymbolEnvModifier{\SymbolVolumeRef}}} \newcommand{\VolumeRef}{\Set{\SymbolVolumeRef}} \newcommand{\VolumeRefClosure}{\overline{\VolumeRef}} \newcommand{\VolumeRefFict}{\VolumeEnvRef\setminus\VolumeRef} \newcommand{\dVolumeRef}{\Differential[\VolumeRef]} \newcommand{\VolumeIndicatorDef}{\FuncDef{\VolumeIndicator_{\PenaltyStiffness}}{\VolumeEnvRef}{\Reals_+}} \newcommand{\SurfaceEnvRef}{\Set{\SymbolEnvModifier{\SymbolSurfaceRef}}} \newcommand{\SurfaceRef}{\Set{\SymbolSurfaceRef}} \newcommand{\SurfaceRefWildCard}{\SurfaceRef^{\SymbolWildCard}} \newcommand{\SurfaceRefDisp}{\SurfaceRef^{\SymbolDisp}} \newcommand{\SurfaceRefTrac}{\SurfaceRef^{\SymbolTracForce}} \newcommand{\SurfaceRefFict}{\SurfaceRef^{\SymbolFict}} \newcommand{\SurfaceRefDispExternal}{\SurfaceRefDisp\setminus\SurfaceRefFict} \newcommand{\SurfaceRefTracExternal}{\SurfaceRefTrac\setminus\SurfaceRefFict} \newcommand{\SurfaceRefFictTrac}{\SurfaceRefTrac\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictDisp}{\SurfaceRefDisp\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictExternal}{\SurfaceRefFict\setminus\SurfaceRef} \newcommand{\dSurfaceRef}{\Differential[\SurfaceRef]} \newcommand{\CurveRef}{\Set{\SymbolCurveRef}} \newcommand{\dCurveRef}{\Differential[\CurveRef]} \newcommand{\PointRef}{\Set{\SymbolPointRef}} \newcommand{\PointRefDisp}{\PointRef^{\SymbolDisp}} \newcommand{\PointRefTrac}{\PointRef^{\SymbolTracForce}} \newcommand{\dPointRef}{\Differential[\PointRef]} \newcommand{\dPointRefTrac}{\Differential[\PointRefTrac]} \newcommand{\RefCoord}[1]{\ManifoldCoordDetailed{#1}{X}} \newcommand{\RefCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{X}} \newcommand{\VolumeEnvRefCoord}{\RefCoord{\VolumeEnvRef}} \newcommand{\VolumeEnvRefCoordVec}{\RefCoordVec{\VolumeEnvRef}} \newcommand{\VolumeRefCoord}{\RefCoord{\VolumeRef}} \newcommand{\VolumeRefCoordVec}{\RefCoordVec{\VolumeRef}} \newcommand{\SurfaceRefCoord}{\RefCoord{\SurfaceRef}} \newcommand{\SurfaceRefCoordVec}{\RefCoordVec{\SurfaceRef}} \newcommand{\SurfaceRefDispCoord}{\RefCoord{\SurfaceRefDisp}} \newcommand{\SurfaceRefDispCoordVec}{\RefCoordVec{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracCoord}{\RefCoord{\SurfaceRefTrac}} \newcommand{\SurfaceRefTracCoordVec}{\RefCoordVec{\SurfaceRefTrac}} \newcommand{\CurveRefCoord}{\RefCoord{\CurveRef}} \newcommand{\CurveRefCoordVec}{\RefCoordVec{\CurveRef}} \newcommand{\UsplineBasisFuncOverCurveRef}[1]{\UsplineBasisFuncDetailed{\CurveRef}{#1}} \newcommand{\UsplineBasisFuncOverSurfaceRefDisp}[1]{\UsplineBasisFuncDetailed{\SurfaceRefDisp}{#1}} \newcommand{\VolumeEnvCurr}{\Set{\SymbolEnvModifier{\SymbolVolumeCurr}}} \newcommand{\VolumeCurr}{\Set{\SymbolVolumeCurr}} \newcommand{\VolumeCurrClosure}{\overline{\VolumeCurr}} \newcommand{\dVolumeCurr}{\Differential[\VolumeCurr]} \newcommand{\SurfaceEnvCurr}{\Set{\SymbolEnvModifier{\SymbolSurfaceCurr}}} \newcommand{\SurfaceCurr}{\Set{\SymbolSurfaceCurr}} \newcommand{\SurfaceCurrDisp}{\SurfaceCurr^{\SymbolDisp}} \newcommand{\SurfaceCurrTrac}{\SurfaceCurr^{\SymbolTracForce}} \newcommand{\dSurfaceCurr}{\Differential[\SurfaceCurr]} \newcommand{\CurveCurr}{\Set{\SymbolCurveCurr}} \newcommand{\dCurveCurr}{\Differential[\CurveCurr]} \newcommand{\PointCurr}{\Set{\SymbolPointCurr}} \newcommand{\PointCurrDisp}{\PointCurr^{\SymbolDisp}} \newcommand{\PointCurrTrac}{\PointCurr^{\SymbolTracForce}} \newcommand{\dPointCurr}{\Differential[\PointCurr]} \newcommand{\CurrCoord}[1]{\ManifoldCoordDetailed{#1}{x}} \newcommand{\CurrCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{x}} \newcommand{\VolumeEnvCurrCoord}{\CurrCoord{\VolumeEnvCurr}} \newcommand{\VolumeEnvCurrCoordVec}{\CurrCoordVec{\VolumeEnvCurr}} \newcommand{\VolumeCurrCoord}{\CurrCoord{\VolumeCurr}} \newcommand{\VolumeCurrCoordVec}{\CurrCoordVec{\VolumeCurr}} \newcommand{\SurfaceCurrCoord}{\CurrCoord{\SurfaceCurr}} \newcommand{\SurfaceCurrCoordVec}{\CurrCoordVec{\SurfaceCurr}} \newcommand{\SurfaceCurrDispCoord}{\CurrCoord{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrDispCoordVec}{\CurrCoordVec{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrTracCoord}{\CurrCoord{\SurfaceCurrTrac}} \newcommand{\SurfaceCurrTracCoordVec}{\CurrCoordVec{\SurfaceCurrTrac}} \newcommand{\CurveCurrCoord}{\CurrCoord{\CurveRef}} \newcommand{\CurveCurrCoordVec}{\CurrCoordVec{\CurveRef}} \newcommand{\VolumeEnvRefMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\GenericGradOverVolumeEnvRefMap}[1]{\Grad{\VolumeEnvRefMap}{#1}} \newcommand{\VolumeRefMap}{\ManifoldMap{\ParamDomain}{\VolumeRef}} \newcommand{\GenericGradOverVolumeRefMap}[1]{\Grad{\VolumeRefMap}{#1}} \newcommand{\SurfaceRefDispMap}{\ManifoldMap{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMap}{\ManifoldMap{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\CurveRefMap}{\ManifoldMap{\ParamDomain}{\CurveRef}} \newcommand{\GenericGradOverCurveRefMap}[1]{\Grad{\CurveRefMap}{#1}} \newcommand{\VolumeEnvRefMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\SurfaceRefDispMapDef}{\ManifoldMapDef{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMapDef}{\ManifoldMapDef{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\SurfaceRefToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRef}} \newcommand{\SurfaceRefDispToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefTrac}} \newcommand{\CurveRefMapDef}{\ManifoldMapDef{\ParamDomain}{\CurveRef}} \newcommand{\GenericDeformMap}{\Vec{\varphi}} \newcommand{\VolumeEnvDeformMap}{\ManifoldMap{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\GenericGradOverVolumeEnvDeformMap}[1]{\Grad{\VolumeEnvDeformMap}{#1}} \newcommand{\VolumeDeformMap}{\ManifoldMap{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMap}{\ManifoldTemporalMap{\VolumeRef}{\VolumeCurr}} \newcommand{\GradVolumeDeformTemporalMap}{\GenericGradOverVolumeRefMap{\VolumeDeformTemporalMap}} \newcommand{\SurfaceDeformDispMap}{\ManifoldMap{\SurfaceRefDisp}{\SurfaceCurrDisp}} \newcommand{\SurfaceDeformTracMap}{\ManifoldMap{\SurfaceRefTrac}{\SurfaceCurrTrac}} \newcommand{\CurveDeformMap}{\ManifoldMap{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMap}{\ManifoldTemporalMap{\CurveRef}{\CurveCurr}} \newcommand{\VolumeDeformMapDef}{\ManifoldMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMapDef}{\ManifoldTemporalMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeEnvDeformMapDef}{\ManifoldMapDef{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\CurveDeformMapDef}{\ManifoldMapDef{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMapDef}{\ManifoldTemporalMapDef{\CurveRef}{\CurveCurr}} \newcommand{\DispTrialSpaceOverVolumeEnvRef}{\SpaceHilbert{U}(\VolumeEnvRef)} \newcommand{\DispTestSpaceOverVolumeEnvRef}{\delta \DispTrialSpaceOverVolumeEnvRef} \newcommand{\DispTrialSpaceOverVolumeRef}{\SpaceHilbert{U}(\VolumeRef)} \newcommand{\DispTestSpaceOverVolumeRef}{\delta \DispTrialSpaceOverVolumeRef} \newcommand{\DispTrialSpaceOverCurveRef}{\SpaceHilbert{U}(\CurveRef)} \newcommand{\DispTestSpaceOverCurveRef}{\delta \DispTrialSpaceOverCurveRef} \newcommand{\DispFieldRefComp}{\SymbolDispUpper} \newcommand{\DispFieldRefTen}{\Vec{\DispFieldRefComp}} \newcommand{\DispFieldCurrComp}{\SymbolDisp} \newcommand{\DispFieldCurrTen}{\Vec{\DispFieldCurrComp}} \newcommand{\VelFieldCurrTen}{\Vec{\SymbolVelocity}} \newcommand{\AccFieldCurrTen}{\Vec{\SymbolAcceleration}} \newcommand{\DeformGradComp}{\SymbolDeformGrad} \newcommand{\DeformGradTen}{\Mat{\DeformGradComp}} \newcommand{\DeformGradDet}{\Det{\DeformGradTen}} \newcommand{\KinematicElast}{e} \newcommand{\KinematicPlast}{p} \newcommand{\DivVolumeEnvRef}[1]{\Div{\VolumeEnvRefCoordVec}{#1}} \newcommand{\DivVolumeEnvCurr}[1]{\Div{\VolumeEnvCurrCoordVec}{#1}} \newcommand{\DeformGradIncComp}{\SymbolDeformGradInc} \newcommand{\DeformGradIncTen}{\Mat{\DeformGradIncComp}} \newcommand{\DeformGradIncDevComp}{\bar{\SymbolDeformGradInc}} \newcommand{\DeformGradIncDevTen}{\bar{\Mat{\DeformGradIncComp}}} \newcommand{\JAsDeformGradDet}{J} \newcommand{\StretchTen}{\Mat{V}} \newcommand{\StrainGreenLagrangeComp}{\SymbolStrainGreenLagrange} \newcommand{\StrainGreenLagrangeTen}{\Mat{\StrainGreenLagrangeComp}} \newcommand{\StrainGreenLagrangeVoigt}{\tilde{\StrainGreenLagrangeTen}} \newcommand{\DeformCauchyGreenRightComp}{\SymbolDeformCauchyGreenRight} \newcommand{\DeformCauchyGreenRightTen}{\Mat{\DeformCauchyGreenRightComp}} \newcommand{\DeformCauchyGreenLeftComp}{\SymbolDeformCauchyGreenLeft} \newcommand{\DeformCauchyGreenLeftTen}{\Mat{\DeformCauchyGreenLeftComp}} \newcommand{\DeformCauchyGreenLeftDevComp}{\bar{\SymbolDeformCauchyGreenLeft}} \newcommand{\DeformCauchyGreenLeftDevTen}{\bar{\Mat{\DeformCauchyGreenLeftComp}}} \newcommand{\StrainSymGradComp}{\SymbolStrainSymGrad} \newcommand{\StrainSymGradTen}{\Mat{\StrainSymGradComp}} \newcommand{\StrainDispMat}{\Mat{\SymbolStrainDisp}} \newcommand{\DeformCauchyGreenRightDevComp}{\bar{\SymbolDeformCauchyGreenRight}} \newcommand{\DeformCauchyGreenRightDevTen}{\bar{\Mat{\DeformCauchyGreenRightComp}}} \newcommand{\KinematicElastoplast}{{\rm ep}} \newcommand{\Trial}{{\rm trial}} \newcommand{\DeformCauchyGreenLeftElasticTenDef}{\DeformCauchyGreenLeftTen^\KinematicElast \DefEq \DeformGradTen^\KinematicElast \DeformGradTen^{\KinematicElast T}} \newcommand{\DeformCauchyGreenLeftElasticDevTenDef}{{\DeformCauchyGreenLeftDevTen}^\KinematicElast \DefEq {\JAsDeformGradDet}^{\KinematicElast-\frac{2}{3}} {\DeformCauchyGreenLeftTen}^\KinematicElast} \newcommand{\DeformCauchyGreenRightPlasticTenDef}{\DeformCauchyGreenRightTen^\KinematicPlast \DefEq \DeformGradTen^{\KinematicPlast T} \DeformGradTen^\KinematicPlast} \newcommand{\StrainPlasticEquiv}{\SymbolStrainPlasticEquiv} \newcommand{\ConsistencyParameterPlasticDiscrete}{\Delta \SymbolConsistencyParameterPlastic} \newcommand{\YieldSurfaceNormalComp}{\SymbolYieldSurfaceNormal} \newcommand{\YieldSurfaceNormalTen}{\Mat{\SymbolYieldSurfaceNormal}} \newcommand{\UnitNormalRefComp}{N} \newcommand{\UnitNormalRefTen}{\Vec{\UnitNormalRefComp}} \newcommand{\UnitNormalCurrComp}{\UnitNormalComp} \newcommand{\UnitNormalCurrTen}{\UnitNormal} \newcommand{\DispFieldOverVolumeEnvRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeEnvCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\DispFieldOverVolumeRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeDeformMap}} \newcommand{\DispFieldOverCurveRefTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\DispFieldOverCurveRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DeformGradOverVolumeRefTenDef}{\FuncDef{\DeformGradTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\DeformGradOverCurveRefTenDef}{\FuncDef{\DeformGradTen}{\CurveRef}{\CurveCurr}} \newcommand{\StrainGreenLagrangeOverVolumeEnvRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\StrainGreenLagrangeOverVolumeRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\StrainGreenLagrangeOverCurveRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\CurveRef}{\CurveCurr}} \newcommand{\DeformCauchyGreenLeftTenDef}{\DeformCauchyGreenLeftTen \DefEq \DeformGradTen \DeformGradTen^T} \newcommand{\DeformCauchyGreenLeftDevTenDef}{\DeformCauchyGreenLeftDevTen \DefEq \DeformGradDet^{-\frac{2}{3}} \DeformCauchyGreenLeftTen} \newcommand{\StressPKOneTen}{\Mat{P}} \newcommand{\StressPKTwoComp}{S} \newcommand{\StressPKTwoTen}{\Mat{\StressPKTwoComp}} \newcommand{\StressPKTwoVoigt}{\tilde{\StressPKTwoTen}} \newcommand{\StressCauchyComp}{\sigma} \newcommand{\StressCauchyTen}{\Mat{\sigma}} \newcommand{\StressCauchyVoigt}{\tilde{\StressCauchyTen}} \newcommand{\StressCauchyMean}{p} \newcommand{\StressCauchyYield}{\StressCauchyComp_Y} \newcommand{\StressKirchhoffComp}{\tau} \newcommand{\StressKirchhoffTen}{\Mat{\tau}} \newcommand{\StressKirchhoffVoigt}{\tilde{\StressKirchhoffTen}} \newcommand{\StressKirchhoffDevComp}{s} \newcommand{\StressKirchhoffDevTen}{\Mat{\StressKirchhoffDevComp}} \newcommand{\ModuliElastRefComp}{C} \newcommand{\ModuliElastRefTen}{\Mat{\ModuliElastRefComp}} \newcommand{\ModuliElastRefVoigt}{\tilde{\ModuliElastRefTen}} \newcommand{\ModuliElastCurrComp}{c} \newcommand{\ModuliElastCurrTen}{\Mat{\ModuliElastCurrComp}} \newcommand{\ModuliElastCurrVoigt}{\tilde{\ModuliElastCurrTen}} \newcommand{\MaterialYoungsModulus}{E} \newcommand{\MaterialPoissonsRatio}{\nu} \newcommand{\MaterialMassDensity}{\rho} \newcommand{\MaterialBulkModulus}{\kappa} \newcommand{\MaterialShearModulus}{\mu} \newcommand{\MaterialShearModulusDev}{\bar{\MaterialShearModulus}} \newcommand{\MaterialThermalExpansion}{\alpha_{\text{thermal}}} \newcommand{\Area}{\SymbolArea} \newcommand{\Length}{\SymbolLength} \newcommand{\Width}{b} \newcommand{\Height}{h} \newcommand{\PenaltyStiffness}{\SymbolPenalty_{\SymbolStiffness}} \newcommand{\PenaltyDisp}{\SymbolPenalty_{\SymbolDisp}} \newcommand{\BodyForceRefComp}{\SymbolBodyForceUpper} \newcommand{\BodyForceRefTen}{\Vec{\BodyForceRefComp}} \newcommand{\BodyForceCurrComp}{\SymbolBodyForce} \newcommand{\BodyForceCurrTen}{\Vec{\BodyForceCurrComp}} \newcommand{\TracForceRefComp}{\SymbolTracForceUpper} \newcommand{\TracForceRefTen}{\Vec{\TracForceRefComp}} \newcommand{\TracForceCurrComp}{\SymbolTracForce} \newcommand{\TracForceCurrTen}{\Vec{\TracForceCurrComp}} \newcommand{\Pressure}{p} \newcommand{\BodyForceOverVolumeEnvRefTenDef}{\FuncDef{\BodyForceRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\BodyForceOverCurveRefCompDef}{\FuncDef{\BodyForceRefComp}{\CurveRef}{\Reals}} \newcommand{\BodyForceOverCurveRefTenDef}{\FuncDef{\BodyForceRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\BodyForceOverCurveCurrCompDef}{\BodyForceCurrComp \DefEq \BodyForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\BodyForceOverCurveCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverSurfaceRefTracTenDef}{\FuncDef{\TracForceRefTen}{\SurfaceRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceCurrTracTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\SurfaceDeformTracMap}} \newcommand{\TracForceOverCurveRefCompDef}{\FuncDef{\TracForceRefComp}{\PointRefTrac}{\Reals}} \newcommand{\TracForceOverCurveRefTenDef}{\FuncDef{\TracForceRefTen}{\PointRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverCurveCurrCompDef}{\TracForceCurrComp \DefEq \TracForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverCurveCurrTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\ConstraintRefTen}{\Vec{\SymbolConstraintUpper}} \newcommand{\LagrangeMultTestSpaceOverSurfaceRef}{\delta \LagrangeMultTrialSpaceOverSurfaceRef} \newcommand{\LagrangeMultTrialSpaceOverSurfaceRef}{\SpaceHilbert{L}(\SurfaceRefDisp)} \newcommand{\LagrangeMultRefComp}{\SymbolLagrangeMultRef} \newcommand{\LagrangeMultRefTen}{\Vec{\LagrangeMultRefComp}} \newcommand{\LagrangeMultCurrComp}{\SymbolLagrangeMultCurr} \newcommand{\LagrangeMultCurrTen}{\Vec{\LagrangeMultCurrComp}} \newcommand{\ConstraintOverSurfaceRefDispTenDef}{\FuncDef{\ConstraintRefTen}{\SurfaceRefDisp}{\SpatialDomain}} \newcommand{\LagrangeMultOverSurfaceCurrTenDef}{\LagrangeMultCurrTen \DefEq \LagrangeMultRefTen \circ \Inverse{\SurfaceDeformDispMap}} \newcommand{\Energy}{\SymbolEnergy} \newcommand{\EnergyElastic}[1]{\QFO{\Energy}{#1}} \newcommand{\EnergyElasticNoArg}{\QFONA{\Energy}} \newcommand{\EnergyEnv}{\SymbolEnvModifier{\Energy}} \newcommand{\EnergyInside}{\Energy^{\SymbolInside}} \newcommand{\EnergyOutside}{\Energy^{\SymbolOutside}} \newcommand{\EnergyConstraint}{\Energy^{\LagrangeMultCurrComp}} \newcommand{\EnergyDensityStrain}{\SymbolEnergyDensityStrain} \newcommand{\EnergyDensityStrainVol}{\SymbolEnergyDensityStrainVol} \newcommand{\EnergyDensityStrainDev}{\bar{\SymbolEnergyDensityStrain}} \newcommand{\EnergyInsideOverVolumeEnvRefDef}{\FuncDef{\EnergyInside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyOutsideOverVolumeEnvRefDef}{\FuncDef{\EnergyOutside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefDef}{\FuncDef{\EnergyConstraint}{\DispTrialSpaceOverVolumeEnvRef\TensorProduct\LagrangeMultTrialSpaceOverSurfaceRef}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefDef}{\FuncDef{\EnergyDensityStrain}{\VolumeEnvRef}{\Reals}} \newcommand{\ResidualComp}{\SymbolResidual} \newcommand{\ResidualVec}{\Vec{\ResidualComp}} \newcommand{\ForceVec}{\Vec{\SymbolForce}} \newcommand{\ForceInternalVec}{\ForceVec^{int}} \newcommand{\ForceExternalVec}{\ForceVec^{ext}} \newcommand{\ForceConstraintPenaltyVec}{\ForceVec^{\PenaltyDisp}} \newcommand{\ForceConstraintLagrangeVec}{\ForceVec^{\lambda1}} \newcommand{\ForceConstraintVec}{\ForceVec^{\lambda2}} \newcommand{\StiffnessMat}{\Mat{\SymbolStiffness}} \newcommand{\StiffnessMaterialMat}{\StiffnessMat^{m}} \newcommand{\StiffnessGeometricMat}{\StiffnessMat^{g}} \newcommand{\StiffnessPenaltyMat}{\StiffnessMat^{\PenaltyDisp}} \newcommand{\StiffnessLagrangeMat}{\StiffnessMat^{\LagrangeMultCurrComp}} \newcommand{\MassMat}{\Mat{\SymbolMass}} \newcommand{\LumpedMassMat}{\tilde{\MassMat}} \newcommand{\SolutionComp}{\SymbolSolution} \newcommand{\Solution}{\Vec{\SymbolSolution}} \newcommand{\SolutionDisp}{\Solution^{\DispFieldCurrComp}} \newcommand{\SolutionLagrange}{\Solution^{\LagrangeMultCurrComp}} \newcommand{\Flex}[1]{\mathcal{F}_{#1}} \newcommand{\FlexIt}{\mathcal{F}} \newcommand{\FlexFEA}{\Flex{\bar{0}}} \newcommand{\FlexFEAModified}{\Flex{0}} \newcommand{\FlexOne}{\Flex{1}} \newcommand{\FlexImmersed}{\Flex{\infty}} \newcommand{\FlexInfty}{\mathcal{F}{\infty}} \newcommand{\FlexSpectrum}{\overleftrightarrow{\mathcal{F}}} \newcommand{\FlexSpectrumId}{i} \newcommand{\TimeStep}{\Delta \SymbolTime} \newcommand{\SpectralRadius}{\rho_{\infty}}$$\newcommand{\SymbolPressureContact}{p} \newcommand{\SymbolContactGap}{g} \newcommand{\NumUsplineBasisFuncsS}{\Size{\UsplineBasisFuncSetOnMeshUspline^s}} \newcommand{\NumUsplineBasisFuncsM}{\Size{\UsplineBasisFuncSetOnMeshUspline^m}} \newcommand{\NumUsplineBasisFuncsG}{\Size{\UsplineBasisFuncSetOnMeshUspline^\alpha}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactS}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactS}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactM}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactM}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactG}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactG}}} \newcommand{\ParamDomainEnvS}{\ParamDomainEnv^{s}} \newcommand{\ParamDomainEnvM}{\ParamDomainEnv^{m}} \newcommand{\ParamDomainEnvG}{\ParamDomainEnv^{\alpha}} \newcommand{\ParamDomainS}{\ParamDomain^{s}} \newcommand{\ParamDomainM}{\ParamDomain^{m}} \newcommand{\ParamDomainG}{\ParamDomain^\alpha} \newcommand{\ParamDomainClosureS}{\overline{\ParamDomain}^s} \newcommand{\ParamDomainClosureM}{\overline{\ParamDomain}^m} \newcommand{\ParamDomainClosureG}{\overline{\ParamDomain}^\alpha} \newcommand{\ParamDomainBdryG}{\ParamDomainBdry^\alpha} \newcommand{\ParamDomainBdryContactS}{\ParamDomainBdry^{c,s}} \newcommand{\ParamDomainBdryContactM}{\ParamDomainBdry^{c,m}} \newcommand{\ParamDomainBdryContactG}{\ParamDomainBdry^{c,\alpha}} \newcommand{\ParamDomainBdryTangentComp}{A} \newcommand{\ParamDomainBdryTangentTen}{\Mat{\ParamDomainBdryTangentComp}} \newcommand{\ParamDetJacobianS}{j^s} \newcommand{\ParamDomainGCoordVec}{\ParamCoordVecSimple^{\ParamDomainG}} \newcommand{\ParamDomainGCoord}{\ParamCoordSimple^{\ParamDomainG}} \newcommand{\ParamDomainEnvGCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvGCoord}{\ParamCoordSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvSCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvSCoord}{\ParamCoordSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvMCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainEnvMCoord}{\ParamCoordSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainBdryContactGCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactGCoord}{\ParamCoordSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactSCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactSCoord}{\ParamCoordSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactMCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactM}} \newcommand{\ParamDomainBdryContactMCoord}{\ParamCoordSimple^{\ParamDomainBdryContactM}} \newcommand{\SegmentParamDomainOfVolumeEnvRefS}{\QuantityRelatedTo{\ParamDomainEnvS}{\SegmentOfVolumeEnvRefS}} \newcommand{\SegmentParamDomainOfVolumeEnvRefM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvRefM}} \newcommand{\SegmentParamDomainOfVolumeEnvCurrM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvCurrM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactS}{\QuantityRelatedTo{\ParamDomainBdryContactS}{\SegmentOfSurfaceCurrContactS}} \newcommand{\SegmentParamDomainOfSurfaceRefContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceRefContactM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceCurrContactM}} \newcommand{\UsplineBasisFuncS}{\UsplineBasisFunc^{s}} \newcommand{\UsplineBasisFuncM}{\UsplineBasisFunc^{m}} \newcommand{\UsplineBasisFuncG}{\UsplineBasisFunc^{\alpha}} \newcommand{\UsplineBasisFuncParamDomainBdryContactS}{\UsplineBasisFunc^{\ParamDomainBdryContactS}} \newcommand{\UsplineBasisFuncParamDomainBdryContactM}{\UsplineBasisFunc^{\ParamDomainBdryContactM}} \newcommand{\UsplineBasisFuncParamDomainBdryContactG}{\UsplineBasisFunc^{\ParamDomainBdryContactG}} \newcommand{\UsplineBasisSymmSecondOrderComp}{S} \newcommand{\UsplineBasisSymmSecondOrderTen}{\Mat{\UsplineBasisSymmSecondOrderComp}} \newcommand{\UsplineBasisSymmFourthOrderComp}{E} \newcommand{\UsplineBasisSymmSixthOrderComp}{Z} \newcommand{\VolumeEnvRefG}{\VolumeEnvRef^{\alpha}} \newcommand{\VolumeEnvRefS}{\VolumeEnvRef^{s}} \newcommand{\VolumeEnvRefM}{\VolumeEnvRef^{m}} \newcommand{\VolumeRefG}{\VolumeRef^{\alpha}} \newcommand{\VolumeRefS}{\VolumeRef^{s}} \newcommand{\VolumeRefM}{\VolumeRef^{m}} \newcommand{\VolumeRefClosureG}{\VolumeRefClosure^\alpha} \newcommand{\VolumeRefClosureS}{\VolumeRefClosure^s} \newcommand{\VolumeRefClosureM}{\VolumeRefClosure^m} \newcommand{\SurfaceRefG}{\SurfaceRef^\alpha} \newcommand{\SurfaceRefS}{\SurfaceRef^s} \newcommand{\SurfaceRefM}{\SurfaceRef^m} \newcommand{\SurfaceRefTracG}{\SurfaceRef^{\SymbolTracForce,\alpha}} \newcommand{\SurfaceRefDispG}{\SurfaceRef^{\SymbolDisp,\alpha}} \newcommand{\SurfaceRefContactG}{\SurfaceRef^{c,\alpha}} \newcommand{\SurfaceRefContactS}{\SurfaceRef^{c,s}} \newcommand{\SurfaceRefContactM}{\SurfaceRef^{c,m}} \newcommand{\VolumeEnvRefSCoordVec}{\RefCoordVec{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMCoordVec}{\RefCoordVec{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGCoordVec}{\RefCoordVec{\VolumeEnvRefG}} \newcommand{\VolumeRefGCoordVec}{\RefCoordVec{\VolumeRefG}} \newcommand{\SurfaceRefContactSCoord}{\RefCoord{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactSCoordVec}{\RefCoordVec{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMCoord}{\RefCoord{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactMCoordVec}{\RefCoordVec{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGCoord}{\RefCoord{\SurfaceRefContactG}} \newcommand{\SurfaceRefContactGCoordVec}{\RefCoordVec{\SurfaceRefContactG}} \newcommand{\SurfaceRefDispGCoordVec}{\RefCoordVec{\SurfaceRefDispG}} \newcommand{\SegmentOfVolumeEnvRefS}{\Segment{\VolumeEnvRefS}} \newcommand{\SegmentOfVolumeEnvRefM}{\Segment{\VolumeEnvRefM}} \newcommand{\SegmentOfSurfaceRefContactS}{\Segment{\SurfaceRefContactS}} \newcommand{\SegmentOfSurfaceRefContactM}{\Segment{\SurfaceRefContactM}} \newcommand{\VolumeEnvCurrG}{\VolumeEnvCurr^{\alpha}} \newcommand{\VolumeEnvCurrS}{\VolumeEnvCurr^{s}} \newcommand{\VolumeEnvCurrM}{\VolumeEnvCurr^{m}} \newcommand{\VolumeCurrG}{\VolumeCurr^{\alpha}} \newcommand{\VolumeCurrS}{\VolumeCurr^{s}} \newcommand{\VolumeCurrM}{\VolumeCurr^{m}} \newcommand{\VolumeCurrClosureG}{\VolumeCurrClosure^\alpha} \newcommand{\VolumeCurrClosureS}{\VolumeCurrClosure^s} \newcommand{\VolumeCurrClosureM}{\VolumeCurrClosure^m} \newcommand{\SurfaceCurrG}{\SurfaceCurr^\alpha} \newcommand{\SurfaceCurrS}{\SurfaceCurr^s} \newcommand{\SurfaceCurrM}{\SurfaceCurr^m} \newcommand{\SurfaceCurrContact}{\SurfaceCurr^{c}} \newcommand{\SurfaceCurrContactG}{\SurfaceCurr^{c,\alpha}} \newcommand{\SurfaceCurrContactS}{\SurfaceCurr^{c,s}} \newcommand{\SurfaceCurrContactM}{\SurfaceCurr^{c,m}} \newcommand{\VolumeEnvCurrSCoordVec}{\CurrCoordVec{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMCoordVec}{\CurrCoordVec{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGCoordVec}{\CurrCoordVec{\VolumeEnvCurrG}} \newcommand{\VolumeCurrGCoordVec}{\CurrCoordVec{\VolumeCurrG}} \newcommand{\SurfaceCurrContactSCoord}{\CurrCoord{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactSCoordVec}{\CurrCoordVec{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMCoord}{\CurrCoord{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactMCoordVec}{\CurrCoordVec{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGCoord}{\CurrCoord{\SurfaceCurrContactG}} \newcommand{\SurfaceCurrContactGCoordVec}{\CurrCoordVec{\SurfaceCurrContactG}} \newcommand{\SegmentOfVolumeEnvCurrS}{\Segment{\VolumeEnvCurrS}} \newcommand{\SegmentOfVolumeEnvCurrM}{\Segment{\VolumeEnvCurrM}} \newcommand{\SegmentOfSurfaceCurrContactS}{\Segment{\SurfaceCurrContactS}} \newcommand{\SegmentOfSurfaceCurrContactM}{\Segment{\SurfaceCurrContactM}} \newcommand{\VolumeEnvRefSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeEnvRefSMapInv}{\Inverse{\VolumeEnvRefSMap}} \newcommand{\VolumeEnvRefMMapInv}{\Inverse{\VolumeEnvRefMMap}} \newcommand{\VolumeEnvRefGMapInv}{\Inverse{\VolumeEnvRefGMap}} \newcommand{\VolumeRefClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeRefClosureS}} \newcommand{\VolumeRefClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}} \newcommand{\VolumeRefClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\VolumeRefSMap}{\ManifoldMap{\ParamDomainS}{\VolumeRefS}} \newcommand{\VolumeRefMMap}{\ManifoldMap{\ParamDomainM}{\VolumeRefM}} \newcommand{\VolumeRefGMap}{\ManifoldMap{\ParamDomainG}{\VolumeRefG}} \newcommand{\VolumeRefClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\VolumeRefClosureMMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}\Big|_{\ParamDomainBdryContactM}} \newcommand{\SurfaceRefContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvRefGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeRefClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\SurfaceRefContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvCurrSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeCurrClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeCurrClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeCurrSMap}{\ManifoldMap{\ParamDomainS}{\VolumeCurrS}} \newcommand{\VolumeCurrMMap}{\ManifoldMap{\ParamDomainM}{\VolumeCurrM}} \newcommand{\VolumeCurrGMap}{\ManifoldMap{\ParamDomainG}{\VolumeCurrG}} \newcommand{\VolumeCurrClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\SurfaceCurrContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvCurrGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\SurfaceCurrContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvDeformSMap}{\ManifoldMap{\VolumeEnvRefS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvDeformMMap}{\ManifoldMap{\VolumeEnvRefM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvDeformGMap}{\ManifoldMap{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformSMap}{\ManifoldMap{\VolumeRefClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeDeformMMap}{\ManifoldMap{\VolumeRefClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeDeformGMap}{\ManifoldMap{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeEnvDeformGMapDef}{\ManifoldMapDef{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformGMapDef}{\ManifoldMapDef{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\DispTrialSpaceOverVolumeEnvRefS}{\SpaceHilbert{U}(\VolumeEnvRefS)} \newcommand{\DispTrialSpaceOverVolumeEnvRefM}{\SpaceHilbert{U}(\VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefSAndM}{\SpaceHilbert{U}(\VolumeEnvRefS, \VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefG}{\SpaceHilbert{U}(\VolumeEnvRefG)} \newcommand{\DispTrialSpaceOverVolumeRefS}{\SpaceHilbert{U}(\VolumeRefClosureS)} \newcommand{\DispTrialSpaceOverVolumeRefM}{\SpaceHilbert{U}(\VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefSAndM}{\SpaceHilbert{U}(\VolumeRefClosureS, \VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefG}{\SpaceHilbert{U}(\VolumeRefClosureG)} \newcommand{\DispTestSpaceOverVolumeEnvRefG}{\delta \DispTrialSpaceOverVolumeEnvRefG} \newcommand{\DispTestSpaceOverVolumeRefG}{\delta \DispTrialSpaceOverVolumeRefG} \newcommand{\DispFieldRefSComp}{\DispFieldRefComp^s} \newcommand{\DispFieldRefSTen}{\DispFieldRefTen^s} \newcommand{\DispFieldRefMComp}{\DispFieldRefComp^m} \newcommand{\DispFieldRefMTen}{\DispFieldRefTen^m} \newcommand{\DispFieldRefGTen}{\DispFieldRefTen^\alpha} \newcommand{\DispFieldDiscreteRefGTen}{\DispFieldRefTen^{h,\alpha}} \newcommand{\DispFieldOverVolumeEnvRefGTenDef}{\ManifoldMapDef{\VolumeEnvRefG}{\DispFieldRefGTen}} \newcommand{\DispFieldOverVolumeRefGTenDef}{\ManifoldMapDef{\VolumeRefClosureG}{\DispFieldRefGTen}} \newcommand{\GradVolumeRefG}[1]{\Grad{\RefCoordVec{\VolumeRefClosureG}}{#1}} \newcommand{\GradVolumeEnvRefS}[1]{\Grad{\VolumeEnvRefSCoordVec}{#1}} \newcommand{\GradVolumeEnvRefM}[1]{\Grad{\VolumeEnvRefMCoordVec}{#1}} \newcommand{\GradVolumeEnvRefG}[1]{\Grad{\VolumeEnvRefGCoordVec}{#1}} \newcommand{\DeformGradSComp}{\DeformGradComp^s} \newcommand{\DeformGradSTen}{\DeformGradTen^s} \newcommand{\DeformGradSDet}{\Det{\DeformGradSTen}} \newcommand{\DeformGradSInvTrans}{\InvTrans{\DeformGradSTen}} \newcommand{\DeformGradMComp}{\DeformGradComp^m} \newcommand{\DeformGradMTen}{\DeformGradTen^m} \newcommand{\DeformGradMDet}{\Det{\DeformGradMTen}} \newcommand{\DeformGradMInvTrans}{\InvTrans{\DeformGradMTen}} \newcommand{\DeformGradGTen}{\DeformGradTen^\alpha} \newcommand{\DeformGradOverVolumeEnvRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\DeformGradOverVolumeRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\UnitNormalRefSTen}{\UnitNormalRefTen^s} \newcommand{\UnitNormalRefMTen}{\UnitNormalRefTen^m} \newcommand{\UnitNormalCurrSComp}{\UnitNormalCurrComp^s} \newcommand{\UnitNormalCurrSTen}{\UnitNormalCurrTen^s} \newcommand{\UnitNormalCurrMComp}{\UnitNormalCurrComp^m} \newcommand{\UnitNormalCurrMTen}{\UnitNormalCurrTen^m} \newcommand{\AreaRatioS}{r^s} \newcommand{\AreaRatioM}{r^m} \newcommand{\ContraMTen}{\Mat{a}^m} \newcommand{\SymmProdInProjTan}{C} \newcommand{\ProdPBTanInvCurPBTanInv}{D} \newcommand{\ProdPBTanInvCurMetricInv}{M} \newcommand{\ProdPBTanInvCurMetricInvCurPBTanInv}{W} \newcommand{\PenaltyContactGap}{\SymbolPenalty_{\SymbolContactGap}} \newcommand{\BodyForceRefGTen}{\BodyForceRefTen^\alpha} \newcommand{\TracForceRefGTen}{\TracForceRefTen^\alpha} \newcommand{\BodyForceOverVolumeRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeRefG}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeEnvRefG}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceRefTracGTenDef}{\FuncDef{\TracForceRefGTen}{\SurfaceRefTracG}{\SpatialDomain}} \newcommand{\PressureContact}{\SymbolPressureContact} \newcommand{\PressureContactProjected}{\overline{\SymbolPressureContact}_{\UsplineBasisFuncId}} \newcommand{\CoeffPressureContact}{\SymbolPressureContact_{\UsplineBasisFuncId}} \newcommand{\PressureContactInterpolated}{\hat{\SymbolPressureContact}} \newcommand{\ConstraintRefGTen}{\ConstraintRefTen^\alpha} \newcommand{\GapContact}{\SymbolContactGap} \newcommand{\GapContactProjected}{\overline{\SymbolContactGap}_{\UsplineBasisFuncId}} \newcommand{\GapContactProjectedVariation}{\delta \GapContactProjected} \newcommand{\GapContactMortar}{\GapContact^{m}} \newcommand{\GapContactMortarProjected}{\overline{\GapContact}^{m}_{\UsplineBasisFuncId}} \newcommand{\CoeffGapContactMortar}{\GapContact^{m}_{\UsplineBasisFuncId}} \newcommand{\ConstraintOverSurfaceRefDispGTenDef}{\FuncDef{\ConstraintRefGTen}{\SurfaceRefDispG}{\SpatialDomain}} \newcommand{\EnergyEnvG}{\EnergyEnv^\alpha} \newcommand{\EnergyG}{\Energy^{\alpha}} \newcommand{\EnergyDensityStrainG}{\EnergyDensityStrain^\alpha} \newcommand{\EnergyConstraintG}{\Energy^{\SymbolDisp,\alpha}} \newcommand{\EnergyContact}{\Energy^c} \newcommand{\EnergyOverVolumeRefGDef}{\FuncDef{\EnergyG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyEnvOverVolumeEnvRefGDef}{\FuncDef{\EnergyEnvG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeEnvRefG}{\Reals}} \newcommand{\EnergyContactOverVolumeRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeRefSAndM}{\Reals}} \newcommand{\EnergyContactOverVolumeEnvRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeEnvRefSAndM}{\Reals}} \newcommand{\EnergyConstraintOverVolumeRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\ResidualMat}{\Mat{N}} \newcommand{\ForceInternalContactVec}{\ForceVec^{c,int,n}} \newcommand{\ForceGapContact}{C^n} \newcommand{\StiffnessMatA}{\hat{\Mat{N}}} \newcommand{\StiffnessMatB}{\Mat{T}} \newcommand{\StiffnessMatC}{\Mat{D}} \newcommand{\StiffnessGeometricContact}{\StiffnessMat^{c,g,n}} \newcommand{\StiffnessContact}{\StiffnessMat^{c,n}} \newcommand{\ElemCount}[1]{\operatorname{count}{(#1)}} \newcommand{\ConvexHull}[1]{\operatorname{ch}{\left(#1\right)}} \newcommand{\Normal}[1]{\operatorname{N}{\left(#1\right)}} \newcommand{\NormalConvexHull}[1]{\Normal{\ConvexHull{#1}}} \newcommand{\DiscretePointSetS}{\Set{SP}} \newcommand{\DiscreteElemSetM}{\Set{ME}} \newcommand{\EnvBoundConMapM}{\operatorname{mc}} \newcommand{\EnvBoundConSetM}{\Set{MC}} \newcommand{\SpatialCoordVecToSegmentSetMapMSensor}{\operatorname{cs}} \newcommand{\SpatialCoordVecToSegmentSetMapMElem}{\operatorname{ce}} \newcommand{\SelfContactMap}{\operatorname{sc}} \newcommand{\ColSetS}{\Set{I}} \newcommand{\PairEnvMapBoundM}{\operatorname{cp}} \newcommand{\ApproximateProjectionCollision}[1]{\widetilde{\Projection}{#1}} \newcommand{\ImageSlaveEnv}{\bar{\ParamCoordVecSimple}^{\ParamDomainEnvM}} \newcommand{\ImageSlaveBound}{\bar{\ParamCoordVecSimple}^{\ParamDomainBdryContactM}} \newcommand{\ActiveSet}{\Set{A}} \newcommand{\DiscretePointSetM}{\Set{MP}} \newcommand{\MortarActiveSet}{\Set{A}^m} \newcommand{\PressureContactAnalytical}{p_a} \newcommand{\TipPressureContactAnalytical}{p_0} \newcommand{\ContactHalfWidth}{b}$$\newcommand{\MidGeometryModifier}[1]{\bar{#1}} \newcommand{\SymbolRotationGlobal}{\omega} \newcommand{\SkewMat}[1]{\Mat{s} \left( #1 \right)} \newcommand{\SkewMatInv}[1]{\Mat{s}^{-1} \left( #1 \right)} \newcommand{\Ident}{\Mat{I}} \newcommand{\Cartesian}{\Vec{e}} \newcommand{\ManifoldDim}{n} \newcommand{\LaminaSymbol}{l} \newcommand{\LaminaSymbolUpper}{L} \newcommand{\LaminaMetricSymbol}{j} \newcommand{\ShellMomentSymbol}{q} \newcommand{\DirectorBilinearFunc}[3]{\left(#2,#3\right)_{#1}} \newcommand{\RotObjectiveFunc}{s} \newcommand{\ParamConfig}{\Omega_\xi} \newcommand{\ParamConfigMid}{\Omega_\xi^m} \newcommand{\ParamConfigSec}{\Omega_\xi^s} \newcommand{\ParamConfigBound}{\Gamma_\xi} \newcommand{\ParamConfigMidBound}{\Gamma_\xi^m} \newcommand{\ParamConfigSecBound}{\Gamma_\xi^s} \newcommand{\ParamConfigMuBound}{\Gamma_\xi^\mu} \newcommand{\ParamConfigSigBound}{\Gamma_\xi^\sigma} \newcommand{\ParamConfigDirichMidBound}{\Gamma_\xi^g} \newcommand{\ParamConfigNeuMidBound}{\Gamma_\xi^h} \newcommand{\ParamConfigDirichBound}{\Gamma_\xi^\gamma} \newcommand{\ParamConfigNeuBound}{\Gamma_\xi^\eta} \newcommand{\ParaParam}[1]{\xi_{#1}} \newcommand{\ParaParamVec}{\boldsymbol{\xi}} \newcommand{\RefConfig}{\Omega_0} \newcommand{\RefConfigMid}{\Omega_0^m} \newcommand{\RefConfigSec}{\Omega_0^s} \newcommand{\SurfaceRefRot}{\SurfaceRef^{\SymbolRotationGlobal}} \newcommand{\RefConfigBound}{\Gamma_0} \newcommand{\RefConfigMidBound}{\Gamma_0^m} \newcommand{\RefConfigSecBound}{\Gamma_0^s} \newcommand{\RefConfigMuBound}{\Gamma_0^\mu} \newcommand{\RefConfigSigBound}{\Gamma_0^\sigma} \newcommand{\RefConfigDirichMidBound}{\Gamma_0^g} \newcommand{\RefConfigNeuMidBound}{\Gamma_0^h} \newcommand{\RefConfigDirichBound}{\Gamma_0^\gamma} \newcommand{\RefConfigNeuBound}{\Gamma_0^\eta} \newcommand{\RefMap}{\Vec{X}} \newcommand{\RefMid}{\MidGeometryModifier{\Vec{X}}} \newcommand{\RefDir}{\Vec{D}} \newcommand{\RefSectionPos}{\Vec{R}} \newcommand{\RefCovar}[1]{\Vec{G}_{#1}} \newcommand{\RefMidCovar}[1]{\MidGeometryModifier{\Vec{G}}_{#1}} \newcommand{\RefContra}[1]{\Vec{G}^{#1}} \newcommand{\RefMidContra}[1]{\MidGeometryModifier{\Vec{G}}^{#1}} \newcommand{\RefLamina}[1]{\Vec{L}_{#1}} \newcommand{\RefLaminaDual}[1]{\Vec{\LaminaSymbolUpper}^{#1}} \newcommand{\RefShellProjectedBasis}[1]{\Vec{P}_{#1}} \newcommand{\CurConfig}{\Omega} \newcommand{\CurConfigMid}{\Omega^m} \newcommand{\CurConfigSec}{\Omega^s} \newcommand{\CurConfigBound}{\Gamma} \newcommand{\CurConfigMidBound}{\Gamma^m} \newcommand{\CurConfigSecBound}{\Gamma^s} \newcommand{\CurConfigMuBound}{\Gamma^\mu} \newcommand{\CurConfigSigBound}{\Gamma^\sigma} \newcommand{\CurConfigDirichMidBound}{\Gamma^g} \newcommand{\CurConfigNeuMidBound}{\Gamma^h} \newcommand{\CurConfigDirichBound}{\Gamma^\gamma} \newcommand{\CurConfigNeuBound}{\Gamma^\eta} \newcommand{\CurMap}{\Vec{x}} \newcommand{\CurMid}{\MidGeometryModifier{\Vec{x}}} \newcommand{\CurDir}{\Vec{d}} \newcommand{\CurSectionPos}{\Vec{r}} \newcommand{\CurCovar}[1]{\Vec{g}_{#1}} \newcommand{\CurMidCovar}[1]{\MidGeometryModifier{\Vec{g}}_{#1}} \newcommand{\CurContra}[1]{\Vec{g}^{#1}} \newcommand{\CurMidContra}[1]{\MidGeometryModifier{\Vec{g}}^{#1}} \newcommand{\CurLamina}[1]{\Vec{\LaminaSymbol}_{#1}} \newcommand{\CurLaminaDual}[1]{\Vec{\LaminaSymbol}^{#1}} \newcommand{\CurModLamina}[1]{\hat{\Vec{\LaminaSymbol}}_{#1}} \newcommand{\CurModLaminaDual}[1]{\hat{\Vec{\LaminaSymbol}}^{#1}} \newcommand{\CurShellProjectedBasis}[1]{\Vec{p}_{#1}} \newcommand{\DeformMap}{\varphi} \newcommand{\DeformMapMid}{\varphi^m} \newcommand{\Disp}{\Vec{u}} \newcommand{\DispMid}{\MidGeometryModifier{\Vec{u}}} \newcommand{\RotVec}{\boldsymbol{\omega}} \newcommand{\RotMat}{\boldsymbol{\Lambda}} \newcommand{\RotMatMembrane}{\Mat{\Psi}} \newcommand{\RotMatDelta}{\boldsymbol{\Lambda}_\Delta} \newcommand{\IncRotMat}{\Delta\RotMat} \newcommand{\EulerVec}{\boldsymbol{\vartheta}} \newcommand{\EulerVecNorm}{\theta} \newcommand{\EulerVecSinc}{\boldsymbol{\Theta}} \newcommand{\EulerRotVec}{\boldsymbol{\theta}} \newcommand{\EulerRotAngle}{\theta} \newcommand{\IncEulerRotVec}{\Delta\boldsymbol{\theta}} \newcommand{\AngularVelocity}{\boldsymbol{\eta}} \newcommand{\IncEulerRotVecVel}{\Delta\dot{\boldsymbol{\theta}}} \newcommand{\AngularAcceleration}{\boldsymbol{\alpha}} \newcommand{\IncEulerRotVecAcc}{\Delta\ddot{\boldsymbol{\theta}}} \newcommand{\DeformGrad}{\Mat{F}} \newcommand{\Strain}[1]{\boldsymbol{\tau}_{#1}} \newcommand{\StrainMid}[1]{\boldsymbol{\varepsilon}_{#1}} \newcommand{\StrainCurve}[1]{\boldsymbol{\kappa}_{#1}} \newcommand{\DecompDeform}{\Mat{U}} \newcommand{\ExtraDeformTen}{\Delta\DeformGradTen} \newcommand{\ExtraDeformComp}{\Delta\DeformGradComp} \newcommand{\GreenLagrange}{\Mat{E}} \newcommand{\ShellStrainCurve}[1]{\boldsymbol{\chi}_{#1}} \newcommand{\SecPK}{\Mat{S}} \newcommand{\FirstPK}{\Mat{P}} \newcommand{\Cauchy}{\boldsymbol{\sigma}} \newcommand{\IntTrac}[1]{\Vec{t}_{#1}} \newcommand{\RefModuli}{\Mat{C}} \newcommand{\CurModuli}{\Mat{c}} \newcommand{\PointModuli}{\Mat{m}} \newcommand{\ResModuli}{\Mat{M}} \newcommand{\RefAreaVec}[1]{\Vec{A}_{#1}} \newcommand{\RefAreaMidVec}[1]{\MidGeometryModifier{\Vec{A}}_{#1}} \newcommand{\RefMeas}{G} \newcommand{\UnitNormalRefVec}[1]{\Vec{N}_{#1}} \newcommand{\CurAreaVec}[1]{\Vec{a}_{#1}} \newcommand{\CurAreaMidVec}[1]{\MidGeometryModifier{\Vec{a}}_{#1}} \newcommand{\CurMeas}{g} \newcommand{\UnitNormalCurrVec}[1]{\Vec{n}_{#1}} \newcommand{\CurLaminaMetricTen}{\Mat{\LaminaMetricSymbol}} \newcommand{\CurLaminaMetricComp}{\LaminaMetricSymbol} \newcommand{\CurToModLaminaTransComp}{M} \newcommand{\IntForce}{\Vec{f}^{\, int}} \newcommand{\IntMoment}{\Vec{m}^{int}} \newcommand{\ExtForceBody}{\Vec{f}^{\, ext}_b} \newcommand{\ExtMomentBody}{\Vec{m}^{ext}_b} \newcommand{\ShellExtMomentBody}{\Vec{\ShellMomentSymbol}^{ext}_b} \newcommand{\ExtForceTrac}{\Vec{f}^{\, ext}_h} \newcommand{\ExtMomentTrac}{\Vec{m}^{ext}_h} \newcommand{\ShellExtMomentTrac}{\Vec{\ShellMomentSymbol}^{ext}_h} \newcommand{\MassForce}{\Vec{f}^{\,\rho}} \newcommand{\MassMoment}{\Vec{m}^{\rho}} \newcommand{\ShellMassMoment}{\Vec{\ShellMomentSymbol}^{\rho}} \newcommand{\ResidualInternal}{\Vec{R}^{int}} \newcommand{\ResidualExternal}{\Vec{R}^{ext}} \newcommand{\ResidualMass}{\Mat{R}^{\rho}} \newcommand{\NodalMass}[1]{\Mat{M}_{#1}} \newcommand{\NodalLinearInertia}[1]{A_{#1}} \newcommand{\NodalAngularInertia}[1]{I_{#1}} \newcommand{\ShellDeltaAngle}{\phi} \newcommand{\BStrainMatrix}[2]{\Mat{B}_{#1#2}} \newcommand{\ShellDrillingStiffness}{k} \newcommand{\DrillConstraint}{C} \newcommand{\IntForceDrilling}{\Vec{f}^{d}} \newcommand{\ModuliDrilling}{\Mat{M}^d} \newcommand{\ResidualDrilling}{\Vec{R}^d} \newcommand{\SymbolTop}{top} \newcommand{\SymbolCentroid}{c} \newcommand{\SymbolLeverArm}{r} \newcommand{\SpatialCoordVecCentroid}{\SpatialCoordVec^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidX}{\SpatialCoordX^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidY}{\SpatialCoordY^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidZ}{\SpatialCoordZ^{\SymbolCentroid}} \newcommand{\LeverArm}{\Vec{\SymbolLeverArm}} \newcommand{\LeverArmX}{\SymbolLeverArm_{\SpatialCoordX}} \newcommand{\LeverArmY}{\SymbolLeverArm_{\SpatialCoordY}} \newcommand{\LeverArmZ}{\SymbolLeverArm_{\SpatialCoordZ}} \newcommand{\MomentFirstMass}{Q} \newcommand{\MomentSecondMass}{I} \newcommand{\MomentSecondMassDetailed}[1]{I_{#1}} \newcommand{\DistributedLoad}{q} \newcommand{\TracForceCurrCompX}{\TracForceCurrComp_{\SpatialCoordX}} \newcommand{\TracForceCurrCompY}{\TracForceCurrComp_{\SpatialCoordY}} \newcommand{\TracForceCurrCompZ}{\TracForceCurrComp_{\SpatialCoordZ}} \newcommand{\TracMomentCurrCompDetailed}[1]{\TracMomentCurrComp_{#1}} \newcommand{\TracForceCurrCompSupportReaction}{r^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompSupportReactionDetailed}[1]{\TracForceCurrCompSupportReaction_{#1}} \newcommand{\TracForceCurrCompDistributedLoad}{\DistributedLoad^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompPointLoad}{p^{\TracForceCurrComp}} \newcommand{\TracMomentCurrVec}{\Vec{\TracMomentCurrComp}} \newcommand{\TracMomentCurrComp}{m} \newcommand{\BodyForceCurrCompX}{\BodyForceCurrComp_{\SpatialCoordX}} \newcommand{\BodyForceCurrCompY}{\BodyForceCurrComp_{\SpatialCoordY}} \newcommand{\BodyForceCurrCompZ}{\BodyForceCurrComp_{\SpatialCoordZ}} \newcommand{\BodyForceCurrCompDistributedLoad}{\DistributedLoad^{\BodyForceCurrComp}} \newcommand{\BodyForceCurrCompAxialLoad}{f^{\BodyForceCurrComp}} \newcommand{\StressCauchyTractionVec}{\Vec{t}} \newcommand{\StressCauchyTractionX}{t_{\SpatialCoordX}} \newcommand{\StressCauchyTractionY}{t_{\SpatialCoordY}} \newcommand{\StressCauchyTractionZ}{t_{\SpatialCoordZ}} \newcommand{\StressCauchyNormal}{\sigma} \newcommand{\StressCauchyNormalDetailed}[1]{\StressCauchyNormal_{#1}} \newcommand{\StressCauchyNormalXX}{\StressCauchyComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StressCauchyNormalYY}{\StressCauchyComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StressCauchyNormalZZ}{\StressCauchyComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StressCauchyShear}{\tau} \newcommand{\StressCauchyShearDetailed}[1]{\StressCauchyShear_{#1}} \newcommand{\StressCauchyShearXY}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StressCauchyShearYX}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordX}} \newcommand{\StressCauchyShearXZ}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StressCauchyShearZX}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordX}} \newcommand{\StressCauchyShearYZ}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\StressCauchyShearZY}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordY}} \newcommand{\StressCauchyResultantForce}{F} \newcommand{\StressCauchyResultantForceDetailed}[1]{F_{#1}} \newcommand{\StressCauchyResultantForceVec}{\Vec{\StressCauchyResultantForce}} \newcommand{\StressCauchyResultantMoment}{M} \newcommand{\StressCauchyResultantMomentDetailed}[1]{M_{#1}} \newcommand{\StressCauchyResultantMomentVec}{\Vec{\StressCauchyResultantMoment}} \newcommand{\StressCauchyResultantForceShear}{V} \newcommand{\StressCauchyResultantForceShearDetailed}[1]{V_{#1}} \newcommand{\StressCauchyResultantForceAxial}{\StressCauchyResultantForce} \newcommand{\DispFieldCurrCompX}{\DispFieldCurrComp_{\SpatialCoordX}} \newcommand{\DispFieldCurrCompY}{\DispFieldCurrComp_{\SpatialCoordY}} \newcommand{\DispFieldCurrCompZ}{\DispFieldCurrComp_{\SpatialCoordZ}} \newcommand{\DispFieldMidCurrCompX}{\overline{\DispFieldCurrComp}_{\SpatialCoordX}} \newcommand{\DispFieldMidCurrCompY}{\overline{\DispFieldCurrComp}_{\SpatialCoordY}} \newcommand{\StrainSymGradCompXX}{\StrainSymGradComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StrainSymGradCompYY}{\StrainSymGradComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StrainSymGradCompZZ}{\StrainSymGradComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StrainShearComp}{\gamma} \newcommand{\StrainShearCompXY}{\StrainShearComp_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StrainShearCompXZ}{\StrainShearComp_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StrainShearCompYZ}{\StrainShearComp_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\EquationBeamShearStress}{\frac{\StressCauchyResultantForceShear \MomentFirstMass}{\MomentSecondMassDetailed{\SpatialCoordZ}\Width}} \newcommand{\EquationVecInCoords}{\Vec{v} = v_{\SpatialCoordX} \BasisVecI + v_{\SpatialCoordY} \BasisVecJ + v_{\SpatialCoordZ} \BasisVecK} \newcommand{\EquationMatVecMultiply}{\Mat{M}\Vec{v} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Vec{v}} \\ \DotProduct{\Vec{m}_2}{\Vec{v}} \\ \DotProduct{\Vec{m}_3}{\Vec{v}} \end{bmatrix}} \newcommand{\EquationMatMatMultiply}{\Mat{M}\Mat{N} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Mat{n}_1} & \DotProduct{\Vec{m}_1}{\Mat{n}_2} & \DotProduct{\Vec{m}_1}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_2}{\Mat{n}_1} & \DotProduct{\Vec{m}_2}{\Mat{n}_2} & \DotProduct{\Vec{m}_2}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_3}{\Mat{n}_1} & \DotProduct{\Vec{m}_3}{\Mat{n}_2} & \DotProduct{\Vec{m}_3}{\Mat{n}_3} \end{bmatrix}} \newcommand{\Force}{F} \newcommand{\ShearFlow}{f}$$\newcommand{\BaseSymbol}{b} \newcommand{\EmbeddedSymbol}{e} \newcommand{\RefinedSymbol}{r} \newcommand{\HierarchicalSymbol}{\textsf{H}} \newcommand{\BlockSymbol}{\textsf{B}} \newcommand{\BaseModifier}[1]{{#1}_{\BaseSymbol}} \newcommand{\EmbeddedModifier}[1]{{#1}_{\EmbeddedSymbol}} \newcommand{\RefinedModifier}[1]{{#1}_{\RefinedSymbol}} \newcommand{\HierarchicalModifier}[1]{{#1}_{\HierarchicalSymbol}} \newcommand{\BlockModifier}[1]{{#1}_{\BlockSymbol}} \newcommand{\RefinementLevelI}{i} \newcommand{\RefinementLevelJ}{j} \newcommand{\RefinementLevelK}{k} \newcommand{\HighestRefinementLevel}{N} \newcommand{\BaseParentDomain}{\BaseModifier{\ParentDomain}} \newcommand{\RefinedDomain}[1]{\ParamDomain_{#1}} \newcommand{\BaseMesh}{\BaseModifier{\MeshTopo}} \newcommand{\BaseBezierMesh}{\BaseModifier{\MeshBezier}} \newcommand{\EmbeddedMesh}{\EmbeddedModifier{\MeshTopo}} \newcommand{\RefinedMesh}{\RefinedModifier{\MeshTopo}} \newcommand{\RefinedBezierMesh}{\RefinedModifier{\MeshBezier}} \newcommand{\HierarchicalBezierMesh}{\HierarchicalModifier{\MeshBezier}} \newcommand{\HierarchicalUsplineMesh}{\HierarchicalModifier{\MeshUspline}} \newcommand{\RefinementLevelMesh}[1]{\MeshBezier_{#1}} \newcommand{\LeafElemSet}[1]{\Set{L}_{#1}} \newcommand{\ActiveElemSet}[1]{\Set{A}_{#1}} \newcommand{\ActiveBasisFuncs}[1]{\Set{UFA}_{#1}} \newcommand{\UnderRefinedBasisFuncs}[1]{\Set{UFU}_{#1}} \newcommand{\HierarchicalBasisFuncs}{\Set{UFH}} \newcommand{\TruncatedBasisFuncs}{\Set{UFT}} \newcommand{\FuncsTruncatedToLevel}[1]{\Set{TK}_{#1}} \newcommand{\FuncsTouchingActiveFuncs}[1]{\Set{T}_{#1}} \newcommand{\FuncsSubsetOfCoarserFuncs}[1]{\Set{S}_{#1}} \newcommand{\RefinementLevelBasis}[1]{\UsplineBasisFuncSetFunctionOf{\RefinementLevelMesh{#1}}} \newcommand{\RefinementLevelSpace}[1]{\QuantityRelatedTo{\UsplineSpace}{\RefinementLevelMesh{#1}}} \newcommand{\BaseAssociated}{\operatorname{\textsf{base}}} \newcommand{\BaseAssociatedFunctionOf}[1]{\QFO{\BaseAssociated}{#1}} \newcommand{\TruncationOp}[2]{\QFO{\operatorname{\textsf{trunc}}_{#1}}{#2}} \newcommand{\EmbeddedToBaseChart}{\EmbeddedModifier{\ParentDomainChart}} \newcommand{\InvEmbeddedToBaseChart}{(\EmbeddedToBaseChart)^{-1}} \newcommand{\RefinementCoefficients}{c^A_B} \newcommand{\RefinementMat}{\Mat{D}} \newcommand{\NthLevelProlongationMat}[1]{\QSB{\ProlongationMat}{#1}} \newcommand{\NthLevelActiveMat}[1]{\QSB{\Mat{A}}{#1}} \newcommand{\NthLevelRefinementMat}[1]{\QSB{\RefinementMat}{#1}} \newcommand{\NthLevelTruncationMat}[1]{\QSB{\Mat{T}}{#1}} \newcommand{\NthLevelBasisMat}[1]{\QSB{\Mat{S}}{#1}} \newcommand{\NthLevelMassMat}[1]{\QSB{\MassMat}{#1}} \newcommand{\FuncIndex}{\operatorname*{\mathsf{ID}}} \newcommand{\MultiLevelRefinementMat}[2]{\QSB{\RefinementMat}{#1 #2}} \newcommand{\BlockRefinementMat}{\BlockModifier{\RefinementMat}} \newcommand{\BlockMassMat}{\BlockModifier{\MassMat}}$

Note: This feature is under development. The command to enable or disable features under development is:

Set Developer Commands {On|OFF}

Cohesive elements are used to model things like adhesive that may lose its bond.Elements in a cohesive region originally have zero volume or area, and then expand as the simulation progresses.

Cubit supports 2D cohesive regions.Cohesive elements are implemented in Cubit as element blocks with an element type of FLATQUAD.The cohesive region is identified by assigning geometric curves to the FLATQUAD element block.When the element block is exported, each edge on the specified curves is represented in the exported file as a 4-noded quadrilateral element with zero area.The quadrilateral element is formed by duplicating each node in the original edge and then connecting the two original and two duplicate nodes to form a zero-area quadrilateral.

The image below shows how a FLATQUAD is represented in an exported mesh file.The figure on the left is how the mesh appears in Cubit.The figure on the right is how the mesh appears in the output file.Note that the figure on the right is a topological representation, not a true geometric representation.In reality, the nodes on the left side of block 100 are coincident with the nodes on the right side of block 100, causing the pink elements to have zero area.

Figure 572

15.1.3.1Multiple Curves in FLATQUAD Blocks

Multiple curves may be assigned to a single FLATQUAD element block, as long as the curves do not form a branching path.The figure below, for example, shows an acceptable configuration of multiple curves.

Figure 573

Although multiple curves may be assigned to a single cohesive block, the curves assigned to a block of type FLATQUAD must not branch.A branch occurs whenever three or more curves share a common vertex, as shown in the figure below.This will be corrected in future versions of Cubit.

Figure 574

15.1.4Deleting Mesh Elements

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcommand{\CurveCAD}{\CurveRelatedTo{\SymbolCAD}} \newcommand{\CurveCADModified}{\CurveRelatedTo{\SymbolCADModified}} \newcommand{\CurveMesh}{\CurveRelatedTo{\Partition}} \newcommand{\CurveUspline}{\CurveRelatedTo{\MeshUspline}} \newcommand{\dCurve}{\Differential[\Curve]} \newcommand{\PointCAD}{\PointRelatedTo{\SymbolCAD}} \newcommand{\PointCADModified}{\PointRelatedTo{\SymbolCADModified}} \newcommand{\PointUspline}{\PointRelatedTo{\MeshUspline}} \newcommand{\Segment}[1]{\QuantityChildOf{#1}{\SymbolSegment}} \newcommand{\SegmentOfVolumeEnv}{\Segment{\VolumeEnv}} \newcommand{\SegmentOfSurface}{\Segment{\Surface}} \newcommand{\Hex}{\Segment{}_{h}} \newcommand{\Tet}{\Segment{}_{t}} \newcommand{\SegmentParamDomain}[1]{\QuantityRelatedTo{\ParamDomain}{#1}} \newcommand{\SegmentParamDomainOfVolumeEnv}{\QuantityRelatedTo{\ParamDomain}{\Segment{\VolumeEnv}}} \newcommand{\SegmentParamDomainOfSurface}{\QuantityRelatedTo{\ParamDomain}{\Segment{\Surface}}} \newcommand{\SegmentSet}{\SymbolSegmentSet} \newcommand{\SegmentSetFunctionOf}[1]{\QuantityFunctionOf{\SegmentSet}{#1}} \newcommand{\SegmentSetOutside}{\SegmentSet^{\SymbolOutside}} \newcommand{\SegmentSetInside}{\SegmentSet^{\SymbolInside}} \newcommand{\SegmentSetHybrid}{\SegmentSet^{\SymbolHybrid}} \newcommand{\PartitionFunctionOf}[1]{\QuantityFunctionOf{\Partition}{#1}} \newcommand{\PartitionBezierExtraction}[1]{\QuantityFunctionOf{\SymbolPartition^{B}}{#1}} \newcommand{\PartitionTessellation}[1]{\QuantityFunctionOf{\SymbolPartition^{T}}{#1}} \newcommand{\PartitionTessellationOfUspline}{\PartitionTessellation{\MeshUspline}} \newcommand{\PartitionTessellationMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldCoeff}{\SymbolManifoldCoeff} \newcommand{\ManifoldCoeffUpper}{\SymbolManifoldCoeffUpper} \newcommand{\ManifoldCoeffUspline}{\QuantityRelatedTo{\SymbolManifoldCoeffUspline}{\MeshUspline}} \newcommand{\ManifoldCoeffBernstein}{\QuantityRelatedTo{\SymbolManifoldCoeffBernstein}{\MeshBezier}} \newcommand{\ManifoldCoeffVec}{\Vec{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffSet}{\Set{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVec}{\Vec{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVecCell}{\QuantityRelatedTo{\Vec{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsVecUsplineCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsVecSubmeshCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinSegmentOfVolumeEnv}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\SegmentOfVolumeEnv}} \newcommand{\ManifoldCoeffsSet}{\Set{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsSetCell}{\QuantityRelatedTo{\Set{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsSetUsplineCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsSetBernsteinCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsSetSubmeshCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldTemporalMap}[2]{\QuantityRelatedTo{#2}{#1,\SymbolTime}} \newcommand{\ManifoldPartitionMap}{\ManifoldMap{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldCADMap}{\ManifoldMap{\ParamDomainOnCAD}{\Manifold}} \newcommand{\ManifoldCADMapModified}{\ManifoldMap{\ParamDomainOnCADModified}{\Manifold}} \newcommand{\ManifoldBezierMap}{\ManifoldMap{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMap}{\ManifoldMap{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMap}{\ManifoldMap{\ParamDomain}{\Volume}} \newcommand{\SurfaceMap}{\ManifoldMap{\ParamDomainBdry}{\Surface}} \newcommand{\ManifoldMapDef}[2]{\FuncDef{\ManifoldMap{#1}{#2}}{#1}{#2}} \newcommand{\ManifoldMapInverseDef}[2]{\FuncDef{\Inverse{\ManifoldMap{#1}{#2}}}{#2}{#1}} \newcommand{\ManifoldTemporalMapDef}[2]{\FuncDef{\ManifoldTemporalMap{#1}{#2}}{#1\otimes\Reals_{+}}{#2}} \newcommand{\ManifoldPartitionMapDef}{\ManifoldMapDef{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldBezierMapDef}{\ManifoldMapDef{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMapDef}{\ManifoldMapDef{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMapDef}{\ManifoldMapDef{\ParamDomain}{\Volume}} \newcommand{\SurfaceMapDef}{\ManifoldMapDef{\ParamDomainBdry}{\Surface}} \newcommand{\SurfaceToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\Surface}} \newcommand{\ManifoldCoordDetailed}[2]{\QCO{#1}{#2}} \newcommand{\ManifoldCoordVecDetailed}[2]{\QCO{#1}{\Vec{#2}}} \newcommand{\ManifoldCoord}{x} \newcommand{\ManifoldCoordVec}{\Vec{x}} \newcommand{\ManifoldPartitionMapCoord}{\ManifoldCoordDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldPartitionMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoord}{\ManifoldCoordDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\CovariantBasisSurfVec}{\Vec{\SymbolCovariantBasisSurf}} \newcommand{\CovariantBasisVolVec}{\Vec{\SymbolCovariantBasisVol}} \newcommand{\MetricComp}{\SymbolMetric} \newcommand{\MetricTen}{\Mat{\MetricComp}} \newcommand{\CurvatureComp}{\SymbolCurvature} \newcommand{\CurvatureTen}{\Mat{\CurvatureComp}} \newcommand{\CurvCoordIdOne}{\SymbolCurvCoordIdOne} \newcommand{\CurvCoordIdTwo}{\SymbolCurvCoordIdTwo} \newcommand{\CurvCoordIdThree}{\SymbolCurvCoordIdThree} \newcommand{\OrthogonalCoordTransform}{\Mat{\SymbolOrthogonalTransform}} \newcommand{\InversionPointTen}{\Vec{p}} \newcommand{\InversionPointComp}{p} \newcommand{\BoundingVolume}[1]{\QuantityFunctionOf{\Set{bv}}{#1}} \newcommand{\BoundingVolumeSet}[1]{\QuantityFunctionOf{\Set{BV}}{#1}} \newcommand{\BoundingVolumeTree}[1]{\QuantityFunctionOf{\Set{BVH}}{#1}} \newcommand{\AxisAlignedBoundingBox}[1]{\QuantityFunctionOf{\Set{AABB}}{#1}} \newcommand{\AABBCornerLower}{\Vec{c}^l} \newcommand{\AABBCornerLowerComp}{c^l} \newcommand{\AABBCornerUpper}{\Vec{c}^u} \newcommand{\AABBCornerUpperComp}{c^u} \newcommand{\LowerBound}[2]{B^l\left(#1,#2\right)} \newcommand{\UpperBound}[2]{B^u\left(#1,#2\right)} \newcommand{\UpperBoundValue}{U} \newcommand{\UpperBoundValueBV}{U^{\text{BV}}} \newcommand{\UpperBoundValuePoints}{U^{\text{point}}} \newcommand{\GapTolerance}{\varepsilon^{\text{gap}}} \newcommand{\NearestCells}[3][]{\Set{C}_{#1}\left(#2,#3\right)} \newcommand{\BVHNearestGeom}[3][]{c_{#1}\left(#2,#3\right)} \newcommand{\BVHGeomSetOfSets}{\Set{G}} \newcommand{\BVHTessPointSet}{\Set{P}} \newcommand{\BVHBVSet}{\Set{L}} \newcommand{\SimplexMap}[1]{\QuantityFunctionOf{\Mat{L}}{#1}} \newcommand{\ParamCoordVecTarget}{\ParamCoordVecSimple_0} \newcommand{\SpatialCoordVecTarget}{\SpatialCoordVec_0} \newcommand{\SpatialCoordVecToSegmentSetMap}{\SegmentSet^f} \newcommand{\SpatialCoordVecToParamCoordVecSetMap}{\Inverse{\widetilde{\ManifoldMap{\ParamDomainEnv}{\Surface}}}} \newcommand{\HessMatComp}{H} \newcommand{\HessMatTen}{\Mat{\HessMatComp}} \newcommand{\QuadraturePointEnv}[2]{\SymbolEnvModifier{\QuadraturePoint{#1}{#2}}} \newcommand{\QuadraturePoint}[2]{\SymbolQuadraturePoint_{#1}^{#2}} \newcommand{\QuadraturePointToElemIndexMap}[1]{\operatorname{qe}(#1)} \newcommand{\QuadratureWeightEnv}[2]{\SymbolEnvModifier{\QuadratureWeight{#1}{#2}}} \newcommand{\QuadratureWeight}[2]{\SymbolQuadratureWeight_{#1}^{#2}} \newcommand{\QuadratureSet}{\Set{\SymbolQuadratureSet}} \newcommand{\QuadratureSetInside}{\QuadratureSet^{\SymbolInside}} \newcommand{\QuadratureSetOutside}{\QuadratureSet^{\SymbolOutside}} \newcommand{\QuadratureSubdDepth}{k} \newcommand{\ClosestPointMap}[1]{\QuantityChildOf{#1}{\Vec{\SymbolClosestPointMap}}} \newcommand{\ClosestPointMapCAD}{\ClosestPointMap{\SymbolCAD}} \newcommand{\ClosestPointMapCADModified}{\ClosestPointMap{\SymbolCADModified}} \newcommand{\ProjectionInto}[1]{\QuantityRelatedTo{\SymbolProjection}{#1}} \newcommand{\ProjectionIntoBernsteinCell}{\ProjectionInto{\Cell}} \newcommand{\ProjectionIntoBernsteinElem}{\ProjectionInto{\Elem}} \newcommand{\ProjectionIntoMeshBezier}{\ProjectionInto{\MeshBezier}} \newcommand{\ProjectionIntoMeshUspline}{\ProjectionInto{\MeshUspline}} \newcommand{\LinearInterpolationOp}[1]{\QRT{\SymbolLinearInterpolation}{#1}} \newcommand{\Valence}{k} \newcommand{\ArbitraryVector}[1]{\QSB{v}{#1}} \newcommand{\RotationMatrix}[1]{R^{#1}} \newcommand{\RepVecSymbol}{u} \newcommand{\RepVec}[1]{\QSB{\RepVecSymbol}{#1}} \newcommand{\RepVecVec}{\Vec{\RepVecSymbol}} \newcommand{\AlignmentField}{\RepVecVec'} \newcommand{\BiharmonicEnergy}{\QSB{E}{B}} \newcommand{\PrescribedRepVec}[1]{\QSB{d}{#1}} \newcommand{\AlignmentParameter}{\lambda} \newcommand{\SingularityIndex}[1]{\QSB{\chi}{#1}} \newcommand{\AngularDefect}[1]{\QSB{K}{#1}} \newcommand{\ArbitraryAngle}{\theta} \newcommand{\ParallelTransport}[1]{\QSB{\varphi}{#1}} \newcommand{\MinusPiToPi}[1]{\lfloor #1 \rfloor} \newcommand{\AreaOperator}[1]{\QFO{\operatorname{area}}{#1}} \newcommand{\VectorAngle}[1]{\QFO{\operatorname{arg}}{#1}} \newcommand{\DistanceFunction}{\phi} \newcommand{\DistanceGradient}{X} \newcommand{\HeatField}{\eta} \newcommand{\RegionAtZeroDistance}{\gamma}$$\newcommand{\SymbolDisp}{u} \newcommand{\SymbolDispUpper}{U} \newcommand{\SymbolVelocity}{v} \newcommand{\SymbolVelocityUpper}{V} \newcommand{\SymbolAcceleration}{a} \newcommand{\SymbolAccelerationUpper}{A} \newcommand{\SymbolMass}{M} \newcommand{\SymbolLength}{L} \newcommand{\SymbolArea}{A} \newcommand{\SymbolConstraint}{g} \newcommand{\SymbolConstraintUpper}{G} \newcommand{\SymbolPenalty}{\varepsilon} \newcommand{\SymbolLagrangeMultRef}{\Lambda} \newcommand{\SymbolLagrangeMultCurr}{\lambda} \newcommand{\SymbolFict}{f} \newcommand{\SymbolTracForce}{h} \newcommand{\SymbolTracForceUpper}{H} \newcommand{\SymbolBodyForce}{b} \newcommand{\SymbolBodyForceUpper}{B} \newcommand{\SymbolVolumeRef}{\SymbolVolumeUpper} \newcommand{\SymbolSurfaceRef}{\SymbolSurfaceUpper} \newcommand{\SymbolCurveRef}{\SymbolCurveUpper} \newcommand{\SymbolPointRef}{\SymbolPointUpper} \newcommand{\SymbolVolumeCurr}{\SymbolVolume} \newcommand{\SymbolSurfaceCurr}{\SymbolSurface} \newcommand{\SymbolCurveCurr}{\SymbolCurve} \newcommand{\SymbolPointCurr}{\SymbolPoint} \newcommand{\SymbolDeformGradInc}{f} \newcommand{\SymbolDeformGrad}{F} \newcommand{\SymbolStrainGreenLagrange}{E} \newcommand{\SymbolDeformCauchyGreenLeft}{b} \newcommand{\SymbolDeformCauchyGreenRight}{C} \newcommand{\SymbolStrainDisp}{B} \newcommand{\SymbolStrainSymGrad}{\epsilon} \newcommand{\SymbolStrainPlasticEquiv}{\alpha} \newcommand{\SymbolHardeningPlastic}{k} \newcommand{\SymbolYieldFunction}{f} \newcommand{\SymbolConsistencyParameterPlastic}{\gamma} \newcommand{\SymbolPlasticModuliScaling}{\beta} \newcommand{\SymbolYieldSurfaceNormal}{n} \newcommand{\SymbolEnergy}{\Pi} \newcommand{\SymbolEnergyDensityStrain}{\Psi} \newcommand{\SymbolEnergyDensityStrainVol}{U} \newcommand{\SymbolResidual}{R} \newcommand{\SymbolForce}{F} \newcommand{\SymbolStiffness}{K} \newcommand{\SymbolSolution}{d} \newcommand{\ParamDomainBdryDisp}{\ParamDomainBdry^{\SymbolDisp}} \newcommand{\ParamDomainBdryTrac}{\ParamDomainBdry^{\SymbolTracForce}} \newcommand{\VolumeEnvRef}{\Set{\SymbolEnvModifier{\SymbolVolumeRef}}} \newcommand{\VolumeRef}{\Set{\SymbolVolumeRef}} \newcommand{\VolumeRefClosure}{\overline{\VolumeRef}} \newcommand{\VolumeRefFict}{\VolumeEnvRef\setminus\VolumeRef} \newcommand{\dVolumeRef}{\Differential[\VolumeRef]} \newcommand{\VolumeIndicatorDef}{\FuncDef{\VolumeIndicator_{\PenaltyStiffness}}{\VolumeEnvRef}{\Reals_+}} \newcommand{\SurfaceEnvRef}{\Set{\SymbolEnvModifier{\SymbolSurfaceRef}}} \newcommand{\SurfaceRef}{\Set{\SymbolSurfaceRef}} \newcommand{\SurfaceRefWildCard}{\SurfaceRef^{\SymbolWildCard}} \newcommand{\SurfaceRefDisp}{\SurfaceRef^{\SymbolDisp}} \newcommand{\SurfaceRefTrac}{\SurfaceRef^{\SymbolTracForce}} \newcommand{\SurfaceRefFict}{\SurfaceRef^{\SymbolFict}} \newcommand{\SurfaceRefDispExternal}{\SurfaceRefDisp\setminus\SurfaceRefFict} \newcommand{\SurfaceRefTracExternal}{\SurfaceRefTrac\setminus\SurfaceRefFict} \newcommand{\SurfaceRefFictTrac}{\SurfaceRefTrac\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictDisp}{\SurfaceRefDisp\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictExternal}{\SurfaceRefFict\setminus\SurfaceRef} \newcommand{\dSurfaceRef}{\Differential[\SurfaceRef]} \newcommand{\CurveRef}{\Set{\SymbolCurveRef}} \newcommand{\dCurveRef}{\Differential[\CurveRef]} \newcommand{\PointRef}{\Set{\SymbolPointRef}} \newcommand{\PointRefDisp}{\PointRef^{\SymbolDisp}} \newcommand{\PointRefTrac}{\PointRef^{\SymbolTracForce}} \newcommand{\dPointRef}{\Differential[\PointRef]} \newcommand{\dPointRefTrac}{\Differential[\PointRefTrac]} \newcommand{\RefCoord}[1]{\ManifoldCoordDetailed{#1}{X}} \newcommand{\RefCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{X}} \newcommand{\VolumeEnvRefCoord}{\RefCoord{\VolumeEnvRef}} \newcommand{\VolumeEnvRefCoordVec}{\RefCoordVec{\VolumeEnvRef}} \newcommand{\VolumeRefCoord}{\RefCoord{\VolumeRef}} \newcommand{\VolumeRefCoordVec}{\RefCoordVec{\VolumeRef}} \newcommand{\SurfaceRefCoord}{\RefCoord{\SurfaceRef}} \newcommand{\SurfaceRefCoordVec}{\RefCoordVec{\SurfaceRef}} \newcommand{\SurfaceRefDispCoord}{\RefCoord{\SurfaceRefDisp}} \newcommand{\SurfaceRefDispCoordVec}{\RefCoordVec{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracCoord}{\RefCoord{\SurfaceRefTrac}} \newcommand{\SurfaceRefTracCoordVec}{\RefCoordVec{\SurfaceRefTrac}} \newcommand{\CurveRefCoord}{\RefCoord{\CurveRef}} \newcommand{\CurveRefCoordVec}{\RefCoordVec{\CurveRef}} \newcommand{\UsplineBasisFuncOverCurveRef}[1]{\UsplineBasisFuncDetailed{\CurveRef}{#1}} \newcommand{\UsplineBasisFuncOverSurfaceRefDisp}[1]{\UsplineBasisFuncDetailed{\SurfaceRefDisp}{#1}} \newcommand{\VolumeEnvCurr}{\Set{\SymbolEnvModifier{\SymbolVolumeCurr}}} \newcommand{\VolumeCurr}{\Set{\SymbolVolumeCurr}} \newcommand{\VolumeCurrClosure}{\overline{\VolumeCurr}} \newcommand{\dVolumeCurr}{\Differential[\VolumeCurr]} \newcommand{\SurfaceEnvCurr}{\Set{\SymbolEnvModifier{\SymbolSurfaceCurr}}} \newcommand{\SurfaceCurr}{\Set{\SymbolSurfaceCurr}} \newcommand{\SurfaceCurrDisp}{\SurfaceCurr^{\SymbolDisp}} \newcommand{\SurfaceCurrTrac}{\SurfaceCurr^{\SymbolTracForce}} \newcommand{\dSurfaceCurr}{\Differential[\SurfaceCurr]} \newcommand{\CurveCurr}{\Set{\SymbolCurveCurr}} \newcommand{\dCurveCurr}{\Differential[\CurveCurr]} \newcommand{\PointCurr}{\Set{\SymbolPointCurr}} \newcommand{\PointCurrDisp}{\PointCurr^{\SymbolDisp}} \newcommand{\PointCurrTrac}{\PointCurr^{\SymbolTracForce}} \newcommand{\dPointCurr}{\Differential[\PointCurr]} \newcommand{\CurrCoord}[1]{\ManifoldCoordDetailed{#1}{x}} \newcommand{\CurrCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{x}} \newcommand{\VolumeEnvCurrCoord}{\CurrCoord{\VolumeEnvCurr}} \newcommand{\VolumeEnvCurrCoordVec}{\CurrCoordVec{\VolumeEnvCurr}} \newcommand{\VolumeCurrCoord}{\CurrCoord{\VolumeCurr}} \newcommand{\VolumeCurrCoordVec}{\CurrCoordVec{\VolumeCurr}} \newcommand{\SurfaceCurrCoord}{\CurrCoord{\SurfaceCurr}} \newcommand{\SurfaceCurrCoordVec}{\CurrCoordVec{\SurfaceCurr}} \newcommand{\SurfaceCurrDispCoord}{\CurrCoord{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrDispCoordVec}{\CurrCoordVec{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrTracCoord}{\CurrCoord{\SurfaceCurrTrac}} \newcommand{\SurfaceCurrTracCoordVec}{\CurrCoordVec{\SurfaceCurrTrac}} \newcommand{\CurveCurrCoord}{\CurrCoord{\CurveRef}} \newcommand{\CurveCurrCoordVec}{\CurrCoordVec{\CurveRef}} \newcommand{\VolumeEnvRefMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\GenericGradOverVolumeEnvRefMap}[1]{\Grad{\VolumeEnvRefMap}{#1}} \newcommand{\VolumeRefMap}{\ManifoldMap{\ParamDomain}{\VolumeRef}} \newcommand{\GenericGradOverVolumeRefMap}[1]{\Grad{\VolumeRefMap}{#1}} \newcommand{\SurfaceRefDispMap}{\ManifoldMap{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMap}{\ManifoldMap{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\CurveRefMap}{\ManifoldMap{\ParamDomain}{\CurveRef}} \newcommand{\GenericGradOverCurveRefMap}[1]{\Grad{\CurveRefMap}{#1}} \newcommand{\VolumeEnvRefMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\SurfaceRefDispMapDef}{\ManifoldMapDef{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMapDef}{\ManifoldMapDef{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\SurfaceRefToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRef}} \newcommand{\SurfaceRefDispToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefTrac}} \newcommand{\CurveRefMapDef}{\ManifoldMapDef{\ParamDomain}{\CurveRef}} \newcommand{\GenericDeformMap}{\Vec{\varphi}} \newcommand{\VolumeEnvDeformMap}{\ManifoldMap{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\GenericGradOverVolumeEnvDeformMap}[1]{\Grad{\VolumeEnvDeformMap}{#1}} \newcommand{\VolumeDeformMap}{\ManifoldMap{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMap}{\ManifoldTemporalMap{\VolumeRef}{\VolumeCurr}} \newcommand{\GradVolumeDeformTemporalMap}{\GenericGradOverVolumeRefMap{\VolumeDeformTemporalMap}} \newcommand{\SurfaceDeformDispMap}{\ManifoldMap{\SurfaceRefDisp}{\SurfaceCurrDisp}} \newcommand{\SurfaceDeformTracMap}{\ManifoldMap{\SurfaceRefTrac}{\SurfaceCurrTrac}} \newcommand{\CurveDeformMap}{\ManifoldMap{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMap}{\ManifoldTemporalMap{\CurveRef}{\CurveCurr}} \newcommand{\VolumeDeformMapDef}{\ManifoldMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMapDef}{\ManifoldTemporalMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeEnvDeformMapDef}{\ManifoldMapDef{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\CurveDeformMapDef}{\ManifoldMapDef{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMapDef}{\ManifoldTemporalMapDef{\CurveRef}{\CurveCurr}} \newcommand{\DispTrialSpaceOverVolumeEnvRef}{\SpaceHilbert{U}(\VolumeEnvRef)} \newcommand{\DispTestSpaceOverVolumeEnvRef}{\delta \DispTrialSpaceOverVolumeEnvRef} \newcommand{\DispTrialSpaceOverVolumeRef}{\SpaceHilbert{U}(\VolumeRef)} \newcommand{\DispTestSpaceOverVolumeRef}{\delta \DispTrialSpaceOverVolumeRef} \newcommand{\DispTrialSpaceOverCurveRef}{\SpaceHilbert{U}(\CurveRef)} \newcommand{\DispTestSpaceOverCurveRef}{\delta \DispTrialSpaceOverCurveRef} \newcommand{\DispFieldRefComp}{\SymbolDispUpper} \newcommand{\DispFieldRefTen}{\Vec{\DispFieldRefComp}} \newcommand{\DispFieldCurrComp}{\SymbolDisp} \newcommand{\DispFieldCurrTen}{\Vec{\DispFieldCurrComp}} \newcommand{\VelFieldCurrTen}{\Vec{\SymbolVelocity}} \newcommand{\AccFieldCurrTen}{\Vec{\SymbolAcceleration}} \newcommand{\DeformGradComp}{\SymbolDeformGrad} \newcommand{\DeformGradTen}{\Mat{\DeformGradComp}} \newcommand{\DeformGradDet}{\Det{\DeformGradTen}} \newcommand{\KinematicElast}{e} \newcommand{\KinematicPlast}{p} \newcommand{\DivVolumeEnvRef}[1]{\Div{\VolumeEnvRefCoordVec}{#1}} \newcommand{\DivVolumeEnvCurr}[1]{\Div{\VolumeEnvCurrCoordVec}{#1}} \newcommand{\DeformGradIncComp}{\SymbolDeformGradInc} \newcommand{\DeformGradIncTen}{\Mat{\DeformGradIncComp}} \newcommand{\DeformGradIncDevComp}{\bar{\SymbolDeformGradInc}} \newcommand{\DeformGradIncDevTen}{\bar{\Mat{\DeformGradIncComp}}} \newcommand{\JAsDeformGradDet}{J} \newcommand{\StretchTen}{\Mat{V}} \newcommand{\StrainGreenLagrangeComp}{\SymbolStrainGreenLagrange} \newcommand{\StrainGreenLagrangeTen}{\Mat{\StrainGreenLagrangeComp}} \newcommand{\StrainGreenLagrangeVoigt}{\tilde{\StrainGreenLagrangeTen}} \newcommand{\DeformCauchyGreenRightComp}{\SymbolDeformCauchyGreenRight} \newcommand{\DeformCauchyGreenRightTen}{\Mat{\DeformCauchyGreenRightComp}} \newcommand{\DeformCauchyGreenLeftComp}{\SymbolDeformCauchyGreenLeft} \newcommand{\DeformCauchyGreenLeftTen}{\Mat{\DeformCauchyGreenLeftComp}} \newcommand{\DeformCauchyGreenLeftDevComp}{\bar{\SymbolDeformCauchyGreenLeft}} \newcommand{\DeformCauchyGreenLeftDevTen}{\bar{\Mat{\DeformCauchyGreenLeftComp}}} \newcommand{\StrainSymGradComp}{\SymbolStrainSymGrad} \newcommand{\StrainSymGradTen}{\Mat{\StrainSymGradComp}} \newcommand{\StrainDispMat}{\Mat{\SymbolStrainDisp}} \newcommand{\DeformCauchyGreenRightDevComp}{\bar{\SymbolDeformCauchyGreenRight}} \newcommand{\DeformCauchyGreenRightDevTen}{\bar{\Mat{\DeformCauchyGreenRightComp}}} \newcommand{\KinematicElastoplast}{{\rm ep}} \newcommand{\Trial}{{\rm trial}} \newcommand{\DeformCauchyGreenLeftElasticTenDef}{\DeformCauchyGreenLeftTen^\KinematicElast \DefEq \DeformGradTen^\KinematicElast \DeformGradTen^{\KinematicElast T}} \newcommand{\DeformCauchyGreenLeftElasticDevTenDef}{{\DeformCauchyGreenLeftDevTen}^\KinematicElast \DefEq {\JAsDeformGradDet}^{\KinematicElast-\frac{2}{3}} {\DeformCauchyGreenLeftTen}^\KinematicElast} \newcommand{\DeformCauchyGreenRightPlasticTenDef}{\DeformCauchyGreenRightTen^\KinematicPlast \DefEq \DeformGradTen^{\KinematicPlast T} \DeformGradTen^\KinematicPlast} \newcommand{\StrainPlasticEquiv}{\SymbolStrainPlasticEquiv} \newcommand{\ConsistencyParameterPlasticDiscrete}{\Delta \SymbolConsistencyParameterPlastic} \newcommand{\YieldSurfaceNormalComp}{\SymbolYieldSurfaceNormal} \newcommand{\YieldSurfaceNormalTen}{\Mat{\SymbolYieldSurfaceNormal}} \newcommand{\UnitNormalRefComp}{N} \newcommand{\UnitNormalRefTen}{\Vec{\UnitNormalRefComp}} \newcommand{\UnitNormalCurrComp}{\UnitNormalComp} \newcommand{\UnitNormalCurrTen}{\UnitNormal} \newcommand{\DispFieldOverVolumeEnvRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeEnvCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\DispFieldOverVolumeRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeDeformMap}} \newcommand{\DispFieldOverCurveRefTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\DispFieldOverCurveRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DeformGradOverVolumeRefTenDef}{\FuncDef{\DeformGradTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\DeformGradOverCurveRefTenDef}{\FuncDef{\DeformGradTen}{\CurveRef}{\CurveCurr}} \newcommand{\StrainGreenLagrangeOverVolumeEnvRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\StrainGreenLagrangeOverVolumeRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\StrainGreenLagrangeOverCurveRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\CurveRef}{\CurveCurr}} \newcommand{\DeformCauchyGreenLeftTenDef}{\DeformCauchyGreenLeftTen \DefEq \DeformGradTen \DeformGradTen^T} \newcommand{\DeformCauchyGreenLeftDevTenDef}{\DeformCauchyGreenLeftDevTen \DefEq \DeformGradDet^{-\frac{2}{3}} \DeformCauchyGreenLeftTen} \newcommand{\StressPKOneTen}{\Mat{P}} \newcommand{\StressPKTwoComp}{S} \newcommand{\StressPKTwoTen}{\Mat{\StressPKTwoComp}} \newcommand{\StressPKTwoVoigt}{\tilde{\StressPKTwoTen}} \newcommand{\StressCauchyComp}{\sigma} \newcommand{\StressCauchyTen}{\Mat{\sigma}} \newcommand{\StressCauchyVoigt}{\tilde{\StressCauchyTen}} \newcommand{\StressCauchyMean}{p} \newcommand{\StressCauchyYield}{\StressCauchyComp_Y} \newcommand{\StressKirchhoffComp}{\tau} \newcommand{\StressKirchhoffTen}{\Mat{\tau}} \newcommand{\StressKirchhoffVoigt}{\tilde{\StressKirchhoffTen}} \newcommand{\StressKirchhoffDevComp}{s} \newcommand{\StressKirchhoffDevTen}{\Mat{\StressKirchhoffDevComp}} \newcommand{\ModuliElastRefComp}{C} \newcommand{\ModuliElastRefTen}{\Mat{\ModuliElastRefComp}} \newcommand{\ModuliElastRefVoigt}{\tilde{\ModuliElastRefTen}} \newcommand{\ModuliElastCurrComp}{c} \newcommand{\ModuliElastCurrTen}{\Mat{\ModuliElastCurrComp}} \newcommand{\ModuliElastCurrVoigt}{\tilde{\ModuliElastCurrTen}} \newcommand{\MaterialYoungsModulus}{E} \newcommand{\MaterialPoissonsRatio}{\nu} \newcommand{\MaterialMassDensity}{\rho} \newcommand{\MaterialBulkModulus}{\kappa} \newcommand{\MaterialShearModulus}{\mu} \newcommand{\MaterialShearModulusDev}{\bar{\MaterialShearModulus}} \newcommand{\MaterialThermalExpansion}{\alpha_{\text{thermal}}} \newcommand{\Area}{\SymbolArea} \newcommand{\Length}{\SymbolLength} \newcommand{\Width}{b} \newcommand{\Height}{h} \newcommand{\PenaltyStiffness}{\SymbolPenalty_{\SymbolStiffness}} \newcommand{\PenaltyDisp}{\SymbolPenalty_{\SymbolDisp}} \newcommand{\BodyForceRefComp}{\SymbolBodyForceUpper} \newcommand{\BodyForceRefTen}{\Vec{\BodyForceRefComp}} \newcommand{\BodyForceCurrComp}{\SymbolBodyForce} \newcommand{\BodyForceCurrTen}{\Vec{\BodyForceCurrComp}} \newcommand{\TracForceRefComp}{\SymbolTracForceUpper} \newcommand{\TracForceRefTen}{\Vec{\TracForceRefComp}} \newcommand{\TracForceCurrComp}{\SymbolTracForce} \newcommand{\TracForceCurrTen}{\Vec{\TracForceCurrComp}} \newcommand{\Pressure}{p} \newcommand{\BodyForceOverVolumeEnvRefTenDef}{\FuncDef{\BodyForceRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\BodyForceOverCurveRefCompDef}{\FuncDef{\BodyForceRefComp}{\CurveRef}{\Reals}} \newcommand{\BodyForceOverCurveRefTenDef}{\FuncDef{\BodyForceRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\BodyForceOverCurveCurrCompDef}{\BodyForceCurrComp \DefEq \BodyForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\BodyForceOverCurveCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverSurfaceRefTracTenDef}{\FuncDef{\TracForceRefTen}{\SurfaceRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceCurrTracTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\SurfaceDeformTracMap}} \newcommand{\TracForceOverCurveRefCompDef}{\FuncDef{\TracForceRefComp}{\PointRefTrac}{\Reals}} \newcommand{\TracForceOverCurveRefTenDef}{\FuncDef{\TracForceRefTen}{\PointRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverCurveCurrCompDef}{\TracForceCurrComp \DefEq \TracForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverCurveCurrTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\ConstraintRefTen}{\Vec{\SymbolConstraintUpper}} \newcommand{\LagrangeMultTestSpaceOverSurfaceRef}{\delta \LagrangeMultTrialSpaceOverSurfaceRef} \newcommand{\LagrangeMultTrialSpaceOverSurfaceRef}{\SpaceHilbert{L}(\SurfaceRefDisp)} \newcommand{\LagrangeMultRefComp}{\SymbolLagrangeMultRef} \newcommand{\LagrangeMultRefTen}{\Vec{\LagrangeMultRefComp}} \newcommand{\LagrangeMultCurrComp}{\SymbolLagrangeMultCurr} \newcommand{\LagrangeMultCurrTen}{\Vec{\LagrangeMultCurrComp}} \newcommand{\ConstraintOverSurfaceRefDispTenDef}{\FuncDef{\ConstraintRefTen}{\SurfaceRefDisp}{\SpatialDomain}} \newcommand{\LagrangeMultOverSurfaceCurrTenDef}{\LagrangeMultCurrTen \DefEq \LagrangeMultRefTen \circ \Inverse{\SurfaceDeformDispMap}} \newcommand{\Energy}{\SymbolEnergy} \newcommand{\EnergyElastic}[1]{\QFO{\Energy}{#1}} \newcommand{\EnergyElasticNoArg}{\QFONA{\Energy}} \newcommand{\EnergyEnv}{\SymbolEnvModifier{\Energy}} \newcommand{\EnergyInside}{\Energy^{\SymbolInside}} \newcommand{\EnergyOutside}{\Energy^{\SymbolOutside}} \newcommand{\EnergyConstraint}{\Energy^{\LagrangeMultCurrComp}} \newcommand{\EnergyDensityStrain}{\SymbolEnergyDensityStrain} \newcommand{\EnergyDensityStrainVol}{\SymbolEnergyDensityStrainVol} \newcommand{\EnergyDensityStrainDev}{\bar{\SymbolEnergyDensityStrain}} \newcommand{\EnergyInsideOverVolumeEnvRefDef}{\FuncDef{\EnergyInside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyOutsideOverVolumeEnvRefDef}{\FuncDef{\EnergyOutside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefDef}{\FuncDef{\EnergyConstraint}{\DispTrialSpaceOverVolumeEnvRef\TensorProduct\LagrangeMultTrialSpaceOverSurfaceRef}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefDef}{\FuncDef{\EnergyDensityStrain}{\VolumeEnvRef}{\Reals}} \newcommand{\ResidualComp}{\SymbolResidual} \newcommand{\ResidualVec}{\Vec{\ResidualComp}} \newcommand{\ForceVec}{\Vec{\SymbolForce}} \newcommand{\ForceInternalVec}{\ForceVec^{int}} \newcommand{\ForceExternalVec}{\ForceVec^{ext}} \newcommand{\ForceConstraintPenaltyVec}{\ForceVec^{\PenaltyDisp}} \newcommand{\ForceConstraintLagrangeVec}{\ForceVec^{\lambda1}} \newcommand{\ForceConstraintVec}{\ForceVec^{\lambda2}} \newcommand{\StiffnessMat}{\Mat{\SymbolStiffness}} \newcommand{\StiffnessMaterialMat}{\StiffnessMat^{m}} \newcommand{\StiffnessGeometricMat}{\StiffnessMat^{g}} \newcommand{\StiffnessPenaltyMat}{\StiffnessMat^{\PenaltyDisp}} \newcommand{\StiffnessLagrangeMat}{\StiffnessMat^{\LagrangeMultCurrComp}} \newcommand{\MassMat}{\Mat{\SymbolMass}} \newcommand{\LumpedMassMat}{\tilde{\MassMat}} \newcommand{\SolutionComp}{\SymbolSolution} \newcommand{\Solution}{\Vec{\SymbolSolution}} \newcommand{\SolutionDisp}{\Solution^{\DispFieldCurrComp}} \newcommand{\SolutionLagrange}{\Solution^{\LagrangeMultCurrComp}} \newcommand{\Flex}[1]{\mathcal{F}_{#1}} \newcommand{\FlexIt}{\mathcal{F}} \newcommand{\FlexFEA}{\Flex{\bar{0}}} \newcommand{\FlexFEAModified}{\Flex{0}} \newcommand{\FlexOne}{\Flex{1}} \newcommand{\FlexImmersed}{\Flex{\infty}} \newcommand{\FlexInfty}{\mathcal{F}{\infty}} \newcommand{\FlexSpectrum}{\overleftrightarrow{\mathcal{F}}} \newcommand{\FlexSpectrumId}{i} \newcommand{\TimeStep}{\Delta \SymbolTime} \newcommand{\SpectralRadius}{\rho_{\infty}}$$\newcommand{\SymbolPressureContact}{p} \newcommand{\SymbolContactGap}{g} \newcommand{\NumUsplineBasisFuncsS}{\Size{\UsplineBasisFuncSetOnMeshUspline^s}} \newcommand{\NumUsplineBasisFuncsM}{\Size{\UsplineBasisFuncSetOnMeshUspline^m}} \newcommand{\NumUsplineBasisFuncsG}{\Size{\UsplineBasisFuncSetOnMeshUspline^\alpha}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactS}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactS}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactM}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactM}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactG}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactG}}} \newcommand{\ParamDomainEnvS}{\ParamDomainEnv^{s}} \newcommand{\ParamDomainEnvM}{\ParamDomainEnv^{m}} \newcommand{\ParamDomainEnvG}{\ParamDomainEnv^{\alpha}} \newcommand{\ParamDomainS}{\ParamDomain^{s}} \newcommand{\ParamDomainM}{\ParamDomain^{m}} \newcommand{\ParamDomainG}{\ParamDomain^\alpha} \newcommand{\ParamDomainClosureS}{\overline{\ParamDomain}^s} \newcommand{\ParamDomainClosureM}{\overline{\ParamDomain}^m} \newcommand{\ParamDomainClosureG}{\overline{\ParamDomain}^\alpha} \newcommand{\ParamDomainBdryG}{\ParamDomainBdry^\alpha} \newcommand{\ParamDomainBdryContactS}{\ParamDomainBdry^{c,s}} \newcommand{\ParamDomainBdryContactM}{\ParamDomainBdry^{c,m}} \newcommand{\ParamDomainBdryContactG}{\ParamDomainBdry^{c,\alpha}} \newcommand{\ParamDomainBdryTangentComp}{A} \newcommand{\ParamDomainBdryTangentTen}{\Mat{\ParamDomainBdryTangentComp}} \newcommand{\ParamDetJacobianS}{j^s} \newcommand{\ParamDomainGCoordVec}{\ParamCoordVecSimple^{\ParamDomainG}} \newcommand{\ParamDomainGCoord}{\ParamCoordSimple^{\ParamDomainG}} \newcommand{\ParamDomainEnvGCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvGCoord}{\ParamCoordSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvSCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvSCoord}{\ParamCoordSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvMCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainEnvMCoord}{\ParamCoordSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainBdryContactGCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactGCoord}{\ParamCoordSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactSCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactSCoord}{\ParamCoordSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactMCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactM}} \newcommand{\ParamDomainBdryContactMCoord}{\ParamCoordSimple^{\ParamDomainBdryContactM}} \newcommand{\SegmentParamDomainOfVolumeEnvRefS}{\QuantityRelatedTo{\ParamDomainEnvS}{\SegmentOfVolumeEnvRefS}} \newcommand{\SegmentParamDomainOfVolumeEnvRefM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvRefM}} \newcommand{\SegmentParamDomainOfVolumeEnvCurrM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvCurrM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactS}{\QuantityRelatedTo{\ParamDomainBdryContactS}{\SegmentOfSurfaceCurrContactS}} \newcommand{\SegmentParamDomainOfSurfaceRefContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceRefContactM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceCurrContactM}} \newcommand{\UsplineBasisFuncS}{\UsplineBasisFunc^{s}} \newcommand{\UsplineBasisFuncM}{\UsplineBasisFunc^{m}} \newcommand{\UsplineBasisFuncG}{\UsplineBasisFunc^{\alpha}} \newcommand{\UsplineBasisFuncParamDomainBdryContactS}{\UsplineBasisFunc^{\ParamDomainBdryContactS}} \newcommand{\UsplineBasisFuncParamDomainBdryContactM}{\UsplineBasisFunc^{\ParamDomainBdryContactM}} \newcommand{\UsplineBasisFuncParamDomainBdryContactG}{\UsplineBasisFunc^{\ParamDomainBdryContactG}} \newcommand{\UsplineBasisSymmSecondOrderComp}{S} \newcommand{\UsplineBasisSymmSecondOrderTen}{\Mat{\UsplineBasisSymmSecondOrderComp}} \newcommand{\UsplineBasisSymmFourthOrderComp}{E} \newcommand{\UsplineBasisSymmSixthOrderComp}{Z} \newcommand{\VolumeEnvRefG}{\VolumeEnvRef^{\alpha}} \newcommand{\VolumeEnvRefS}{\VolumeEnvRef^{s}} \newcommand{\VolumeEnvRefM}{\VolumeEnvRef^{m}} \newcommand{\VolumeRefG}{\VolumeRef^{\alpha}} \newcommand{\VolumeRefS}{\VolumeRef^{s}} \newcommand{\VolumeRefM}{\VolumeRef^{m}} \newcommand{\VolumeRefClosureG}{\VolumeRefClosure^\alpha} \newcommand{\VolumeRefClosureS}{\VolumeRefClosure^s} \newcommand{\VolumeRefClosureM}{\VolumeRefClosure^m} \newcommand{\SurfaceRefG}{\SurfaceRef^\alpha} \newcommand{\SurfaceRefS}{\SurfaceRef^s} \newcommand{\SurfaceRefM}{\SurfaceRef^m} \newcommand{\SurfaceRefTracG}{\SurfaceRef^{\SymbolTracForce,\alpha}} \newcommand{\SurfaceRefDispG}{\SurfaceRef^{\SymbolDisp,\alpha}} \newcommand{\SurfaceRefContactG}{\SurfaceRef^{c,\alpha}} \newcommand{\SurfaceRefContactS}{\SurfaceRef^{c,s}} \newcommand{\SurfaceRefContactM}{\SurfaceRef^{c,m}} \newcommand{\VolumeEnvRefSCoordVec}{\RefCoordVec{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMCoordVec}{\RefCoordVec{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGCoordVec}{\RefCoordVec{\VolumeEnvRefG}} \newcommand{\VolumeRefGCoordVec}{\RefCoordVec{\VolumeRefG}} \newcommand{\SurfaceRefContactSCoord}{\RefCoord{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactSCoordVec}{\RefCoordVec{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMCoord}{\RefCoord{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactMCoordVec}{\RefCoordVec{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGCoord}{\RefCoord{\SurfaceRefContactG}} \newcommand{\SurfaceRefContactGCoordVec}{\RefCoordVec{\SurfaceRefContactG}} \newcommand{\SurfaceRefDispGCoordVec}{\RefCoordVec{\SurfaceRefDispG}} \newcommand{\SegmentOfVolumeEnvRefS}{\Segment{\VolumeEnvRefS}} \newcommand{\SegmentOfVolumeEnvRefM}{\Segment{\VolumeEnvRefM}} \newcommand{\SegmentOfSurfaceRefContactS}{\Segment{\SurfaceRefContactS}} \newcommand{\SegmentOfSurfaceRefContactM}{\Segment{\SurfaceRefContactM}} \newcommand{\VolumeEnvCurrG}{\VolumeEnvCurr^{\alpha}} \newcommand{\VolumeEnvCurrS}{\VolumeEnvCurr^{s}} \newcommand{\VolumeEnvCurrM}{\VolumeEnvCurr^{m}} \newcommand{\VolumeCurrG}{\VolumeCurr^{\alpha}} \newcommand{\VolumeCurrS}{\VolumeCurr^{s}} \newcommand{\VolumeCurrM}{\VolumeCurr^{m}} \newcommand{\VolumeCurrClosureG}{\VolumeCurrClosure^\alpha} \newcommand{\VolumeCurrClosureS}{\VolumeCurrClosure^s} \newcommand{\VolumeCurrClosureM}{\VolumeCurrClosure^m} \newcommand{\SurfaceCurrG}{\SurfaceCurr^\alpha} \newcommand{\SurfaceCurrS}{\SurfaceCurr^s} \newcommand{\SurfaceCurrM}{\SurfaceCurr^m} \newcommand{\SurfaceCurrContact}{\SurfaceCurr^{c}} \newcommand{\SurfaceCurrContactG}{\SurfaceCurr^{c,\alpha}} \newcommand{\SurfaceCurrContactS}{\SurfaceCurr^{c,s}} \newcommand{\SurfaceCurrContactM}{\SurfaceCurr^{c,m}} \newcommand{\VolumeEnvCurrSCoordVec}{\CurrCoordVec{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMCoordVec}{\CurrCoordVec{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGCoordVec}{\CurrCoordVec{\VolumeEnvCurrG}} \newcommand{\VolumeCurrGCoordVec}{\CurrCoordVec{\VolumeCurrG}} \newcommand{\SurfaceCurrContactSCoord}{\CurrCoord{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactSCoordVec}{\CurrCoordVec{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMCoord}{\CurrCoord{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactMCoordVec}{\CurrCoordVec{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGCoord}{\CurrCoord{\SurfaceCurrContactG}} \newcommand{\SurfaceCurrContactGCoordVec}{\CurrCoordVec{\SurfaceCurrContactG}} \newcommand{\SegmentOfVolumeEnvCurrS}{\Segment{\VolumeEnvCurrS}} \newcommand{\SegmentOfVolumeEnvCurrM}{\Segment{\VolumeEnvCurrM}} \newcommand{\SegmentOfSurfaceCurrContactS}{\Segment{\SurfaceCurrContactS}} \newcommand{\SegmentOfSurfaceCurrContactM}{\Segment{\SurfaceCurrContactM}} \newcommand{\VolumeEnvRefSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeEnvRefSMapInv}{\Inverse{\VolumeEnvRefSMap}} \newcommand{\VolumeEnvRefMMapInv}{\Inverse{\VolumeEnvRefMMap}} \newcommand{\VolumeEnvRefGMapInv}{\Inverse{\VolumeEnvRefGMap}} \newcommand{\VolumeRefClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeRefClosureS}} \newcommand{\VolumeRefClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}} \newcommand{\VolumeRefClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\VolumeRefSMap}{\ManifoldMap{\ParamDomainS}{\VolumeRefS}} \newcommand{\VolumeRefMMap}{\ManifoldMap{\ParamDomainM}{\VolumeRefM}} \newcommand{\VolumeRefGMap}{\ManifoldMap{\ParamDomainG}{\VolumeRefG}} \newcommand{\VolumeRefClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\VolumeRefClosureMMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}\Big|_{\ParamDomainBdryContactM}} \newcommand{\SurfaceRefContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvRefGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeRefClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\SurfaceRefContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvCurrSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeCurrClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeCurrClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeCurrSMap}{\ManifoldMap{\ParamDomainS}{\VolumeCurrS}} \newcommand{\VolumeCurrMMap}{\ManifoldMap{\ParamDomainM}{\VolumeCurrM}} \newcommand{\VolumeCurrGMap}{\ManifoldMap{\ParamDomainG}{\VolumeCurrG}} \newcommand{\VolumeCurrClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\SurfaceCurrContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvCurrGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\SurfaceCurrContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvDeformSMap}{\ManifoldMap{\VolumeEnvRefS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvDeformMMap}{\ManifoldMap{\VolumeEnvRefM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvDeformGMap}{\ManifoldMap{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformSMap}{\ManifoldMap{\VolumeRefClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeDeformMMap}{\ManifoldMap{\VolumeRefClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeDeformGMap}{\ManifoldMap{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeEnvDeformGMapDef}{\ManifoldMapDef{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformGMapDef}{\ManifoldMapDef{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\DispTrialSpaceOverVolumeEnvRefS}{\SpaceHilbert{U}(\VolumeEnvRefS)} \newcommand{\DispTrialSpaceOverVolumeEnvRefM}{\SpaceHilbert{U}(\VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefSAndM}{\SpaceHilbert{U}(\VolumeEnvRefS, \VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefG}{\SpaceHilbert{U}(\VolumeEnvRefG)} \newcommand{\DispTrialSpaceOverVolumeRefS}{\SpaceHilbert{U}(\VolumeRefClosureS)} \newcommand{\DispTrialSpaceOverVolumeRefM}{\SpaceHilbert{U}(\VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefSAndM}{\SpaceHilbert{U}(\VolumeRefClosureS, \VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefG}{\SpaceHilbert{U}(\VolumeRefClosureG)} \newcommand{\DispTestSpaceOverVolumeEnvRefG}{\delta \DispTrialSpaceOverVolumeEnvRefG} \newcommand{\DispTestSpaceOverVolumeRefG}{\delta \DispTrialSpaceOverVolumeRefG} \newcommand{\DispFieldRefSComp}{\DispFieldRefComp^s} \newcommand{\DispFieldRefSTen}{\DispFieldRefTen^s} \newcommand{\DispFieldRefMComp}{\DispFieldRefComp^m} \newcommand{\DispFieldRefMTen}{\DispFieldRefTen^m} \newcommand{\DispFieldRefGTen}{\DispFieldRefTen^\alpha} \newcommand{\DispFieldDiscreteRefGTen}{\DispFieldRefTen^{h,\alpha}} \newcommand{\DispFieldOverVolumeEnvRefGTenDef}{\ManifoldMapDef{\VolumeEnvRefG}{\DispFieldRefGTen}} \newcommand{\DispFieldOverVolumeRefGTenDef}{\ManifoldMapDef{\VolumeRefClosureG}{\DispFieldRefGTen}} \newcommand{\GradVolumeRefG}[1]{\Grad{\RefCoordVec{\VolumeRefClosureG}}{#1}} \newcommand{\GradVolumeEnvRefS}[1]{\Grad{\VolumeEnvRefSCoordVec}{#1}} \newcommand{\GradVolumeEnvRefM}[1]{\Grad{\VolumeEnvRefMCoordVec}{#1}} \newcommand{\GradVolumeEnvRefG}[1]{\Grad{\VolumeEnvRefGCoordVec}{#1}} \newcommand{\DeformGradSComp}{\DeformGradComp^s} \newcommand{\DeformGradSTen}{\DeformGradTen^s} \newcommand{\DeformGradSDet}{\Det{\DeformGradSTen}} \newcommand{\DeformGradSInvTrans}{\InvTrans{\DeformGradSTen}} \newcommand{\DeformGradMComp}{\DeformGradComp^m} \newcommand{\DeformGradMTen}{\DeformGradTen^m} \newcommand{\DeformGradMDet}{\Det{\DeformGradMTen}} \newcommand{\DeformGradMInvTrans}{\InvTrans{\DeformGradMTen}} \newcommand{\DeformGradGTen}{\DeformGradTen^\alpha} \newcommand{\DeformGradOverVolumeEnvRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\DeformGradOverVolumeRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\UnitNormalRefSTen}{\UnitNormalRefTen^s} \newcommand{\UnitNormalRefMTen}{\UnitNormalRefTen^m} \newcommand{\UnitNormalCurrSComp}{\UnitNormalCurrComp^s} \newcommand{\UnitNormalCurrSTen}{\UnitNormalCurrTen^s} \newcommand{\UnitNormalCurrMComp}{\UnitNormalCurrComp^m} \newcommand{\UnitNormalCurrMTen}{\UnitNormalCurrTen^m} \newcommand{\AreaRatioS}{r^s} \newcommand{\AreaRatioM}{r^m} \newcommand{\ContraMTen}{\Mat{a}^m} \newcommand{\SymmProdInProjTan}{C} \newcommand{\ProdPBTanInvCurPBTanInv}{D} \newcommand{\ProdPBTanInvCurMetricInv}{M} \newcommand{\ProdPBTanInvCurMetricInvCurPBTanInv}{W} \newcommand{\PenaltyContactGap}{\SymbolPenalty_{\SymbolContactGap}} \newcommand{\BodyForceRefGTen}{\BodyForceRefTen^\alpha} \newcommand{\TracForceRefGTen}{\TracForceRefTen^\alpha} \newcommand{\BodyForceOverVolumeRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeRefG}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeEnvRefG}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceRefTracGTenDef}{\FuncDef{\TracForceRefGTen}{\SurfaceRefTracG}{\SpatialDomain}} \newcommand{\PressureContact}{\SymbolPressureContact} \newcommand{\PressureContactProjected}{\overline{\SymbolPressureContact}_{\UsplineBasisFuncId}} \newcommand{\CoeffPressureContact}{\SymbolPressureContact_{\UsplineBasisFuncId}} \newcommand{\PressureContactInterpolated}{\hat{\SymbolPressureContact}} \newcommand{\ConstraintRefGTen}{\ConstraintRefTen^\alpha} \newcommand{\GapContact}{\SymbolContactGap} \newcommand{\GapContactProjected}{\overline{\SymbolContactGap}_{\UsplineBasisFuncId}} \newcommand{\GapContactProjectedVariation}{\delta \GapContactProjected} \newcommand{\GapContactMortar}{\GapContact^{m}} \newcommand{\GapContactMortarProjected}{\overline{\GapContact}^{m}_{\UsplineBasisFuncId}} \newcommand{\CoeffGapContactMortar}{\GapContact^{m}_{\UsplineBasisFuncId}} \newcommand{\ConstraintOverSurfaceRefDispGTenDef}{\FuncDef{\ConstraintRefGTen}{\SurfaceRefDispG}{\SpatialDomain}} \newcommand{\EnergyEnvG}{\EnergyEnv^\alpha} \newcommand{\EnergyG}{\Energy^{\alpha}} \newcommand{\EnergyDensityStrainG}{\EnergyDensityStrain^\alpha} \newcommand{\EnergyConstraintG}{\Energy^{\SymbolDisp,\alpha}} \newcommand{\EnergyContact}{\Energy^c} \newcommand{\EnergyOverVolumeRefGDef}{\FuncDef{\EnergyG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyEnvOverVolumeEnvRefGDef}{\FuncDef{\EnergyEnvG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeEnvRefG}{\Reals}} \newcommand{\EnergyContactOverVolumeRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeRefSAndM}{\Reals}} \newcommand{\EnergyContactOverVolumeEnvRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeEnvRefSAndM}{\Reals}} \newcommand{\EnergyConstraintOverVolumeRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\ResidualMat}{\Mat{N}} \newcommand{\ForceInternalContactVec}{\ForceVec^{c,int,n}} \newcommand{\ForceGapContact}{C^n} \newcommand{\StiffnessMatA}{\hat{\Mat{N}}} \newcommand{\StiffnessMatB}{\Mat{T}} \newcommand{\StiffnessMatC}{\Mat{D}} \newcommand{\StiffnessGeometricContact}{\StiffnessMat^{c,g,n}} \newcommand{\StiffnessContact}{\StiffnessMat^{c,n}} \newcommand{\ElemCount}[1]{\operatorname{count}{(#1)}} \newcommand{\ConvexHull}[1]{\operatorname{ch}{\left(#1\right)}} \newcommand{\Normal}[1]{\operatorname{N}{\left(#1\right)}} \newcommand{\NormalConvexHull}[1]{\Normal{\ConvexHull{#1}}} \newcommand{\DiscretePointSetS}{\Set{SP}} \newcommand{\DiscreteElemSetM}{\Set{ME}} \newcommand{\EnvBoundConMapM}{\operatorname{mc}} \newcommand{\EnvBoundConSetM}{\Set{MC}} \newcommand{\SpatialCoordVecToSegmentSetMapMSensor}{\operatorname{cs}} \newcommand{\SpatialCoordVecToSegmentSetMapMElem}{\operatorname{ce}} \newcommand{\SelfContactMap}{\operatorname{sc}} \newcommand{\ColSetS}{\Set{I}} \newcommand{\PairEnvMapBoundM}{\operatorname{cp}} \newcommand{\ApproximateProjectionCollision}[1]{\widetilde{\Projection}{#1}} \newcommand{\ImageSlaveEnv}{\bar{\ParamCoordVecSimple}^{\ParamDomainEnvM}} \newcommand{\ImageSlaveBound}{\bar{\ParamCoordVecSimple}^{\ParamDomainBdryContactM}} \newcommand{\ActiveSet}{\Set{A}} \newcommand{\DiscretePointSetM}{\Set{MP}} \newcommand{\MortarActiveSet}{\Set{A}^m} \newcommand{\PressureContactAnalytical}{p_a} \newcommand{\TipPressureContactAnalytical}{p_0} \newcommand{\ContactHalfWidth}{b}$$\newcommand{\MidGeometryModifier}[1]{\bar{#1}} \newcommand{\SymbolRotationGlobal}{\omega} \newcommand{\SkewMat}[1]{\Mat{s} \left( #1 \right)} \newcommand{\SkewMatInv}[1]{\Mat{s}^{-1} \left( #1 \right)} \newcommand{\Ident}{\Mat{I}} \newcommand{\Cartesian}{\Vec{e}} \newcommand{\ManifoldDim}{n} \newcommand{\LaminaSymbol}{l} \newcommand{\LaminaSymbolUpper}{L} \newcommand{\LaminaMetricSymbol}{j} \newcommand{\ShellMomentSymbol}{q} \newcommand{\DirectorBilinearFunc}[3]{\left(#2,#3\right)_{#1}} \newcommand{\RotObjectiveFunc}{s} \newcommand{\ParamConfig}{\Omega_\xi} \newcommand{\ParamConfigMid}{\Omega_\xi^m} \newcommand{\ParamConfigSec}{\Omega_\xi^s} \newcommand{\ParamConfigBound}{\Gamma_\xi} \newcommand{\ParamConfigMidBound}{\Gamma_\xi^m} \newcommand{\ParamConfigSecBound}{\Gamma_\xi^s} \newcommand{\ParamConfigMuBound}{\Gamma_\xi^\mu} \newcommand{\ParamConfigSigBound}{\Gamma_\xi^\sigma} \newcommand{\ParamConfigDirichMidBound}{\Gamma_\xi^g} \newcommand{\ParamConfigNeuMidBound}{\Gamma_\xi^h} \newcommand{\ParamConfigDirichBound}{\Gamma_\xi^\gamma} \newcommand{\ParamConfigNeuBound}{\Gamma_\xi^\eta} \newcommand{\ParaParam}[1]{\xi_{#1}} \newcommand{\ParaParamVec}{\boldsymbol{\xi}} \newcommand{\RefConfig}{\Omega_0} \newcommand{\RefConfigMid}{\Omega_0^m} \newcommand{\RefConfigSec}{\Omega_0^s} \newcommand{\SurfaceRefRot}{\SurfaceRef^{\SymbolRotationGlobal}} \newcommand{\RefConfigBound}{\Gamma_0} \newcommand{\RefConfigMidBound}{\Gamma_0^m} \newcommand{\RefConfigSecBound}{\Gamma_0^s} \newcommand{\RefConfigMuBound}{\Gamma_0^\mu} \newcommand{\RefConfigSigBound}{\Gamma_0^\sigma} \newcommand{\RefConfigDirichMidBound}{\Gamma_0^g} \newcommand{\RefConfigNeuMidBound}{\Gamma_0^h} \newcommand{\RefConfigDirichBound}{\Gamma_0^\gamma} \newcommand{\RefConfigNeuBound}{\Gamma_0^\eta} \newcommand{\RefMap}{\Vec{X}} \newcommand{\RefMid}{\MidGeometryModifier{\Vec{X}}} \newcommand{\RefDir}{\Vec{D}} \newcommand{\RefSectionPos}{\Vec{R}} \newcommand{\RefCovar}[1]{\Vec{G}_{#1}} \newcommand{\RefMidCovar}[1]{\MidGeometryModifier{\Vec{G}}_{#1}} \newcommand{\RefContra}[1]{\Vec{G}^{#1}} \newcommand{\RefMidContra}[1]{\MidGeometryModifier{\Vec{G}}^{#1}} \newcommand{\RefLamina}[1]{\Vec{L}_{#1}} \newcommand{\RefLaminaDual}[1]{\Vec{\LaminaSymbolUpper}^{#1}} \newcommand{\RefShellProjectedBasis}[1]{\Vec{P}_{#1}} \newcommand{\CurConfig}{\Omega} \newcommand{\CurConfigMid}{\Omega^m} \newcommand{\CurConfigSec}{\Omega^s} \newcommand{\CurConfigBound}{\Gamma} \newcommand{\CurConfigMidBound}{\Gamma^m} \newcommand{\CurConfigSecBound}{\Gamma^s} \newcommand{\CurConfigMuBound}{\Gamma^\mu} \newcommand{\CurConfigSigBound}{\Gamma^\sigma} \newcommand{\CurConfigDirichMidBound}{\Gamma^g} \newcommand{\CurConfigNeuMidBound}{\Gamma^h} \newcommand{\CurConfigDirichBound}{\Gamma^\gamma} \newcommand{\CurConfigNeuBound}{\Gamma^\eta} \newcommand{\CurMap}{\Vec{x}} \newcommand{\CurMid}{\MidGeometryModifier{\Vec{x}}} \newcommand{\CurDir}{\Vec{d}} \newcommand{\CurSectionPos}{\Vec{r}} \newcommand{\CurCovar}[1]{\Vec{g}_{#1}} \newcommand{\CurMidCovar}[1]{\MidGeometryModifier{\Vec{g}}_{#1}} \newcommand{\CurContra}[1]{\Vec{g}^{#1}} \newcommand{\CurMidContra}[1]{\MidGeometryModifier{\Vec{g}}^{#1}} \newcommand{\CurLamina}[1]{\Vec{\LaminaSymbol}_{#1}} \newcommand{\CurLaminaDual}[1]{\Vec{\LaminaSymbol}^{#1}} \newcommand{\CurModLamina}[1]{\hat{\Vec{\LaminaSymbol}}_{#1}} \newcommand{\CurModLaminaDual}[1]{\hat{\Vec{\LaminaSymbol}}^{#1}} \newcommand{\CurShellProjectedBasis}[1]{\Vec{p}_{#1}} \newcommand{\DeformMap}{\varphi} \newcommand{\DeformMapMid}{\varphi^m} \newcommand{\Disp}{\Vec{u}} \newcommand{\DispMid}{\MidGeometryModifier{\Vec{u}}} \newcommand{\RotVec}{\boldsymbol{\omega}} \newcommand{\RotMat}{\boldsymbol{\Lambda}} \newcommand{\RotMatMembrane}{\Mat{\Psi}} \newcommand{\RotMatDelta}{\boldsymbol{\Lambda}_\Delta} \newcommand{\IncRotMat}{\Delta\RotMat} \newcommand{\EulerVec}{\boldsymbol{\vartheta}} \newcommand{\EulerVecNorm}{\theta} \newcommand{\EulerVecSinc}{\boldsymbol{\Theta}} \newcommand{\EulerRotVec}{\boldsymbol{\theta}} \newcommand{\EulerRotAngle}{\theta} \newcommand{\IncEulerRotVec}{\Delta\boldsymbol{\theta}} \newcommand{\AngularVelocity}{\boldsymbol{\eta}} \newcommand{\IncEulerRotVecVel}{\Delta\dot{\boldsymbol{\theta}}} \newcommand{\AngularAcceleration}{\boldsymbol{\alpha}} \newcommand{\IncEulerRotVecAcc}{\Delta\ddot{\boldsymbol{\theta}}} \newcommand{\DeformGrad}{\Mat{F}} \newcommand{\Strain}[1]{\boldsymbol{\tau}_{#1}} \newcommand{\StrainMid}[1]{\boldsymbol{\varepsilon}_{#1}} \newcommand{\StrainCurve}[1]{\boldsymbol{\kappa}_{#1}} \newcommand{\DecompDeform}{\Mat{U}} \newcommand{\ExtraDeformTen}{\Delta\DeformGradTen} \newcommand{\ExtraDeformComp}{\Delta\DeformGradComp} \newcommand{\GreenLagrange}{\Mat{E}} \newcommand{\ShellStrainCurve}[1]{\boldsymbol{\chi}_{#1}} \newcommand{\SecPK}{\Mat{S}} \newcommand{\FirstPK}{\Mat{P}} \newcommand{\Cauchy}{\boldsymbol{\sigma}} \newcommand{\IntTrac}[1]{\Vec{t}_{#1}} \newcommand{\RefModuli}{\Mat{C}} \newcommand{\CurModuli}{\Mat{c}} \newcommand{\PointModuli}{\Mat{m}} \newcommand{\ResModuli}{\Mat{M}} \newcommand{\RefAreaVec}[1]{\Vec{A}_{#1}} \newcommand{\RefAreaMidVec}[1]{\MidGeometryModifier{\Vec{A}}_{#1}} \newcommand{\RefMeas}{G} \newcommand{\UnitNormalRefVec}[1]{\Vec{N}_{#1}} \newcommand{\CurAreaVec}[1]{\Vec{a}_{#1}} \newcommand{\CurAreaMidVec}[1]{\MidGeometryModifier{\Vec{a}}_{#1}} \newcommand{\CurMeas}{g} \newcommand{\UnitNormalCurrVec}[1]{\Vec{n}_{#1}} \newcommand{\CurLaminaMetricTen}{\Mat{\LaminaMetricSymbol}} \newcommand{\CurLaminaMetricComp}{\LaminaMetricSymbol} \newcommand{\CurToModLaminaTransComp}{M} \newcommand{\IntForce}{\Vec{f}^{\, int}} \newcommand{\IntMoment}{\Vec{m}^{int}} \newcommand{\ExtForceBody}{\Vec{f}^{\, ext}_b} \newcommand{\ExtMomentBody}{\Vec{m}^{ext}_b} \newcommand{\ShellExtMomentBody}{\Vec{\ShellMomentSymbol}^{ext}_b} \newcommand{\ExtForceTrac}{\Vec{f}^{\, ext}_h} \newcommand{\ExtMomentTrac}{\Vec{m}^{ext}_h} \newcommand{\ShellExtMomentTrac}{\Vec{\ShellMomentSymbol}^{ext}_h} \newcommand{\MassForce}{\Vec{f}^{\,\rho}} \newcommand{\MassMoment}{\Vec{m}^{\rho}} \newcommand{\ShellMassMoment}{\Vec{\ShellMomentSymbol}^{\rho}} \newcommand{\ResidualInternal}{\Vec{R}^{int}} \newcommand{\ResidualExternal}{\Vec{R}^{ext}} \newcommand{\ResidualMass}{\Mat{R}^{\rho}} \newcommand{\NodalMass}[1]{\Mat{M}_{#1}} \newcommand{\NodalLinearInertia}[1]{A_{#1}} \newcommand{\NodalAngularInertia}[1]{I_{#1}} \newcommand{\ShellDeltaAngle}{\phi} \newcommand{\BStrainMatrix}[2]{\Mat{B}_{#1#2}} \newcommand{\ShellDrillingStiffness}{k} \newcommand{\DrillConstraint}{C} \newcommand{\IntForceDrilling}{\Vec{f}^{d}} \newcommand{\ModuliDrilling}{\Mat{M}^d} \newcommand{\ResidualDrilling}{\Vec{R}^d} \newcommand{\SymbolTop}{top} \newcommand{\SymbolCentroid}{c} \newcommand{\SymbolLeverArm}{r} \newcommand{\SpatialCoordVecCentroid}{\SpatialCoordVec^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidX}{\SpatialCoordX^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidY}{\SpatialCoordY^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidZ}{\SpatialCoordZ^{\SymbolCentroid}} \newcommand{\LeverArm}{\Vec{\SymbolLeverArm}} \newcommand{\LeverArmX}{\SymbolLeverArm_{\SpatialCoordX}} \newcommand{\LeverArmY}{\SymbolLeverArm_{\SpatialCoordY}} \newcommand{\LeverArmZ}{\SymbolLeverArm_{\SpatialCoordZ}} \newcommand{\MomentFirstMass}{Q} \newcommand{\MomentSecondMass}{I} \newcommand{\MomentSecondMassDetailed}[1]{I_{#1}} \newcommand{\DistributedLoad}{q} \newcommand{\TracForceCurrCompX}{\TracForceCurrComp_{\SpatialCoordX}} \newcommand{\TracForceCurrCompY}{\TracForceCurrComp_{\SpatialCoordY}} \newcommand{\TracForceCurrCompZ}{\TracForceCurrComp_{\SpatialCoordZ}} \newcommand{\TracMomentCurrCompDetailed}[1]{\TracMomentCurrComp_{#1}} \newcommand{\TracForceCurrCompSupportReaction}{r^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompSupportReactionDetailed}[1]{\TracForceCurrCompSupportReaction_{#1}} \newcommand{\TracForceCurrCompDistributedLoad}{\DistributedLoad^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompPointLoad}{p^{\TracForceCurrComp}} \newcommand{\TracMomentCurrVec}{\Vec{\TracMomentCurrComp}} \newcommand{\TracMomentCurrComp}{m} \newcommand{\BodyForceCurrCompX}{\BodyForceCurrComp_{\SpatialCoordX}} \newcommand{\BodyForceCurrCompY}{\BodyForceCurrComp_{\SpatialCoordY}} \newcommand{\BodyForceCurrCompZ}{\BodyForceCurrComp_{\SpatialCoordZ}} \newcommand{\BodyForceCurrCompDistributedLoad}{\DistributedLoad^{\BodyForceCurrComp}} \newcommand{\BodyForceCurrCompAxialLoad}{f^{\BodyForceCurrComp}} \newcommand{\StressCauchyTractionVec}{\Vec{t}} \newcommand{\StressCauchyTractionX}{t_{\SpatialCoordX}} \newcommand{\StressCauchyTractionY}{t_{\SpatialCoordY}} \newcommand{\StressCauchyTractionZ}{t_{\SpatialCoordZ}} \newcommand{\StressCauchyNormal}{\sigma} \newcommand{\StressCauchyNormalDetailed}[1]{\StressCauchyNormal_{#1}} \newcommand{\StressCauchyNormalXX}{\StressCauchyComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StressCauchyNormalYY}{\StressCauchyComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StressCauchyNormalZZ}{\StressCauchyComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StressCauchyShear}{\tau} \newcommand{\StressCauchyShearDetailed}[1]{\StressCauchyShear_{#1}} \newcommand{\StressCauchyShearXY}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StressCauchyShearYX}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordX}} \newcommand{\StressCauchyShearXZ}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StressCauchyShearZX}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordX}} \newcommand{\StressCauchyShearYZ}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\StressCauchyShearZY}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordY}} \newcommand{\StressCauchyResultantForce}{F} \newcommand{\StressCauchyResultantForceDetailed}[1]{F_{#1}} \newcommand{\StressCauchyResultantForceVec}{\Vec{\StressCauchyResultantForce}} \newcommand{\StressCauchyResultantMoment}{M} \newcommand{\StressCauchyResultantMomentDetailed}[1]{M_{#1}} \newcommand{\StressCauchyResultantMomentVec}{\Vec{\StressCauchyResultantMoment}} \newcommand{\StressCauchyResultantForceShear}{V} \newcommand{\StressCauchyResultantForceShearDetailed}[1]{V_{#1}} \newcommand{\StressCauchyResultantForceAxial}{\StressCauchyResultantForce} \newcommand{\DispFieldCurrCompX}{\DispFieldCurrComp_{\SpatialCoordX}} \newcommand{\DispFieldCurrCompY}{\DispFieldCurrComp_{\SpatialCoordY}} \newcommand{\DispFieldCurrCompZ}{\DispFieldCurrComp_{\SpatialCoordZ}} \newcommand{\DispFieldMidCurrCompX}{\overline{\DispFieldCurrComp}_{\SpatialCoordX}} \newcommand{\DispFieldMidCurrCompY}{\overline{\DispFieldCurrComp}_{\SpatialCoordY}} \newcommand{\StrainSymGradCompXX}{\StrainSymGradComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StrainSymGradCompYY}{\StrainSymGradComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StrainSymGradCompZZ}{\StrainSymGradComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StrainShearComp}{\gamma} \newcommand{\StrainShearCompXY}{\StrainShearComp_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StrainShearCompXZ}{\StrainShearComp_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StrainShearCompYZ}{\StrainShearComp_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\EquationBeamShearStress}{\frac{\StressCauchyResultantForceShear \MomentFirstMass}{\MomentSecondMassDetailed{\SpatialCoordZ}\Width}} \newcommand{\EquationVecInCoords}{\Vec{v} = v_{\SpatialCoordX} \BasisVecI + v_{\SpatialCoordY} \BasisVecJ + v_{\SpatialCoordZ} \BasisVecK} \newcommand{\EquationMatVecMultiply}{\Mat{M}\Vec{v} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Vec{v}} \\ \DotProduct{\Vec{m}_2}{\Vec{v}} \\ \DotProduct{\Vec{m}_3}{\Vec{v}} \end{bmatrix}} \newcommand{\EquationMatMatMultiply}{\Mat{M}\Mat{N} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Mat{n}_1} & \DotProduct{\Vec{m}_1}{\Mat{n}_2} & \DotProduct{\Vec{m}_1}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_2}{\Mat{n}_1} & \DotProduct{\Vec{m}_2}{\Mat{n}_2} & \DotProduct{\Vec{m}_2}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_3}{\Mat{n}_1} & \DotProduct{\Vec{m}_3}{\Mat{n}_2} & \DotProduct{\Vec{m}_3}{\Mat{n}_3} \end{bmatrix}} \newcommand{\Force}{F} \newcommand{\ShearFlow}{f}$$\newcommand{\BaseSymbol}{b} \newcommand{\EmbeddedSymbol}{e} \newcommand{\RefinedSymbol}{r} \newcommand{\HierarchicalSymbol}{\textsf{H}} \newcommand{\BlockSymbol}{\textsf{B}} \newcommand{\BaseModifier}[1]{{#1}_{\BaseSymbol}} \newcommand{\EmbeddedModifier}[1]{{#1}_{\EmbeddedSymbol}} \newcommand{\RefinedModifier}[1]{{#1}_{\RefinedSymbol}} \newcommand{\HierarchicalModifier}[1]{{#1}_{\HierarchicalSymbol}} \newcommand{\BlockModifier}[1]{{#1}_{\BlockSymbol}} \newcommand{\RefinementLevelI}{i} \newcommand{\RefinementLevelJ}{j} \newcommand{\RefinementLevelK}{k} \newcommand{\HighestRefinementLevel}{N} \newcommand{\BaseParentDomain}{\BaseModifier{\ParentDomain}} \newcommand{\RefinedDomain}[1]{\ParamDomain_{#1}} \newcommand{\BaseMesh}{\BaseModifier{\MeshTopo}} \newcommand{\BaseBezierMesh}{\BaseModifier{\MeshBezier}} \newcommand{\EmbeddedMesh}{\EmbeddedModifier{\MeshTopo}} \newcommand{\RefinedMesh}{\RefinedModifier{\MeshTopo}} \newcommand{\RefinedBezierMesh}{\RefinedModifier{\MeshBezier}} \newcommand{\HierarchicalBezierMesh}{\HierarchicalModifier{\MeshBezier}} \newcommand{\HierarchicalUsplineMesh}{\HierarchicalModifier{\MeshUspline}} \newcommand{\RefinementLevelMesh}[1]{\MeshBezier_{#1}} \newcommand{\LeafElemSet}[1]{\Set{L}_{#1}} \newcommand{\ActiveElemSet}[1]{\Set{A}_{#1}} \newcommand{\ActiveBasisFuncs}[1]{\Set{UFA}_{#1}} \newcommand{\UnderRefinedBasisFuncs}[1]{\Set{UFU}_{#1}} \newcommand{\HierarchicalBasisFuncs}{\Set{UFH}} \newcommand{\TruncatedBasisFuncs}{\Set{UFT}} \newcommand{\FuncsTruncatedToLevel}[1]{\Set{TK}_{#1}} \newcommand{\FuncsTouchingActiveFuncs}[1]{\Set{T}_{#1}} \newcommand{\FuncsSubsetOfCoarserFuncs}[1]{\Set{S}_{#1}} \newcommand{\RefinementLevelBasis}[1]{\UsplineBasisFuncSetFunctionOf{\RefinementLevelMesh{#1}}} \newcommand{\RefinementLevelSpace}[1]{\QuantityRelatedTo{\UsplineSpace}{\RefinementLevelMesh{#1}}} \newcommand{\BaseAssociated}{\operatorname{\textsf{base}}} \newcommand{\BaseAssociatedFunctionOf}[1]{\QFO{\BaseAssociated}{#1}} \newcommand{\TruncationOp}[2]{\QFO{\operatorname{\textsf{trunc}}_{#1}}{#2}} \newcommand{\EmbeddedToBaseChart}{\EmbeddedModifier{\ParentDomainChart}} \newcommand{\InvEmbeddedToBaseChart}{(\EmbeddedToBaseChart)^{-1}} \newcommand{\RefinementCoefficients}{c^A_B} \newcommand{\RefinementMat}{\Mat{D}} \newcommand{\NthLevelProlongationMat}[1]{\QSB{\ProlongationMat}{#1}} \newcommand{\NthLevelActiveMat}[1]{\QSB{\Mat{A}}{#1}} \newcommand{\NthLevelRefinementMat}[1]{\QSB{\RefinementMat}{#1}} \newcommand{\NthLevelTruncationMat}[1]{\QSB{\Mat{T}}{#1}} \newcommand{\NthLevelBasisMat}[1]{\QSB{\Mat{S}}{#1}} \newcommand{\NthLevelMassMat}[1]{\QSB{\MassMat}{#1}} \newcommand{\FuncIndex}{\operatorname*{\mathsf{ID}}} \newcommand{\MultiLevelRefinementMat}[2]{\QSB{\RefinementMat}{#1 #2}} \newcommand{\BlockRefinementMat}{\BlockModifier{\RefinementMat}} \newcommand{\BlockMassMat}{\BlockModifier{\MassMat}}$

Element deletion for owned geometry is no longer available unless the developer flag is turned on. Element deletion is still available without the developer flag for free meshes. The command to enable or disable features under development is:

Set Developer Commands {On|OFF}

The following forms of the delete commands operate on meshed entities only. They allow low-level editing of meshes to make minor corrections to a mostly correct mesh. They are not designed for major modifications to existing meshes. Because Cubit’ display routines were not designed with these type of operations in mind, these commands may cause the current display of the affected entities to take an unexpected form. An appropriate drawing command can used to return the display to the desired view.

When deleting elements, the default behavior will be that the child mesh entities will be deleted when they become orphaned. For example, when a hex is deleted, if its faces, edges and vertices are no longer used by adjacent hex elements, then they will also be deleted. The no_propagate option will leave any child mesh entities regardless if they become orphaned.

The delete command removes one or more mesh entities from an existing mesh. Additional mesh entities may be deleted as well depending on the particular form of the command. Exactly which entities are removed is explained in the following descriptions.

To delete a hex or tet:

1. In the Command Line, type set developer commands on (Set Dev On).

2. On the Command Panel, click on Mesh.

3. Click on Hex or Tet.

4. Click on the Delete action button.

5. Enter the appropriate values for Hex ID(s) or Tet ID(s). This can also be done using the Pick Widget function.

6. Click Apply..

Delete {Hex|Tet} <range> [No_Propagate]

Deletes the specified hexes or tets. All associated tris, faces, edges, and nodes are also deleted unless the no_propagate option is given.

Delete Wedge <range>

Deletes the specified wedges. No other mesh entities are affected.

To delete a quad or tri:

1. In the Command Line, type set developer commands on (Set Dev On).

2. On the Command Panel, click on Mesh.

3. Click on Quad or Tri.

4. Click on the Delete action button.

5. Enter the appropriate values for Quad ID(s) or Tri ID(s). This can also be done using the Pick Widget function.

6. Click Apply..

Delete {Face|Tri} <range> [No_Propagate]

Deletes the specified faces or tris. For faces, all hexes that contain the face are also deleted. For tris, all tets that contain the tri are also deleted. All associated edges and nodes are also deleted unless the no_propagate option is given.

To delete an edge:

1. In the Command Line, type set developer commands on (Set Dev On).

2. On the Command Panel, click on Mesh and then Edge.

3. Click on the Delete action button.

4. Enter the appropriate values for Edge ID(s). This can also be done using the Pick Widget function.

5. Click Apply..

Delete Edge <range> [No_Propagate]

Deletes the specified edges. Any associated tris, faces, hexes, and tets are also deleted. Any associated nodes are also deleted unless the no_propagate option is given.

To delete a node:

1. In the Command Line, type set developer commands on (Set Dev On).

2. On the Command Panel, click on Mesh and then Node.

3. Click on the Delete action button.

4. Enter the appropriate values for Node ID(s). This can also be done using the Pick Widget function.

5. Click Apply..

Delete Node <range>

Deletes the specified nodes. Any associated edges, tris, faces, hexes, and tets are also deleted.

15.1.5FeatureSize

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcommand{\CurveCAD}{\CurveRelatedTo{\SymbolCAD}} \newcommand{\CurveCADModified}{\CurveRelatedTo{\SymbolCADModified}} \newcommand{\CurveMesh}{\CurveRelatedTo{\Partition}} \newcommand{\CurveUspline}{\CurveRelatedTo{\MeshUspline}} \newcommand{\dCurve}{\Differential[\Curve]} \newcommand{\PointCAD}{\PointRelatedTo{\SymbolCAD}} \newcommand{\PointCADModified}{\PointRelatedTo{\SymbolCADModified}} \newcommand{\PointUspline}{\PointRelatedTo{\MeshUspline}} \newcommand{\Segment}[1]{\QuantityChildOf{#1}{\SymbolSegment}} \newcommand{\SegmentOfVolumeEnv}{\Segment{\VolumeEnv}} \newcommand{\SegmentOfSurface}{\Segment{\Surface}} \newcommand{\Hex}{\Segment{}_{h}} \newcommand{\Tet}{\Segment{}_{t}} \newcommand{\SegmentParamDomain}[1]{\QuantityRelatedTo{\ParamDomain}{#1}} \newcommand{\SegmentParamDomainOfVolumeEnv}{\QuantityRelatedTo{\ParamDomain}{\Segment{\VolumeEnv}}} \newcommand{\SegmentParamDomainOfSurface}{\QuantityRelatedTo{\ParamDomain}{\Segment{\Surface}}} \newcommand{\SegmentSet}{\SymbolSegmentSet} \newcommand{\SegmentSetFunctionOf}[1]{\QuantityFunctionOf{\SegmentSet}{#1}} \newcommand{\SegmentSetOutside}{\SegmentSet^{\SymbolOutside}} \newcommand{\SegmentSetInside}{\SegmentSet^{\SymbolInside}} \newcommand{\SegmentSetHybrid}{\SegmentSet^{\SymbolHybrid}} \newcommand{\PartitionFunctionOf}[1]{\QuantityFunctionOf{\Partition}{#1}} \newcommand{\PartitionBezierExtraction}[1]{\QuantityFunctionOf{\SymbolPartition^{B}}{#1}} \newcommand{\PartitionTessellation}[1]{\QuantityFunctionOf{\SymbolPartition^{T}}{#1}} \newcommand{\PartitionTessellationOfUspline}{\PartitionTessellation{\MeshUspline}} \newcommand{\PartitionTessellationMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldCoeff}{\SymbolManifoldCoeff} \newcommand{\ManifoldCoeffUpper}{\SymbolManifoldCoeffUpper} \newcommand{\ManifoldCoeffUspline}{\QuantityRelatedTo{\SymbolManifoldCoeffUspline}{\MeshUspline}} \newcommand{\ManifoldCoeffBernstein}{\QuantityRelatedTo{\SymbolManifoldCoeffBernstein}{\MeshBezier}} \newcommand{\ManifoldCoeffVec}{\Vec{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffSet}{\Set{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVec}{\Vec{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVecCell}{\QuantityRelatedTo{\Vec{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsVecUsplineCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsVecSubmeshCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinSegmentOfVolumeEnv}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\SegmentOfVolumeEnv}} \newcommand{\ManifoldCoeffsSet}{\Set{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsSetCell}{\QuantityRelatedTo{\Set{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsSetUsplineCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsSetBernsteinCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsSetSubmeshCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldTemporalMap}[2]{\QuantityRelatedTo{#2}{#1,\SymbolTime}} \newcommand{\ManifoldPartitionMap}{\ManifoldMap{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldCADMap}{\ManifoldMap{\ParamDomainOnCAD}{\Manifold}} \newcommand{\ManifoldCADMapModified}{\ManifoldMap{\ParamDomainOnCADModified}{\Manifold}} \newcommand{\ManifoldBezierMap}{\ManifoldMap{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMap}{\ManifoldMap{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMap}{\ManifoldMap{\ParamDomain}{\Volume}} \newcommand{\SurfaceMap}{\ManifoldMap{\ParamDomainBdry}{\Surface}} \newcommand{\ManifoldMapDef}[2]{\FuncDef{\ManifoldMap{#1}{#2}}{#1}{#2}} \newcommand{\ManifoldMapInverseDef}[2]{\FuncDef{\Inverse{\ManifoldMap{#1}{#2}}}{#2}{#1}} \newcommand{\ManifoldTemporalMapDef}[2]{\FuncDef{\ManifoldTemporalMap{#1}{#2}}{#1\otimes\Reals_{+}}{#2}} \newcommand{\ManifoldPartitionMapDef}{\ManifoldMapDef{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldBezierMapDef}{\ManifoldMapDef{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMapDef}{\ManifoldMapDef{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMapDef}{\ManifoldMapDef{\ParamDomain}{\Volume}} \newcommand{\SurfaceMapDef}{\ManifoldMapDef{\ParamDomainBdry}{\Surface}} \newcommand{\SurfaceToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\Surface}} \newcommand{\ManifoldCoordDetailed}[2]{\QCO{#1}{#2}} \newcommand{\ManifoldCoordVecDetailed}[2]{\QCO{#1}{\Vec{#2}}} \newcommand{\ManifoldCoord}{x} \newcommand{\ManifoldCoordVec}{\Vec{x}} \newcommand{\ManifoldPartitionMapCoord}{\ManifoldCoordDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldPartitionMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoord}{\ManifoldCoordDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\CovariantBasisSurfVec}{\Vec{\SymbolCovariantBasisSurf}} \newcommand{\CovariantBasisVolVec}{\Vec{\SymbolCovariantBasisVol}} \newcommand{\MetricComp}{\SymbolMetric} \newcommand{\MetricTen}{\Mat{\MetricComp}} \newcommand{\CurvatureComp}{\SymbolCurvature} \newcommand{\CurvatureTen}{\Mat{\CurvatureComp}} \newcommand{\CurvCoordIdOne}{\SymbolCurvCoordIdOne} \newcommand{\CurvCoordIdTwo}{\SymbolCurvCoordIdTwo} \newcommand{\CurvCoordIdThree}{\SymbolCurvCoordIdThree} \newcommand{\OrthogonalCoordTransform}{\Mat{\SymbolOrthogonalTransform}} \newcommand{\InversionPointTen}{\Vec{p}} \newcommand{\InversionPointComp}{p} \newcommand{\BoundingVolume}[1]{\QuantityFunctionOf{\Set{bv}}{#1}} \newcommand{\BoundingVolumeSet}[1]{\QuantityFunctionOf{\Set{BV}}{#1}} \newcommand{\BoundingVolumeTree}[1]{\QuantityFunctionOf{\Set{BVH}}{#1}} \newcommand{\AxisAlignedBoundingBox}[1]{\QuantityFunctionOf{\Set{AABB}}{#1}} \newcommand{\AABBCornerLower}{\Vec{c}^l} \newcommand{\AABBCornerLowerComp}{c^l} \newcommand{\AABBCornerUpper}{\Vec{c}^u} \newcommand{\AABBCornerUpperComp}{c^u} \newcommand{\LowerBound}[2]{B^l\left(#1,#2\right)} \newcommand{\UpperBound}[2]{B^u\left(#1,#2\right)} \newcommand{\UpperBoundValue}{U} \newcommand{\UpperBoundValueBV}{U^{\text{BV}}} \newcommand{\UpperBoundValuePoints}{U^{\text{point}}} \newcommand{\GapTolerance}{\varepsilon^{\text{gap}}} \newcommand{\NearestCells}[3][]{\Set{C}_{#1}\left(#2,#3\right)} \newcommand{\BVHNearestGeom}[3][]{c_{#1}\left(#2,#3\right)} \newcommand{\BVHGeomSetOfSets}{\Set{G}} \newcommand{\BVHTessPointSet}{\Set{P}} \newcommand{\BVHBVSet}{\Set{L}} \newcommand{\SimplexMap}[1]{\QuantityFunctionOf{\Mat{L}}{#1}} \newcommand{\ParamCoordVecTarget}{\ParamCoordVecSimple_0} \newcommand{\SpatialCoordVecTarget}{\SpatialCoordVec_0} \newcommand{\SpatialCoordVecToSegmentSetMap}{\SegmentSet^f} \newcommand{\SpatialCoordVecToParamCoordVecSetMap}{\Inverse{\widetilde{\ManifoldMap{\ParamDomainEnv}{\Surface}}}} \newcommand{\HessMatComp}{H} \newcommand{\HessMatTen}{\Mat{\HessMatComp}} \newcommand{\QuadraturePointEnv}[2]{\SymbolEnvModifier{\QuadraturePoint{#1}{#2}}} \newcommand{\QuadraturePoint}[2]{\SymbolQuadraturePoint_{#1}^{#2}} \newcommand{\QuadraturePointToElemIndexMap}[1]{\operatorname{qe}(#1)} \newcommand{\QuadratureWeightEnv}[2]{\SymbolEnvModifier{\QuadratureWeight{#1}{#2}}} \newcommand{\QuadratureWeight}[2]{\SymbolQuadratureWeight_{#1}^{#2}} \newcommand{\QuadratureSet}{\Set{\SymbolQuadratureSet}} \newcommand{\QuadratureSetInside}{\QuadratureSet^{\SymbolInside}} \newcommand{\QuadratureSetOutside}{\QuadratureSet^{\SymbolOutside}} \newcommand{\QuadratureSubdDepth}{k} \newcommand{\ClosestPointMap}[1]{\QuantityChildOf{#1}{\Vec{\SymbolClosestPointMap}}} \newcommand{\ClosestPointMapCAD}{\ClosestPointMap{\SymbolCAD}} \newcommand{\ClosestPointMapCADModified}{\ClosestPointMap{\SymbolCADModified}} \newcommand{\ProjectionInto}[1]{\QuantityRelatedTo{\SymbolProjection}{#1}} \newcommand{\ProjectionIntoBernsteinCell}{\ProjectionInto{\Cell}} \newcommand{\ProjectionIntoBernsteinElem}{\ProjectionInto{\Elem}} \newcommand{\ProjectionIntoMeshBezier}{\ProjectionInto{\MeshBezier}} \newcommand{\ProjectionIntoMeshUspline}{\ProjectionInto{\MeshUspline}} \newcommand{\LinearInterpolationOp}[1]{\QRT{\SymbolLinearInterpolation}{#1}} \newcommand{\Valence}{k} \newcommand{\ArbitraryVector}[1]{\QSB{v}{#1}} \newcommand{\RotationMatrix}[1]{R^{#1}} \newcommand{\RepVecSymbol}{u} \newcommand{\RepVec}[1]{\QSB{\RepVecSymbol}{#1}} \newcommand{\RepVecVec}{\Vec{\RepVecSymbol}} \newcommand{\AlignmentField}{\RepVecVec'} \newcommand{\BiharmonicEnergy}{\QSB{E}{B}} \newcommand{\PrescribedRepVec}[1]{\QSB{d}{#1}} \newcommand{\AlignmentParameter}{\lambda} \newcommand{\SingularityIndex}[1]{\QSB{\chi}{#1}} \newcommand{\AngularDefect}[1]{\QSB{K}{#1}} \newcommand{\ArbitraryAngle}{\theta} \newcommand{\ParallelTransport}[1]{\QSB{\varphi}{#1}} \newcommand{\MinusPiToPi}[1]{\lfloor #1 \rfloor} \newcommand{\AreaOperator}[1]{\QFO{\operatorname{area}}{#1}} \newcommand{\VectorAngle}[1]{\QFO{\operatorname{arg}}{#1}} \newcommand{\DistanceFunction}{\phi} \newcommand{\DistanceGradient}{X} \newcommand{\HeatField}{\eta} \newcommand{\RegionAtZeroDistance}{\gamma}$$\newcommand{\SymbolDisp}{u} \newcommand{\SymbolDispUpper}{U} \newcommand{\SymbolVelocity}{v} \newcommand{\SymbolVelocityUpper}{V} \newcommand{\SymbolAcceleration}{a} \newcommand{\SymbolAccelerationUpper}{A} \newcommand{\SymbolMass}{M} \newcommand{\SymbolLength}{L} \newcommand{\SymbolArea}{A} \newcommand{\SymbolConstraint}{g} \newcommand{\SymbolConstraintUpper}{G} \newcommand{\SymbolPenalty}{\varepsilon} \newcommand{\SymbolLagrangeMultRef}{\Lambda} \newcommand{\SymbolLagrangeMultCurr}{\lambda} \newcommand{\SymbolFict}{f} \newcommand{\SymbolTracForce}{h} \newcommand{\SymbolTracForceUpper}{H} \newcommand{\SymbolBodyForce}{b} \newcommand{\SymbolBodyForceUpper}{B} \newcommand{\SymbolVolumeRef}{\SymbolVolumeUpper} \newcommand{\SymbolSurfaceRef}{\SymbolSurfaceUpper} \newcommand{\SymbolCurveRef}{\SymbolCurveUpper} \newcommand{\SymbolPointRef}{\SymbolPointUpper} \newcommand{\SymbolVolumeCurr}{\SymbolVolume} \newcommand{\SymbolSurfaceCurr}{\SymbolSurface} \newcommand{\SymbolCurveCurr}{\SymbolCurve} \newcommand{\SymbolPointCurr}{\SymbolPoint} \newcommand{\SymbolDeformGradInc}{f} \newcommand{\SymbolDeformGrad}{F} \newcommand{\SymbolStrainGreenLagrange}{E} \newcommand{\SymbolDeformCauchyGreenLeft}{b} \newcommand{\SymbolDeformCauchyGreenRight}{C} \newcommand{\SymbolStrainDisp}{B} \newcommand{\SymbolStrainSymGrad}{\epsilon} \newcommand{\SymbolStrainPlasticEquiv}{\alpha} \newcommand{\SymbolHardeningPlastic}{k} \newcommand{\SymbolYieldFunction}{f} \newcommand{\SymbolConsistencyParameterPlastic}{\gamma} \newcommand{\SymbolPlasticModuliScaling}{\beta} \newcommand{\SymbolYieldSurfaceNormal}{n} \newcommand{\SymbolEnergy}{\Pi} \newcommand{\SymbolEnergyDensityStrain}{\Psi} \newcommand{\SymbolEnergyDensityStrainVol}{U} \newcommand{\SymbolResidual}{R} \newcommand{\SymbolForce}{F} \newcommand{\SymbolStiffness}{K} \newcommand{\SymbolSolution}{d} \newcommand{\ParamDomainBdryDisp}{\ParamDomainBdry^{\SymbolDisp}} \newcommand{\ParamDomainBdryTrac}{\ParamDomainBdry^{\SymbolTracForce}} \newcommand{\VolumeEnvRef}{\Set{\SymbolEnvModifier{\SymbolVolumeRef}}} \newcommand{\VolumeRef}{\Set{\SymbolVolumeRef}} \newcommand{\VolumeRefClosure}{\overline{\VolumeRef}} \newcommand{\VolumeRefFict}{\VolumeEnvRef\setminus\VolumeRef} \newcommand{\dVolumeRef}{\Differential[\VolumeRef]} \newcommand{\VolumeIndicatorDef}{\FuncDef{\VolumeIndicator_{\PenaltyStiffness}}{\VolumeEnvRef}{\Reals_+}} \newcommand{\SurfaceEnvRef}{\Set{\SymbolEnvModifier{\SymbolSurfaceRef}}} \newcommand{\SurfaceRef}{\Set{\SymbolSurfaceRef}} \newcommand{\SurfaceRefWildCard}{\SurfaceRef^{\SymbolWildCard}} \newcommand{\SurfaceRefDisp}{\SurfaceRef^{\SymbolDisp}} \newcommand{\SurfaceRefTrac}{\SurfaceRef^{\SymbolTracForce}} \newcommand{\SurfaceRefFict}{\SurfaceRef^{\SymbolFict}} \newcommand{\SurfaceRefDispExternal}{\SurfaceRefDisp\setminus\SurfaceRefFict} \newcommand{\SurfaceRefTracExternal}{\SurfaceRefTrac\setminus\SurfaceRefFict} \newcommand{\SurfaceRefFictTrac}{\SurfaceRefTrac\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictDisp}{\SurfaceRefDisp\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictExternal}{\SurfaceRefFict\setminus\SurfaceRef} \newcommand{\dSurfaceRef}{\Differential[\SurfaceRef]} \newcommand{\CurveRef}{\Set{\SymbolCurveRef}} \newcommand{\dCurveRef}{\Differential[\CurveRef]} \newcommand{\PointRef}{\Set{\SymbolPointRef}} \newcommand{\PointRefDisp}{\PointRef^{\SymbolDisp}} \newcommand{\PointRefTrac}{\PointRef^{\SymbolTracForce}} \newcommand{\dPointRef}{\Differential[\PointRef]} \newcommand{\dPointRefTrac}{\Differential[\PointRefTrac]} \newcommand{\RefCoord}[1]{\ManifoldCoordDetailed{#1}{X}} \newcommand{\RefCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{X}} \newcommand{\VolumeEnvRefCoord}{\RefCoord{\VolumeEnvRef}} \newcommand{\VolumeEnvRefCoordVec}{\RefCoordVec{\VolumeEnvRef}} \newcommand{\VolumeRefCoord}{\RefCoord{\VolumeRef}} \newcommand{\VolumeRefCoordVec}{\RefCoordVec{\VolumeRef}} \newcommand{\SurfaceRefCoord}{\RefCoord{\SurfaceRef}} \newcommand{\SurfaceRefCoordVec}{\RefCoordVec{\SurfaceRef}} \newcommand{\SurfaceRefDispCoord}{\RefCoord{\SurfaceRefDisp}} \newcommand{\SurfaceRefDispCoordVec}{\RefCoordVec{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracCoord}{\RefCoord{\SurfaceRefTrac}} \newcommand{\SurfaceRefTracCoordVec}{\RefCoordVec{\SurfaceRefTrac}} \newcommand{\CurveRefCoord}{\RefCoord{\CurveRef}} \newcommand{\CurveRefCoordVec}{\RefCoordVec{\CurveRef}} \newcommand{\UsplineBasisFuncOverCurveRef}[1]{\UsplineBasisFuncDetailed{\CurveRef}{#1}} \newcommand{\UsplineBasisFuncOverSurfaceRefDisp}[1]{\UsplineBasisFuncDetailed{\SurfaceRefDisp}{#1}} \newcommand{\VolumeEnvCurr}{\Set{\SymbolEnvModifier{\SymbolVolumeCurr}}} \newcommand{\VolumeCurr}{\Set{\SymbolVolumeCurr}} \newcommand{\VolumeCurrClosure}{\overline{\VolumeCurr}} \newcommand{\dVolumeCurr}{\Differential[\VolumeCurr]} \newcommand{\SurfaceEnvCurr}{\Set{\SymbolEnvModifier{\SymbolSurfaceCurr}}} \newcommand{\SurfaceCurr}{\Set{\SymbolSurfaceCurr}} \newcommand{\SurfaceCurrDisp}{\SurfaceCurr^{\SymbolDisp}} \newcommand{\SurfaceCurrTrac}{\SurfaceCurr^{\SymbolTracForce}} \newcommand{\dSurfaceCurr}{\Differential[\SurfaceCurr]} \newcommand{\CurveCurr}{\Set{\SymbolCurveCurr}} \newcommand{\dCurveCurr}{\Differential[\CurveCurr]} \newcommand{\PointCurr}{\Set{\SymbolPointCurr}} \newcommand{\PointCurrDisp}{\PointCurr^{\SymbolDisp}} \newcommand{\PointCurrTrac}{\PointCurr^{\SymbolTracForce}} \newcommand{\dPointCurr}{\Differential[\PointCurr]} \newcommand{\CurrCoord}[1]{\ManifoldCoordDetailed{#1}{x}} \newcommand{\CurrCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{x}} \newcommand{\VolumeEnvCurrCoord}{\CurrCoord{\VolumeEnvCurr}} \newcommand{\VolumeEnvCurrCoordVec}{\CurrCoordVec{\VolumeEnvCurr}} \newcommand{\VolumeCurrCoord}{\CurrCoord{\VolumeCurr}} \newcommand{\VolumeCurrCoordVec}{\CurrCoordVec{\VolumeCurr}} \newcommand{\SurfaceCurrCoord}{\CurrCoord{\SurfaceCurr}} \newcommand{\SurfaceCurrCoordVec}{\CurrCoordVec{\SurfaceCurr}} \newcommand{\SurfaceCurrDispCoord}{\CurrCoord{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrDispCoordVec}{\CurrCoordVec{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrTracCoord}{\CurrCoord{\SurfaceCurrTrac}} \newcommand{\SurfaceCurrTracCoordVec}{\CurrCoordVec{\SurfaceCurrTrac}} \newcommand{\CurveCurrCoord}{\CurrCoord{\CurveRef}} \newcommand{\CurveCurrCoordVec}{\CurrCoordVec{\CurveRef}} \newcommand{\VolumeEnvRefMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\GenericGradOverVolumeEnvRefMap}[1]{\Grad{\VolumeEnvRefMap}{#1}} \newcommand{\VolumeRefMap}{\ManifoldMap{\ParamDomain}{\VolumeRef}} \newcommand{\GenericGradOverVolumeRefMap}[1]{\Grad{\VolumeRefMap}{#1}} \newcommand{\SurfaceRefDispMap}{\ManifoldMap{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMap}{\ManifoldMap{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\CurveRefMap}{\ManifoldMap{\ParamDomain}{\CurveRef}} \newcommand{\GenericGradOverCurveRefMap}[1]{\Grad{\CurveRefMap}{#1}} \newcommand{\VolumeEnvRefMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\SurfaceRefDispMapDef}{\ManifoldMapDef{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMapDef}{\ManifoldMapDef{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\SurfaceRefToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRef}} \newcommand{\SurfaceRefDispToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefTrac}} \newcommand{\CurveRefMapDef}{\ManifoldMapDef{\ParamDomain}{\CurveRef}} \newcommand{\GenericDeformMap}{\Vec{\varphi}} \newcommand{\VolumeEnvDeformMap}{\ManifoldMap{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\GenericGradOverVolumeEnvDeformMap}[1]{\Grad{\VolumeEnvDeformMap}{#1}} \newcommand{\VolumeDeformMap}{\ManifoldMap{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMap}{\ManifoldTemporalMap{\VolumeRef}{\VolumeCurr}} \newcommand{\GradVolumeDeformTemporalMap}{\GenericGradOverVolumeRefMap{\VolumeDeformTemporalMap}} \newcommand{\SurfaceDeformDispMap}{\ManifoldMap{\SurfaceRefDisp}{\SurfaceCurrDisp}} \newcommand{\SurfaceDeformTracMap}{\ManifoldMap{\SurfaceRefTrac}{\SurfaceCurrTrac}} \newcommand{\CurveDeformMap}{\ManifoldMap{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMap}{\ManifoldTemporalMap{\CurveRef}{\CurveCurr}} \newcommand{\VolumeDeformMapDef}{\ManifoldMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMapDef}{\ManifoldTemporalMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeEnvDeformMapDef}{\ManifoldMapDef{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\CurveDeformMapDef}{\ManifoldMapDef{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMapDef}{\ManifoldTemporalMapDef{\CurveRef}{\CurveCurr}} \newcommand{\DispTrialSpaceOverVolumeEnvRef}{\SpaceHilbert{U}(\VolumeEnvRef)} \newcommand{\DispTestSpaceOverVolumeEnvRef}{\delta \DispTrialSpaceOverVolumeEnvRef} \newcommand{\DispTrialSpaceOverVolumeRef}{\SpaceHilbert{U}(\VolumeRef)} \newcommand{\DispTestSpaceOverVolumeRef}{\delta \DispTrialSpaceOverVolumeRef} \newcommand{\DispTrialSpaceOverCurveRef}{\SpaceHilbert{U}(\CurveRef)} \newcommand{\DispTestSpaceOverCurveRef}{\delta \DispTrialSpaceOverCurveRef} \newcommand{\DispFieldRefComp}{\SymbolDispUpper} \newcommand{\DispFieldRefTen}{\Vec{\DispFieldRefComp}} \newcommand{\DispFieldCurrComp}{\SymbolDisp} \newcommand{\DispFieldCurrTen}{\Vec{\DispFieldCurrComp}} \newcommand{\VelFieldCurrTen}{\Vec{\SymbolVelocity}} \newcommand{\AccFieldCurrTen}{\Vec{\SymbolAcceleration}} \newcommand{\DeformGradComp}{\SymbolDeformGrad} \newcommand{\DeformGradTen}{\Mat{\DeformGradComp}} \newcommand{\DeformGradDet}{\Det{\DeformGradTen}} \newcommand{\KinematicElast}{e} \newcommand{\KinematicPlast}{p} \newcommand{\DivVolumeEnvRef}[1]{\Div{\VolumeEnvRefCoordVec}{#1}} \newcommand{\DivVolumeEnvCurr}[1]{\Div{\VolumeEnvCurrCoordVec}{#1}} \newcommand{\DeformGradIncComp}{\SymbolDeformGradInc} \newcommand{\DeformGradIncTen}{\Mat{\DeformGradIncComp}} \newcommand{\DeformGradIncDevComp}{\bar{\SymbolDeformGradInc}} \newcommand{\DeformGradIncDevTen}{\bar{\Mat{\DeformGradIncComp}}} \newcommand{\JAsDeformGradDet}{J} \newcommand{\StretchTen}{\Mat{V}} \newcommand{\StrainGreenLagrangeComp}{\SymbolStrainGreenLagrange} \newcommand{\StrainGreenLagrangeTen}{\Mat{\StrainGreenLagrangeComp}} \newcommand{\StrainGreenLagrangeVoigt}{\tilde{\StrainGreenLagrangeTen}} \newcommand{\DeformCauchyGreenRightComp}{\SymbolDeformCauchyGreenRight} \newcommand{\DeformCauchyGreenRightTen}{\Mat{\DeformCauchyGreenRightComp}} \newcommand{\DeformCauchyGreenLeftComp}{\SymbolDeformCauchyGreenLeft} \newcommand{\DeformCauchyGreenLeftTen}{\Mat{\DeformCauchyGreenLeftComp}} \newcommand{\DeformCauchyGreenLeftDevComp}{\bar{\SymbolDeformCauchyGreenLeft}} \newcommand{\DeformCauchyGreenLeftDevTen}{\bar{\Mat{\DeformCauchyGreenLeftComp}}} \newcommand{\StrainSymGradComp}{\SymbolStrainSymGrad} \newcommand{\StrainSymGradTen}{\Mat{\StrainSymGradComp}} \newcommand{\StrainDispMat}{\Mat{\SymbolStrainDisp}} \newcommand{\DeformCauchyGreenRightDevComp}{\bar{\SymbolDeformCauchyGreenRight}} \newcommand{\DeformCauchyGreenRightDevTen}{\bar{\Mat{\DeformCauchyGreenRightComp}}} \newcommand{\KinematicElastoplast}{{\rm ep}} \newcommand{\Trial}{{\rm trial}} \newcommand{\DeformCauchyGreenLeftElasticTenDef}{\DeformCauchyGreenLeftTen^\KinematicElast \DefEq \DeformGradTen^\KinematicElast \DeformGradTen^{\KinematicElast T}} \newcommand{\DeformCauchyGreenLeftElasticDevTenDef}{{\DeformCauchyGreenLeftDevTen}^\KinematicElast \DefEq {\JAsDeformGradDet}^{\KinematicElast-\frac{2}{3}} {\DeformCauchyGreenLeftTen}^\KinematicElast} \newcommand{\DeformCauchyGreenRightPlasticTenDef}{\DeformCauchyGreenRightTen^\KinematicPlast \DefEq \DeformGradTen^{\KinematicPlast T} \DeformGradTen^\KinematicPlast} \newcommand{\StrainPlasticEquiv}{\SymbolStrainPlasticEquiv} \newcommand{\ConsistencyParameterPlasticDiscrete}{\Delta \SymbolConsistencyParameterPlastic} \newcommand{\YieldSurfaceNormalComp}{\SymbolYieldSurfaceNormal} \newcommand{\YieldSurfaceNormalTen}{\Mat{\SymbolYieldSurfaceNormal}} \newcommand{\UnitNormalRefComp}{N} \newcommand{\UnitNormalRefTen}{\Vec{\UnitNormalRefComp}} \newcommand{\UnitNormalCurrComp}{\UnitNormalComp} \newcommand{\UnitNormalCurrTen}{\UnitNormal} \newcommand{\DispFieldOverVolumeEnvRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeEnvCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\DispFieldOverVolumeRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeDeformMap}} \newcommand{\DispFieldOverCurveRefTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\DispFieldOverCurveRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DeformGradOverVolumeRefTenDef}{\FuncDef{\DeformGradTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\DeformGradOverCurveRefTenDef}{\FuncDef{\DeformGradTen}{\CurveRef}{\CurveCurr}} \newcommand{\StrainGreenLagrangeOverVolumeEnvRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\StrainGreenLagrangeOverVolumeRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\StrainGreenLagrangeOverCurveRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\CurveRef}{\CurveCurr}} \newcommand{\DeformCauchyGreenLeftTenDef}{\DeformCauchyGreenLeftTen \DefEq \DeformGradTen \DeformGradTen^T} \newcommand{\DeformCauchyGreenLeftDevTenDef}{\DeformCauchyGreenLeftDevTen \DefEq \DeformGradDet^{-\frac{2}{3}} \DeformCauchyGreenLeftTen} \newcommand{\StressPKOneTen}{\Mat{P}} \newcommand{\StressPKTwoComp}{S} \newcommand{\StressPKTwoTen}{\Mat{\StressPKTwoComp}} \newcommand{\StressPKTwoVoigt}{\tilde{\StressPKTwoTen}} \newcommand{\StressCauchyComp}{\sigma} \newcommand{\StressCauchyTen}{\Mat{\sigma}} \newcommand{\StressCauchyVoigt}{\tilde{\StressCauchyTen}} \newcommand{\StressCauchyMean}{p} \newcommand{\StressCauchyYield}{\StressCauchyComp_Y} \newcommand{\StressKirchhoffComp}{\tau} \newcommand{\StressKirchhoffTen}{\Mat{\tau}} \newcommand{\StressKirchhoffVoigt}{\tilde{\StressKirchhoffTen}} \newcommand{\StressKirchhoffDevComp}{s} \newcommand{\StressKirchhoffDevTen}{\Mat{\StressKirchhoffDevComp}} \newcommand{\ModuliElastRefComp}{C} \newcommand{\ModuliElastRefTen}{\Mat{\ModuliElastRefComp}} \newcommand{\ModuliElastRefVoigt}{\tilde{\ModuliElastRefTen}} \newcommand{\ModuliElastCurrComp}{c} \newcommand{\ModuliElastCurrTen}{\Mat{\ModuliElastCurrComp}} \newcommand{\ModuliElastCurrVoigt}{\tilde{\ModuliElastCurrTen}} \newcommand{\MaterialYoungsModulus}{E} \newcommand{\MaterialPoissonsRatio}{\nu} \newcommand{\MaterialMassDensity}{\rho} \newcommand{\MaterialBulkModulus}{\kappa} \newcommand{\MaterialShearModulus}{\mu} \newcommand{\MaterialShearModulusDev}{\bar{\MaterialShearModulus}} \newcommand{\MaterialThermalExpansion}{\alpha_{\text{thermal}}} \newcommand{\Area}{\SymbolArea} \newcommand{\Length}{\SymbolLength} \newcommand{\Width}{b} \newcommand{\Height}{h} \newcommand{\PenaltyStiffness}{\SymbolPenalty_{\SymbolStiffness}} \newcommand{\PenaltyDisp}{\SymbolPenalty_{\SymbolDisp}} \newcommand{\BodyForceRefComp}{\SymbolBodyForceUpper} \newcommand{\BodyForceRefTen}{\Vec{\BodyForceRefComp}} \newcommand{\BodyForceCurrComp}{\SymbolBodyForce} \newcommand{\BodyForceCurrTen}{\Vec{\BodyForceCurrComp}} \newcommand{\TracForceRefComp}{\SymbolTracForceUpper} \newcommand{\TracForceRefTen}{\Vec{\TracForceRefComp}} \newcommand{\TracForceCurrComp}{\SymbolTracForce} \newcommand{\TracForceCurrTen}{\Vec{\TracForceCurrComp}} \newcommand{\Pressure}{p} \newcommand{\BodyForceOverVolumeEnvRefTenDef}{\FuncDef{\BodyForceRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\BodyForceOverCurveRefCompDef}{\FuncDef{\BodyForceRefComp}{\CurveRef}{\Reals}} \newcommand{\BodyForceOverCurveRefTenDef}{\FuncDef{\BodyForceRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\BodyForceOverCurveCurrCompDef}{\BodyForceCurrComp \DefEq \BodyForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\BodyForceOverCurveCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverSurfaceRefTracTenDef}{\FuncDef{\TracForceRefTen}{\SurfaceRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceCurrTracTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\SurfaceDeformTracMap}} \newcommand{\TracForceOverCurveRefCompDef}{\FuncDef{\TracForceRefComp}{\PointRefTrac}{\Reals}} \newcommand{\TracForceOverCurveRefTenDef}{\FuncDef{\TracForceRefTen}{\PointRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverCurveCurrCompDef}{\TracForceCurrComp \DefEq \TracForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverCurveCurrTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\ConstraintRefTen}{\Vec{\SymbolConstraintUpper}} \newcommand{\LagrangeMultTestSpaceOverSurfaceRef}{\delta \LagrangeMultTrialSpaceOverSurfaceRef} \newcommand{\LagrangeMultTrialSpaceOverSurfaceRef}{\SpaceHilbert{L}(\SurfaceRefDisp)} \newcommand{\LagrangeMultRefComp}{\SymbolLagrangeMultRef} \newcommand{\LagrangeMultRefTen}{\Vec{\LagrangeMultRefComp}} \newcommand{\LagrangeMultCurrComp}{\SymbolLagrangeMultCurr} \newcommand{\LagrangeMultCurrTen}{\Vec{\LagrangeMultCurrComp}} \newcommand{\ConstraintOverSurfaceRefDispTenDef}{\FuncDef{\ConstraintRefTen}{\SurfaceRefDisp}{\SpatialDomain}} \newcommand{\LagrangeMultOverSurfaceCurrTenDef}{\LagrangeMultCurrTen \DefEq \LagrangeMultRefTen \circ \Inverse{\SurfaceDeformDispMap}} \newcommand{\Energy}{\SymbolEnergy} \newcommand{\EnergyElastic}[1]{\QFO{\Energy}{#1}} \newcommand{\EnergyElasticNoArg}{\QFONA{\Energy}} \newcommand{\EnergyEnv}{\SymbolEnvModifier{\Energy}} \newcommand{\EnergyInside}{\Energy^{\SymbolInside}} \newcommand{\EnergyOutside}{\Energy^{\SymbolOutside}} \newcommand{\EnergyConstraint}{\Energy^{\LagrangeMultCurrComp}} \newcommand{\EnergyDensityStrain}{\SymbolEnergyDensityStrain} \newcommand{\EnergyDensityStrainVol}{\SymbolEnergyDensityStrainVol} \newcommand{\EnergyDensityStrainDev}{\bar{\SymbolEnergyDensityStrain}} \newcommand{\EnergyInsideOverVolumeEnvRefDef}{\FuncDef{\EnergyInside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyOutsideOverVolumeEnvRefDef}{\FuncDef{\EnergyOutside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefDef}{\FuncDef{\EnergyConstraint}{\DispTrialSpaceOverVolumeEnvRef\TensorProduct\LagrangeMultTrialSpaceOverSurfaceRef}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefDef}{\FuncDef{\EnergyDensityStrain}{\VolumeEnvRef}{\Reals}} \newcommand{\ResidualComp}{\SymbolResidual} \newcommand{\ResidualVec}{\Vec{\ResidualComp}} \newcommand{\ForceVec}{\Vec{\SymbolForce}} \newcommand{\ForceInternalVec}{\ForceVec^{int}} \newcommand{\ForceExternalVec}{\ForceVec^{ext}} \newcommand{\ForceConstraintPenaltyVec}{\ForceVec^{\PenaltyDisp}} \newcommand{\ForceConstraintLagrangeVec}{\ForceVec^{\lambda1}} \newcommand{\ForceConstraintVec}{\ForceVec^{\lambda2}} \newcommand{\StiffnessMat}{\Mat{\SymbolStiffness}} \newcommand{\StiffnessMaterialMat}{\StiffnessMat^{m}} \newcommand{\StiffnessGeometricMat}{\StiffnessMat^{g}} \newcommand{\StiffnessPenaltyMat}{\StiffnessMat^{\PenaltyDisp}} \newcommand{\StiffnessLagrangeMat}{\StiffnessMat^{\LagrangeMultCurrComp}} \newcommand{\MassMat}{\Mat{\SymbolMass}} \newcommand{\LumpedMassMat}{\tilde{\MassMat}} \newcommand{\SolutionComp}{\SymbolSolution} \newcommand{\Solution}{\Vec{\SymbolSolution}} \newcommand{\SolutionDisp}{\Solution^{\DispFieldCurrComp}} \newcommand{\SolutionLagrange}{\Solution^{\LagrangeMultCurrComp}} \newcommand{\Flex}[1]{\mathcal{F}_{#1}} \newcommand{\FlexIt}{\mathcal{F}} \newcommand{\FlexFEA}{\Flex{\bar{0}}} \newcommand{\FlexFEAModified}{\Flex{0}} \newcommand{\FlexOne}{\Flex{1}} \newcommand{\FlexImmersed}{\Flex{\infty}} \newcommand{\FlexInfty}{\mathcal{F}{\infty}} \newcommand{\FlexSpectrum}{\overleftrightarrow{\mathcal{F}}} \newcommand{\FlexSpectrumId}{i} \newcommand{\TimeStep}{\Delta \SymbolTime} \newcommand{\SpectralRadius}{\rho_{\infty}}$$\newcommand{\SymbolPressureContact}{p} \newcommand{\SymbolContactGap}{g} \newcommand{\NumUsplineBasisFuncsS}{\Size{\UsplineBasisFuncSetOnMeshUspline^s}} \newcommand{\NumUsplineBasisFuncsM}{\Size{\UsplineBasisFuncSetOnMeshUspline^m}} \newcommand{\NumUsplineBasisFuncsG}{\Size{\UsplineBasisFuncSetOnMeshUspline^\alpha}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactS}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactS}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactM}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactM}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactG}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactG}}} \newcommand{\ParamDomainEnvS}{\ParamDomainEnv^{s}} \newcommand{\ParamDomainEnvM}{\ParamDomainEnv^{m}} \newcommand{\ParamDomainEnvG}{\ParamDomainEnv^{\alpha}} \newcommand{\ParamDomainS}{\ParamDomain^{s}} \newcommand{\ParamDomainM}{\ParamDomain^{m}} \newcommand{\ParamDomainG}{\ParamDomain^\alpha} \newcommand{\ParamDomainClosureS}{\overline{\ParamDomain}^s} \newcommand{\ParamDomainClosureM}{\overline{\ParamDomain}^m} \newcommand{\ParamDomainClosureG}{\overline{\ParamDomain}^\alpha} \newcommand{\ParamDomainBdryG}{\ParamDomainBdry^\alpha} \newcommand{\ParamDomainBdryContactS}{\ParamDomainBdry^{c,s}} \newcommand{\ParamDomainBdryContactM}{\ParamDomainBdry^{c,m}} \newcommand{\ParamDomainBdryContactG}{\ParamDomainBdry^{c,\alpha}} \newcommand{\ParamDomainBdryTangentComp}{A} \newcommand{\ParamDomainBdryTangentTen}{\Mat{\ParamDomainBdryTangentComp}} \newcommand{\ParamDetJacobianS}{j^s} \newcommand{\ParamDomainGCoordVec}{\ParamCoordVecSimple^{\ParamDomainG}} \newcommand{\ParamDomainGCoord}{\ParamCoordSimple^{\ParamDomainG}} \newcommand{\ParamDomainEnvGCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvGCoord}{\ParamCoordSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvSCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvSCoord}{\ParamCoordSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvMCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainEnvMCoord}{\ParamCoordSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainBdryContactGCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactGCoord}{\ParamCoordSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactSCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactSCoord}{\ParamCoordSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactMCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactM}} \newcommand{\ParamDomainBdryContactMCoord}{\ParamCoordSimple^{\ParamDomainBdryContactM}} \newcommand{\SegmentParamDomainOfVolumeEnvRefS}{\QuantityRelatedTo{\ParamDomainEnvS}{\SegmentOfVolumeEnvRefS}} \newcommand{\SegmentParamDomainOfVolumeEnvRefM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvRefM}} \newcommand{\SegmentParamDomainOfVolumeEnvCurrM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvCurrM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactS}{\QuantityRelatedTo{\ParamDomainBdryContactS}{\SegmentOfSurfaceCurrContactS}} \newcommand{\SegmentParamDomainOfSurfaceRefContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceRefContactM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceCurrContactM}} \newcommand{\UsplineBasisFuncS}{\UsplineBasisFunc^{s}} \newcommand{\UsplineBasisFuncM}{\UsplineBasisFunc^{m}} \newcommand{\UsplineBasisFuncG}{\UsplineBasisFunc^{\alpha}} \newcommand{\UsplineBasisFuncParamDomainBdryContactS}{\UsplineBasisFunc^{\ParamDomainBdryContactS}} \newcommand{\UsplineBasisFuncParamDomainBdryContactM}{\UsplineBasisFunc^{\ParamDomainBdryContactM}} \newcommand{\UsplineBasisFuncParamDomainBdryContactG}{\UsplineBasisFunc^{\ParamDomainBdryContactG}} \newcommand{\UsplineBasisSymmSecondOrderComp}{S} \newcommand{\UsplineBasisSymmSecondOrderTen}{\Mat{\UsplineBasisSymmSecondOrderComp}} \newcommand{\UsplineBasisSymmFourthOrderComp}{E} \newcommand{\UsplineBasisSymmSixthOrderComp}{Z} \newcommand{\VolumeEnvRefG}{\VolumeEnvRef^{\alpha}} \newcommand{\VolumeEnvRefS}{\VolumeEnvRef^{s}} \newcommand{\VolumeEnvRefM}{\VolumeEnvRef^{m}} \newcommand{\VolumeRefG}{\VolumeRef^{\alpha}} \newcommand{\VolumeRefS}{\VolumeRef^{s}} \newcommand{\VolumeRefM}{\VolumeRef^{m}} \newcommand{\VolumeRefClosureG}{\VolumeRefClosure^\alpha} \newcommand{\VolumeRefClosureS}{\VolumeRefClosure^s} \newcommand{\VolumeRefClosureM}{\VolumeRefClosure^m} \newcommand{\SurfaceRefG}{\SurfaceRef^\alpha} \newcommand{\SurfaceRefS}{\SurfaceRef^s} \newcommand{\SurfaceRefM}{\SurfaceRef^m} \newcommand{\SurfaceRefTracG}{\SurfaceRef^{\SymbolTracForce,\alpha}} \newcommand{\SurfaceRefDispG}{\SurfaceRef^{\SymbolDisp,\alpha}} \newcommand{\SurfaceRefContactG}{\SurfaceRef^{c,\alpha}} \newcommand{\SurfaceRefContactS}{\SurfaceRef^{c,s}} \newcommand{\SurfaceRefContactM}{\SurfaceRef^{c,m}} \newcommand{\VolumeEnvRefSCoordVec}{\RefCoordVec{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMCoordVec}{\RefCoordVec{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGCoordVec}{\RefCoordVec{\VolumeEnvRefG}} \newcommand{\VolumeRefGCoordVec}{\RefCoordVec{\VolumeRefG}} \newcommand{\SurfaceRefContactSCoord}{\RefCoord{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactSCoordVec}{\RefCoordVec{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMCoord}{\RefCoord{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactMCoordVec}{\RefCoordVec{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGCoord}{\RefCoord{\SurfaceRefContactG}} \newcommand{\SurfaceRefContactGCoordVec}{\RefCoordVec{\SurfaceRefContactG}} \newcommand{\SurfaceRefDispGCoordVec}{\RefCoordVec{\SurfaceRefDispG}} \newcommand{\SegmentOfVolumeEnvRefS}{\Segment{\VolumeEnvRefS}} \newcommand{\SegmentOfVolumeEnvRefM}{\Segment{\VolumeEnvRefM}} \newcommand{\SegmentOfSurfaceRefContactS}{\Segment{\SurfaceRefContactS}} \newcommand{\SegmentOfSurfaceRefContactM}{\Segment{\SurfaceRefContactM}} \newcommand{\VolumeEnvCurrG}{\VolumeEnvCurr^{\alpha}} \newcommand{\VolumeEnvCurrS}{\VolumeEnvCurr^{s}} \newcommand{\VolumeEnvCurrM}{\VolumeEnvCurr^{m}} \newcommand{\VolumeCurrG}{\VolumeCurr^{\alpha}} \newcommand{\VolumeCurrS}{\VolumeCurr^{s}} \newcommand{\VolumeCurrM}{\VolumeCurr^{m}} \newcommand{\VolumeCurrClosureG}{\VolumeCurrClosure^\alpha} \newcommand{\VolumeCurrClosureS}{\VolumeCurrClosure^s} \newcommand{\VolumeCurrClosureM}{\VolumeCurrClosure^m} \newcommand{\SurfaceCurrG}{\SurfaceCurr^\alpha} \newcommand{\SurfaceCurrS}{\SurfaceCurr^s} \newcommand{\SurfaceCurrM}{\SurfaceCurr^m} \newcommand{\SurfaceCurrContact}{\SurfaceCurr^{c}} \newcommand{\SurfaceCurrContactG}{\SurfaceCurr^{c,\alpha}} \newcommand{\SurfaceCurrContactS}{\SurfaceCurr^{c,s}} \newcommand{\SurfaceCurrContactM}{\SurfaceCurr^{c,m}} \newcommand{\VolumeEnvCurrSCoordVec}{\CurrCoordVec{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMCoordVec}{\CurrCoordVec{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGCoordVec}{\CurrCoordVec{\VolumeEnvCurrG}} \newcommand{\VolumeCurrGCoordVec}{\CurrCoordVec{\VolumeCurrG}} \newcommand{\SurfaceCurrContactSCoord}{\CurrCoord{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactSCoordVec}{\CurrCoordVec{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMCoord}{\CurrCoord{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactMCoordVec}{\CurrCoordVec{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGCoord}{\CurrCoord{\SurfaceCurrContactG}} \newcommand{\SurfaceCurrContactGCoordVec}{\CurrCoordVec{\SurfaceCurrContactG}} \newcommand{\SegmentOfVolumeEnvCurrS}{\Segment{\VolumeEnvCurrS}} \newcommand{\SegmentOfVolumeEnvCurrM}{\Segment{\VolumeEnvCurrM}} \newcommand{\SegmentOfSurfaceCurrContactS}{\Segment{\SurfaceCurrContactS}} \newcommand{\SegmentOfSurfaceCurrContactM}{\Segment{\SurfaceCurrContactM}} \newcommand{\VolumeEnvRefSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeEnvRefSMapInv}{\Inverse{\VolumeEnvRefSMap}} \newcommand{\VolumeEnvRefMMapInv}{\Inverse{\VolumeEnvRefMMap}} \newcommand{\VolumeEnvRefGMapInv}{\Inverse{\VolumeEnvRefGMap}} \newcommand{\VolumeRefClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeRefClosureS}} \newcommand{\VolumeRefClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}} \newcommand{\VolumeRefClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\VolumeRefSMap}{\ManifoldMap{\ParamDomainS}{\VolumeRefS}} \newcommand{\VolumeRefMMap}{\ManifoldMap{\ParamDomainM}{\VolumeRefM}} \newcommand{\VolumeRefGMap}{\ManifoldMap{\ParamDomainG}{\VolumeRefG}} \newcommand{\VolumeRefClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\VolumeRefClosureMMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}\Big|_{\ParamDomainBdryContactM}} \newcommand{\SurfaceRefContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvRefGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeRefClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\SurfaceRefContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvCurrSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeCurrClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeCurrClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeCurrSMap}{\ManifoldMap{\ParamDomainS}{\VolumeCurrS}} \newcommand{\VolumeCurrMMap}{\ManifoldMap{\ParamDomainM}{\VolumeCurrM}} \newcommand{\VolumeCurrGMap}{\ManifoldMap{\ParamDomainG}{\VolumeCurrG}} \newcommand{\VolumeCurrClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\SurfaceCurrContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvCurrGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\SurfaceCurrContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvDeformSMap}{\ManifoldMap{\VolumeEnvRefS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvDeformMMap}{\ManifoldMap{\VolumeEnvRefM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvDeformGMap}{\ManifoldMap{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformSMap}{\ManifoldMap{\VolumeRefClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeDeformMMap}{\ManifoldMap{\VolumeRefClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeDeformGMap}{\ManifoldMap{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeEnvDeformGMapDef}{\ManifoldMapDef{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformGMapDef}{\ManifoldMapDef{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\DispTrialSpaceOverVolumeEnvRefS}{\SpaceHilbert{U}(\VolumeEnvRefS)} \newcommand{\DispTrialSpaceOverVolumeEnvRefM}{\SpaceHilbert{U}(\VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefSAndM}{\SpaceHilbert{U}(\VolumeEnvRefS, \VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefG}{\SpaceHilbert{U}(\VolumeEnvRefG)} \newcommand{\DispTrialSpaceOverVolumeRefS}{\SpaceHilbert{U}(\VolumeRefClosureS)} \newcommand{\DispTrialSpaceOverVolumeRefM}{\SpaceHilbert{U}(\VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefSAndM}{\SpaceHilbert{U}(\VolumeRefClosureS, \VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefG}{\SpaceHilbert{U}(\VolumeRefClosureG)} \newcommand{\DispTestSpaceOverVolumeEnvRefG}{\delta \DispTrialSpaceOverVolumeEnvRefG} \newcommand{\DispTestSpaceOverVolumeRefG}{\delta \DispTrialSpaceOverVolumeRefG} \newcommand{\DispFieldRefSComp}{\DispFieldRefComp^s} \newcommand{\DispFieldRefSTen}{\DispFieldRefTen^s} \newcommand{\DispFieldRefMComp}{\DispFieldRefComp^m} \newcommand{\DispFieldRefMTen}{\DispFieldRefTen^m} \newcommand{\DispFieldRefGTen}{\DispFieldRefTen^\alpha} \newcommand{\DispFieldDiscreteRefGTen}{\DispFieldRefTen^{h,\alpha}} \newcommand{\DispFieldOverVolumeEnvRefGTenDef}{\ManifoldMapDef{\VolumeEnvRefG}{\DispFieldRefGTen}} \newcommand{\DispFieldOverVolumeRefGTenDef}{\ManifoldMapDef{\VolumeRefClosureG}{\DispFieldRefGTen}} \newcommand{\GradVolumeRefG}[1]{\Grad{\RefCoordVec{\VolumeRefClosureG}}{#1}} \newcommand{\GradVolumeEnvRefS}[1]{\Grad{\VolumeEnvRefSCoordVec}{#1}} \newcommand{\GradVolumeEnvRefM}[1]{\Grad{\VolumeEnvRefMCoordVec}{#1}} \newcommand{\GradVolumeEnvRefG}[1]{\Grad{\VolumeEnvRefGCoordVec}{#1}} \newcommand{\DeformGradSComp}{\DeformGradComp^s} \newcommand{\DeformGradSTen}{\DeformGradTen^s} \newcommand{\DeformGradSDet}{\Det{\DeformGradSTen}} \newcommand{\DeformGradSInvTrans}{\InvTrans{\DeformGradSTen}} \newcommand{\DeformGradMComp}{\DeformGradComp^m} \newcommand{\DeformGradMTen}{\DeformGradTen^m} \newcommand{\DeformGradMDet}{\Det{\DeformGradMTen}} \newcommand{\DeformGradMInvTrans}{\InvTrans{\DeformGradMTen}} \newcommand{\DeformGradGTen}{\DeformGradTen^\alpha} \newcommand{\DeformGradOverVolumeEnvRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\DeformGradOverVolumeRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\UnitNormalRefSTen}{\UnitNormalRefTen^s} \newcommand{\UnitNormalRefMTen}{\UnitNormalRefTen^m} \newcommand{\UnitNormalCurrSComp}{\UnitNormalCurrComp^s} \newcommand{\UnitNormalCurrSTen}{\UnitNormalCurrTen^s} \newcommand{\UnitNormalCurrMComp}{\UnitNormalCurrComp^m} \newcommand{\UnitNormalCurrMTen}{\UnitNormalCurrTen^m} \newcommand{\AreaRatioS}{r^s} \newcommand{\AreaRatioM}{r^m} \newcommand{\ContraMTen}{\Mat{a}^m} \newcommand{\SymmProdInProjTan}{C} \newcommand{\ProdPBTanInvCurPBTanInv}{D} \newcommand{\ProdPBTanInvCurMetricInv}{M} \newcommand{\ProdPBTanInvCurMetricInvCurPBTanInv}{W} \newcommand{\PenaltyContactGap}{\SymbolPenalty_{\SymbolContactGap}} \newcommand{\BodyForceRefGTen}{\BodyForceRefTen^\alpha} \newcommand{\TracForceRefGTen}{\TracForceRefTen^\alpha} \newcommand{\BodyForceOverVolumeRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeRefG}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeEnvRefG}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceRefTracGTenDef}{\FuncDef{\TracForceRefGTen}{\SurfaceRefTracG}{\SpatialDomain}} \newcommand{\PressureContact}{\SymbolPressureContact} \newcommand{\PressureContactProjected}{\overline{\SymbolPressureContact}_{\UsplineBasisFuncId}} \newcommand{\CoeffPressureContact}{\SymbolPressureContact_{\UsplineBasisFuncId}} \newcommand{\PressureContactInterpolated}{\hat{\SymbolPressureContact}} \newcommand{\ConstraintRefGTen}{\ConstraintRefTen^\alpha} \newcommand{\GapContact}{\SymbolContactGap} \newcommand{\GapContactProjected}{\overline{\SymbolContactGap}_{\UsplineBasisFuncId}} \newcommand{\GapContactProjectedVariation}{\delta \GapContactProjected} \newcommand{\GapContactMortar}{\GapContact^{m}} \newcommand{\GapContactMortarProjected}{\overline{\GapContact}^{m}_{\UsplineBasisFuncId}} \newcommand{\CoeffGapContactMortar}{\GapContact^{m}_{\UsplineBasisFuncId}} \newcommand{\ConstraintOverSurfaceRefDispGTenDef}{\FuncDef{\ConstraintRefGTen}{\SurfaceRefDispG}{\SpatialDomain}} \newcommand{\EnergyEnvG}{\EnergyEnv^\alpha} \newcommand{\EnergyG}{\Energy^{\alpha}} \newcommand{\EnergyDensityStrainG}{\EnergyDensityStrain^\alpha} \newcommand{\EnergyConstraintG}{\Energy^{\SymbolDisp,\alpha}} \newcommand{\EnergyContact}{\Energy^c} \newcommand{\EnergyOverVolumeRefGDef}{\FuncDef{\EnergyG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyEnvOverVolumeEnvRefGDef}{\FuncDef{\EnergyEnvG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeEnvRefG}{\Reals}} \newcommand{\EnergyContactOverVolumeRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeRefSAndM}{\Reals}} \newcommand{\EnergyContactOverVolumeEnvRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeEnvRefSAndM}{\Reals}} \newcommand{\EnergyConstraintOverVolumeRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\ResidualMat}{\Mat{N}} \newcommand{\ForceInternalContactVec}{\ForceVec^{c,int,n}} \newcommand{\ForceGapContact}{C^n} \newcommand{\StiffnessMatA}{\hat{\Mat{N}}} \newcommand{\StiffnessMatB}{\Mat{T}} \newcommand{\StiffnessMatC}{\Mat{D}} \newcommand{\StiffnessGeometricContact}{\StiffnessMat^{c,g,n}} \newcommand{\StiffnessContact}{\StiffnessMat^{c,n}} \newcommand{\ElemCount}[1]{\operatorname{count}{(#1)}} \newcommand{\ConvexHull}[1]{\operatorname{ch}{\left(#1\right)}} \newcommand{\Normal}[1]{\operatorname{N}{\left(#1\right)}} \newcommand{\NormalConvexHull}[1]{\Normal{\ConvexHull{#1}}} \newcommand{\DiscretePointSetS}{\Set{SP}} \newcommand{\DiscreteElemSetM}{\Set{ME}} \newcommand{\EnvBoundConMapM}{\operatorname{mc}} \newcommand{\EnvBoundConSetM}{\Set{MC}} \newcommand{\SpatialCoordVecToSegmentSetMapMSensor}{\operatorname{cs}} \newcommand{\SpatialCoordVecToSegmentSetMapMElem}{\operatorname{ce}} \newcommand{\SelfContactMap}{\operatorname{sc}} \newcommand{\ColSetS}{\Set{I}} \newcommand{\PairEnvMapBoundM}{\operatorname{cp}} \newcommand{\ApproximateProjectionCollision}[1]{\widetilde{\Projection}{#1}} \newcommand{\ImageSlaveEnv}{\bar{\ParamCoordVecSimple}^{\ParamDomainEnvM}} \newcommand{\ImageSlaveBound}{\bar{\ParamCoordVecSimple}^{\ParamDomainBdryContactM}} \newcommand{\ActiveSet}{\Set{A}} \newcommand{\DiscretePointSetM}{\Set{MP}} \newcommand{\MortarActiveSet}{\Set{A}^m} \newcommand{\PressureContactAnalytical}{p_a} \newcommand{\TipPressureContactAnalytical}{p_0} \newcommand{\ContactHalfWidth}{b}$$\newcommand{\MidGeometryModifier}[1]{\bar{#1}} \newcommand{\SymbolRotationGlobal}{\omega} \newcommand{\SkewMat}[1]{\Mat{s} \left( #1 \right)} \newcommand{\SkewMatInv}[1]{\Mat{s}^{-1} \left( #1 \right)} \newcommand{\Ident}{\Mat{I}} \newcommand{\Cartesian}{\Vec{e}} \newcommand{\ManifoldDim}{n} \newcommand{\LaminaSymbol}{l} \newcommand{\LaminaSymbolUpper}{L} \newcommand{\LaminaMetricSymbol}{j} \newcommand{\ShellMomentSymbol}{q} \newcommand{\DirectorBilinearFunc}[3]{\left(#2,#3\right)_{#1}} \newcommand{\RotObjectiveFunc}{s} \newcommand{\ParamConfig}{\Omega_\xi} \newcommand{\ParamConfigMid}{\Omega_\xi^m} \newcommand{\ParamConfigSec}{\Omega_\xi^s} \newcommand{\ParamConfigBound}{\Gamma_\xi} \newcommand{\ParamConfigMidBound}{\Gamma_\xi^m} \newcommand{\ParamConfigSecBound}{\Gamma_\xi^s} \newcommand{\ParamConfigMuBound}{\Gamma_\xi^\mu} \newcommand{\ParamConfigSigBound}{\Gamma_\xi^\sigma} \newcommand{\ParamConfigDirichMidBound}{\Gamma_\xi^g} \newcommand{\ParamConfigNeuMidBound}{\Gamma_\xi^h} \newcommand{\ParamConfigDirichBound}{\Gamma_\xi^\gamma} \newcommand{\ParamConfigNeuBound}{\Gamma_\xi^\eta} \newcommand{\ParaParam}[1]{\xi_{#1}} \newcommand{\ParaParamVec}{\boldsymbol{\xi}} \newcommand{\RefConfig}{\Omega_0} \newcommand{\RefConfigMid}{\Omega_0^m} \newcommand{\RefConfigSec}{\Omega_0^s} \newcommand{\SurfaceRefRot}{\SurfaceRef^{\SymbolRotationGlobal}} \newcommand{\RefConfigBound}{\Gamma_0} \newcommand{\RefConfigMidBound}{\Gamma_0^m} \newcommand{\RefConfigSecBound}{\Gamma_0^s} \newcommand{\RefConfigMuBound}{\Gamma_0^\mu} \newcommand{\RefConfigSigBound}{\Gamma_0^\sigma} \newcommand{\RefConfigDirichMidBound}{\Gamma_0^g} \newcommand{\RefConfigNeuMidBound}{\Gamma_0^h} \newcommand{\RefConfigDirichBound}{\Gamma_0^\gamma} \newcommand{\RefConfigNeuBound}{\Gamma_0^\eta} \newcommand{\RefMap}{\Vec{X}} \newcommand{\RefMid}{\MidGeometryModifier{\Vec{X}}} \newcommand{\RefDir}{\Vec{D}} \newcommand{\RefSectionPos}{\Vec{R}} \newcommand{\RefCovar}[1]{\Vec{G}_{#1}} \newcommand{\RefMidCovar}[1]{\MidGeometryModifier{\Vec{G}}_{#1}} \newcommand{\RefContra}[1]{\Vec{G}^{#1}} \newcommand{\RefMidContra}[1]{\MidGeometryModifier{\Vec{G}}^{#1}} \newcommand{\RefLamina}[1]{\Vec{L}_{#1}} \newcommand{\RefLaminaDual}[1]{\Vec{\LaminaSymbolUpper}^{#1}} \newcommand{\RefShellProjectedBasis}[1]{\Vec{P}_{#1}} \newcommand{\CurConfig}{\Omega} \newcommand{\CurConfigMid}{\Omega^m} \newcommand{\CurConfigSec}{\Omega^s} \newcommand{\CurConfigBound}{\Gamma} \newcommand{\CurConfigMidBound}{\Gamma^m} \newcommand{\CurConfigSecBound}{\Gamma^s} \newcommand{\CurConfigMuBound}{\Gamma^\mu} \newcommand{\CurConfigSigBound}{\Gamma^\sigma} \newcommand{\CurConfigDirichMidBound}{\Gamma^g} \newcommand{\CurConfigNeuMidBound}{\Gamma^h} \newcommand{\CurConfigDirichBound}{\Gamma^\gamma} \newcommand{\CurConfigNeuBound}{\Gamma^\eta} \newcommand{\CurMap}{\Vec{x}} \newcommand{\CurMid}{\MidGeometryModifier{\Vec{x}}} \newcommand{\CurDir}{\Vec{d}} \newcommand{\CurSectionPos}{\Vec{r}} \newcommand{\CurCovar}[1]{\Vec{g}_{#1}} \newcommand{\CurMidCovar}[1]{\MidGeometryModifier{\Vec{g}}_{#1}} \newcommand{\CurContra}[1]{\Vec{g}^{#1}} \newcommand{\CurMidContra}[1]{\MidGeometryModifier{\Vec{g}}^{#1}} \newcommand{\CurLamina}[1]{\Vec{\LaminaSymbol}_{#1}} \newcommand{\CurLaminaDual}[1]{\Vec{\LaminaSymbol}^{#1}} \newcommand{\CurModLamina}[1]{\hat{\Vec{\LaminaSymbol}}_{#1}} \newcommand{\CurModLaminaDual}[1]{\hat{\Vec{\LaminaSymbol}}^{#1}} \newcommand{\CurShellProjectedBasis}[1]{\Vec{p}_{#1}} \newcommand{\DeformMap}{\varphi} \newcommand{\DeformMapMid}{\varphi^m} \newcommand{\Disp}{\Vec{u}} \newcommand{\DispMid}{\MidGeometryModifier{\Vec{u}}} \newcommand{\RotVec}{\boldsymbol{\omega}} \newcommand{\RotMat}{\boldsymbol{\Lambda}} \newcommand{\RotMatMembrane}{\Mat{\Psi}} \newcommand{\RotMatDelta}{\boldsymbol{\Lambda}_\Delta} \newcommand{\IncRotMat}{\Delta\RotMat} \newcommand{\EulerVec}{\boldsymbol{\vartheta}} \newcommand{\EulerVecNorm}{\theta} \newcommand{\EulerVecSinc}{\boldsymbol{\Theta}} \newcommand{\EulerRotVec}{\boldsymbol{\theta}} \newcommand{\EulerRotAngle}{\theta} \newcommand{\IncEulerRotVec}{\Delta\boldsymbol{\theta}} \newcommand{\AngularVelocity}{\boldsymbol{\eta}} \newcommand{\IncEulerRotVecVel}{\Delta\dot{\boldsymbol{\theta}}} \newcommand{\AngularAcceleration}{\boldsymbol{\alpha}} \newcommand{\IncEulerRotVecAcc}{\Delta\ddot{\boldsymbol{\theta}}} \newcommand{\DeformGrad}{\Mat{F}} \newcommand{\Strain}[1]{\boldsymbol{\tau}_{#1}} \newcommand{\StrainMid}[1]{\boldsymbol{\varepsilon}_{#1}} \newcommand{\StrainCurve}[1]{\boldsymbol{\kappa}_{#1}} \newcommand{\DecompDeform}{\Mat{U}} \newcommand{\ExtraDeformTen}{\Delta\DeformGradTen} \newcommand{\ExtraDeformComp}{\Delta\DeformGradComp} \newcommand{\GreenLagrange}{\Mat{E}} \newcommand{\ShellStrainCurve}[1]{\boldsymbol{\chi}_{#1}} \newcommand{\SecPK}{\Mat{S}} \newcommand{\FirstPK}{\Mat{P}} \newcommand{\Cauchy}{\boldsymbol{\sigma}} \newcommand{\IntTrac}[1]{\Vec{t}_{#1}} \newcommand{\RefModuli}{\Mat{C}} \newcommand{\CurModuli}{\Mat{c}} \newcommand{\PointModuli}{\Mat{m}} \newcommand{\ResModuli}{\Mat{M}} \newcommand{\RefAreaVec}[1]{\Vec{A}_{#1}} \newcommand{\RefAreaMidVec}[1]{\MidGeometryModifier{\Vec{A}}_{#1}} \newcommand{\RefMeas}{G} \newcommand{\UnitNormalRefVec}[1]{\Vec{N}_{#1}} \newcommand{\CurAreaVec}[1]{\Vec{a}_{#1}} \newcommand{\CurAreaMidVec}[1]{\MidGeometryModifier{\Vec{a}}_{#1}} \newcommand{\CurMeas}{g} \newcommand{\UnitNormalCurrVec}[1]{\Vec{n}_{#1}} \newcommand{\CurLaminaMetricTen}{\Mat{\LaminaMetricSymbol}} \newcommand{\CurLaminaMetricComp}{\LaminaMetricSymbol} \newcommand{\CurToModLaminaTransComp}{M} \newcommand{\IntForce}{\Vec{f}^{\, int}} \newcommand{\IntMoment}{\Vec{m}^{int}} \newcommand{\ExtForceBody}{\Vec{f}^{\, ext}_b} \newcommand{\ExtMomentBody}{\Vec{m}^{ext}_b} \newcommand{\ShellExtMomentBody}{\Vec{\ShellMomentSymbol}^{ext}_b} \newcommand{\ExtForceTrac}{\Vec{f}^{\, ext}_h} \newcommand{\ExtMomentTrac}{\Vec{m}^{ext}_h} \newcommand{\ShellExtMomentTrac}{\Vec{\ShellMomentSymbol}^{ext}_h} \newcommand{\MassForce}{\Vec{f}^{\,\rho}} \newcommand{\MassMoment}{\Vec{m}^{\rho}} \newcommand{\ShellMassMoment}{\Vec{\ShellMomentSymbol}^{\rho}} \newcommand{\ResidualInternal}{\Vec{R}^{int}} \newcommand{\ResidualExternal}{\Vec{R}^{ext}} \newcommand{\ResidualMass}{\Mat{R}^{\rho}} \newcommand{\NodalMass}[1]{\Mat{M}_{#1}} \newcommand{\NodalLinearInertia}[1]{A_{#1}} \newcommand{\NodalAngularInertia}[1]{I_{#1}} \newcommand{\ShellDeltaAngle}{\phi} \newcommand{\BStrainMatrix}[2]{\Mat{B}_{#1#2}} \newcommand{\ShellDrillingStiffness}{k} \newcommand{\DrillConstraint}{C} \newcommand{\IntForceDrilling}{\Vec{f}^{d}} \newcommand{\ModuliDrilling}{\Mat{M}^d} \newcommand{\ResidualDrilling}{\Vec{R}^d} \newcommand{\SymbolTop}{top} \newcommand{\SymbolCentroid}{c} \newcommand{\SymbolLeverArm}{r} \newcommand{\SpatialCoordVecCentroid}{\SpatialCoordVec^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidX}{\SpatialCoordX^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidY}{\SpatialCoordY^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidZ}{\SpatialCoordZ^{\SymbolCentroid}} \newcommand{\LeverArm}{\Vec{\SymbolLeverArm}} \newcommand{\LeverArmX}{\SymbolLeverArm_{\SpatialCoordX}} \newcommand{\LeverArmY}{\SymbolLeverArm_{\SpatialCoordY}} \newcommand{\LeverArmZ}{\SymbolLeverArm_{\SpatialCoordZ}} \newcommand{\MomentFirstMass}{Q} \newcommand{\MomentSecondMass}{I} \newcommand{\MomentSecondMassDetailed}[1]{I_{#1}} \newcommand{\DistributedLoad}{q} \newcommand{\TracForceCurrCompX}{\TracForceCurrComp_{\SpatialCoordX}} \newcommand{\TracForceCurrCompY}{\TracForceCurrComp_{\SpatialCoordY}} \newcommand{\TracForceCurrCompZ}{\TracForceCurrComp_{\SpatialCoordZ}} \newcommand{\TracMomentCurrCompDetailed}[1]{\TracMomentCurrComp_{#1}} \newcommand{\TracForceCurrCompSupportReaction}{r^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompSupportReactionDetailed}[1]{\TracForceCurrCompSupportReaction_{#1}} \newcommand{\TracForceCurrCompDistributedLoad}{\DistributedLoad^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompPointLoad}{p^{\TracForceCurrComp}} \newcommand{\TracMomentCurrVec}{\Vec{\TracMomentCurrComp}} \newcommand{\TracMomentCurrComp}{m} \newcommand{\BodyForceCurrCompX}{\BodyForceCurrComp_{\SpatialCoordX}} \newcommand{\BodyForceCurrCompY}{\BodyForceCurrComp_{\SpatialCoordY}} \newcommand{\BodyForceCurrCompZ}{\BodyForceCurrComp_{\SpatialCoordZ}} \newcommand{\BodyForceCurrCompDistributedLoad}{\DistributedLoad^{\BodyForceCurrComp}} \newcommand{\BodyForceCurrCompAxialLoad}{f^{\BodyForceCurrComp}} \newcommand{\StressCauchyTractionVec}{\Vec{t}} \newcommand{\StressCauchyTractionX}{t_{\SpatialCoordX}} \newcommand{\StressCauchyTractionY}{t_{\SpatialCoordY}} \newcommand{\StressCauchyTractionZ}{t_{\SpatialCoordZ}} \newcommand{\StressCauchyNormal}{\sigma} \newcommand{\StressCauchyNormalDetailed}[1]{\StressCauchyNormal_{#1}} \newcommand{\StressCauchyNormalXX}{\StressCauchyComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StressCauchyNormalYY}{\StressCauchyComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StressCauchyNormalZZ}{\StressCauchyComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StressCauchyShear}{\tau} \newcommand{\StressCauchyShearDetailed}[1]{\StressCauchyShear_{#1}} \newcommand{\StressCauchyShearXY}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StressCauchyShearYX}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordX}} \newcommand{\StressCauchyShearXZ}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StressCauchyShearZX}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordX}} \newcommand{\StressCauchyShearYZ}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\StressCauchyShearZY}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordY}} \newcommand{\StressCauchyResultantForce}{F} \newcommand{\StressCauchyResultantForceDetailed}[1]{F_{#1}} \newcommand{\StressCauchyResultantForceVec}{\Vec{\StressCauchyResultantForce}} \newcommand{\StressCauchyResultantMoment}{M} \newcommand{\StressCauchyResultantMomentDetailed}[1]{M_{#1}} \newcommand{\StressCauchyResultantMomentVec}{\Vec{\StressCauchyResultantMoment}} \newcommand{\StressCauchyResultantForceShear}{V} \newcommand{\StressCauchyResultantForceShearDetailed}[1]{V_{#1}} \newcommand{\StressCauchyResultantForceAxial}{\StressCauchyResultantForce} \newcommand{\DispFieldCurrCompX}{\DispFieldCurrComp_{\SpatialCoordX}} \newcommand{\DispFieldCurrCompY}{\DispFieldCurrComp_{\SpatialCoordY}} \newcommand{\DispFieldCurrCompZ}{\DispFieldCurrComp_{\SpatialCoordZ}} \newcommand{\DispFieldMidCurrCompX}{\overline{\DispFieldCurrComp}_{\SpatialCoordX}} \newcommand{\DispFieldMidCurrCompY}{\overline{\DispFieldCurrComp}_{\SpatialCoordY}} \newcommand{\StrainSymGradCompXX}{\StrainSymGradComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StrainSymGradCompYY}{\StrainSymGradComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StrainSymGradCompZZ}{\StrainSymGradComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StrainShearComp}{\gamma} \newcommand{\StrainShearCompXY}{\StrainShearComp_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StrainShearCompXZ}{\StrainShearComp_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StrainShearCompYZ}{\StrainShearComp_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\EquationBeamShearStress}{\frac{\StressCauchyResultantForceShear \MomentFirstMass}{\MomentSecondMassDetailed{\SpatialCoordZ}\Width}} \newcommand{\EquationVecInCoords}{\Vec{v} = v_{\SpatialCoordX} \BasisVecI + v_{\SpatialCoordY} \BasisVecJ + v_{\SpatialCoordZ} \BasisVecK} \newcommand{\EquationMatVecMultiply}{\Mat{M}\Vec{v} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Vec{v}} \\ \DotProduct{\Vec{m}_2}{\Vec{v}} \\ \DotProduct{\Vec{m}_3}{\Vec{v}} \end{bmatrix}} \newcommand{\EquationMatMatMultiply}{\Mat{M}\Mat{N} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Mat{n}_1} & \DotProduct{\Vec{m}_1}{\Mat{n}_2} & \DotProduct{\Vec{m}_1}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_2}{\Mat{n}_1} & \DotProduct{\Vec{m}_2}{\Mat{n}_2} & \DotProduct{\Vec{m}_2}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_3}{\Mat{n}_1} & \DotProduct{\Vec{m}_3}{\Mat{n}_2} & \DotProduct{\Vec{m}_3}{\Mat{n}_3} \end{bmatrix}} \newcommand{\Force}{F} \newcommand{\ShearFlow}{f}$$\newcommand{\BaseSymbol}{b} \newcommand{\EmbeddedSymbol}{e} \newcommand{\RefinedSymbol}{r} \newcommand{\HierarchicalSymbol}{\textsf{H}} \newcommand{\BlockSymbol}{\textsf{B}} \newcommand{\BaseModifier}[1]{{#1}_{\BaseSymbol}} \newcommand{\EmbeddedModifier}[1]{{#1}_{\EmbeddedSymbol}} \newcommand{\RefinedModifier}[1]{{#1}_{\RefinedSymbol}} \newcommand{\HierarchicalModifier}[1]{{#1}_{\HierarchicalSymbol}} \newcommand{\BlockModifier}[1]{{#1}_{\BlockSymbol}} \newcommand{\RefinementLevelI}{i} \newcommand{\RefinementLevelJ}{j} \newcommand{\RefinementLevelK}{k} \newcommand{\HighestRefinementLevel}{N} \newcommand{\BaseParentDomain}{\BaseModifier{\ParentDomain}} \newcommand{\RefinedDomain}[1]{\ParamDomain_{#1}} \newcommand{\BaseMesh}{\BaseModifier{\MeshTopo}} \newcommand{\BaseBezierMesh}{\BaseModifier{\MeshBezier}} \newcommand{\EmbeddedMesh}{\EmbeddedModifier{\MeshTopo}} \newcommand{\RefinedMesh}{\RefinedModifier{\MeshTopo}} \newcommand{\RefinedBezierMesh}{\RefinedModifier{\MeshBezier}} \newcommand{\HierarchicalBezierMesh}{\HierarchicalModifier{\MeshBezier}} \newcommand{\HierarchicalUsplineMesh}{\HierarchicalModifier{\MeshUspline}} \newcommand{\RefinementLevelMesh}[1]{\MeshBezier_{#1}} \newcommand{\LeafElemSet}[1]{\Set{L}_{#1}} \newcommand{\ActiveElemSet}[1]{\Set{A}_{#1}} \newcommand{\ActiveBasisFuncs}[1]{\Set{UFA}_{#1}} \newcommand{\UnderRefinedBasisFuncs}[1]{\Set{UFU}_{#1}} \newcommand{\HierarchicalBasisFuncs}{\Set{UFH}} \newcommand{\TruncatedBasisFuncs}{\Set{UFT}} \newcommand{\FuncsTruncatedToLevel}[1]{\Set{TK}_{#1}} \newcommand{\FuncsTouchingActiveFuncs}[1]{\Set{T}_{#1}} \newcommand{\FuncsSubsetOfCoarserFuncs}[1]{\Set{S}_{#1}} \newcommand{\RefinementLevelBasis}[1]{\UsplineBasisFuncSetFunctionOf{\RefinementLevelMesh{#1}}} \newcommand{\RefinementLevelSpace}[1]{\QuantityRelatedTo{\UsplineSpace}{\RefinementLevelMesh{#1}}} \newcommand{\BaseAssociated}{\operatorname{\textsf{base}}} \newcommand{\BaseAssociatedFunctionOf}[1]{\QFO{\BaseAssociated}{#1}} \newcommand{\TruncationOp}[2]{\QFO{\operatorname{\textsf{trunc}}_{#1}}{#2}} \newcommand{\EmbeddedToBaseChart}{\EmbeddedModifier{\ParentDomainChart}} \newcommand{\InvEmbeddedToBaseChart}{(\EmbeddedToBaseChart)^{-1}} \newcommand{\RefinementCoefficients}{c^A_B} \newcommand{\RefinementMat}{\Mat{D}} \newcommand{\NthLevelProlongationMat}[1]{\QSB{\ProlongationMat}{#1}} \newcommand{\NthLevelActiveMat}[1]{\QSB{\Mat{A}}{#1}} \newcommand{\NthLevelRefinementMat}[1]{\QSB{\RefinementMat}{#1}} \newcommand{\NthLevelTruncationMat}[1]{\QSB{\Mat{T}}{#1}} \newcommand{\NthLevelBasisMat}[1]{\QSB{\Mat{S}}{#1}} \newcommand{\NthLevelMassMat}[1]{\QSB{\MassMat}{#1}} \newcommand{\FuncIndex}{\operatorname*{\mathsf{ID}}} \newcommand{\MultiLevelRefinementMat}[2]{\QSB{\RefinementMat}{#1 #2}} \newcommand{\BlockRefinementMat}{\BlockModifier{\RefinementMat}} \newcommand{\BlockMassMat}{\BlockModifier{\MassMat}}$

Note: This feature is under development. The command to enable or disable features under development is:

Set Developer Commands {On|OFF}

Applies to: Curves

Summary: Meshes a curve based on its proximity to nearby geometry and size of nearby geometric features. This is an alpha feature and should be used with caution.

Syntax:

Curve <range> Scheme Featuresize

Related Commands:

Curve <range> Density <density_factor>

Discussion:

The user may also automatically bias the mesh from small elements near complicated geometry to large elements near expanses of simple geometry. Meshing a curve with scheme featuresize places nodes roughly proportional to the distance from the node to a piece of geometry that is foreign to the curve. Foreign means that the geometric entity doesn’t contain the curve, or any of its vertices (i.e. the entity’s intersection with the curve is empty). It is known that featuresize is a continuous function that varies slowly. Featuresize meshing is very automatic and integrated with interval matching. Featuresize meshing works well with paving, and in some cases with structured surface-meshing schemes (map, submap) as well.

If desired, the user may specify the exact or goal number of intervals with a size or interval command, and then the featuresize function will be used to space the nodes.

The featuresize function may also be scaled by the user to produce a finer or coarser mesh using the density command as follows:

Curve <range> Density <density_factor>

The default scaling factor or density is 1. Higher densities also reduce the transition rate of the node spacing. A density of 2 usually gives a good quality mesh. A density below about 0.5 could produce rapid transitions and poor mesh quality. The following shows an example of different density values when using the featuresize scheme.

Figure 575

15.1.6Geometry Tolerant Meshing

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcommand{\CurveCAD}{\CurveRelatedTo{\SymbolCAD}} \newcommand{\CurveCADModified}{\CurveRelatedTo{\SymbolCADModified}} \newcommand{\CurveMesh}{\CurveRelatedTo{\Partition}} \newcommand{\CurveUspline}{\CurveRelatedTo{\MeshUspline}} \newcommand{\dCurve}{\Differential[\Curve]} \newcommand{\PointCAD}{\PointRelatedTo{\SymbolCAD}} \newcommand{\PointCADModified}{\PointRelatedTo{\SymbolCADModified}} \newcommand{\PointUspline}{\PointRelatedTo{\MeshUspline}} \newcommand{\Segment}[1]{\QuantityChildOf{#1}{\SymbolSegment}} \newcommand{\SegmentOfVolumeEnv}{\Segment{\VolumeEnv}} \newcommand{\SegmentOfSurface}{\Segment{\Surface}} \newcommand{\Hex}{\Segment{}_{h}} \newcommand{\Tet}{\Segment{}_{t}} \newcommand{\SegmentParamDomain}[1]{\QuantityRelatedTo{\ParamDomain}{#1}} \newcommand{\SegmentParamDomainOfVolumeEnv}{\QuantityRelatedTo{\ParamDomain}{\Segment{\VolumeEnv}}} \newcommand{\SegmentParamDomainOfSurface}{\QuantityRelatedTo{\ParamDomain}{\Segment{\Surface}}} \newcommand{\SegmentSet}{\SymbolSegmentSet} \newcommand{\SegmentSetFunctionOf}[1]{\QuantityFunctionOf{\SegmentSet}{#1}} \newcommand{\SegmentSetOutside}{\SegmentSet^{\SymbolOutside}} \newcommand{\SegmentSetInside}{\SegmentSet^{\SymbolInside}} \newcommand{\SegmentSetHybrid}{\SegmentSet^{\SymbolHybrid}} \newcommand{\PartitionFunctionOf}[1]{\QuantityFunctionOf{\Partition}{#1}} \newcommand{\PartitionBezierExtraction}[1]{\QuantityFunctionOf{\SymbolPartition^{B}}{#1}} \newcommand{\PartitionTessellation}[1]{\QuantityFunctionOf{\SymbolPartition^{T}}{#1}} \newcommand{\PartitionTessellationOfUspline}{\PartitionTessellation{\MeshUspline}} \newcommand{\PartitionTessellationMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldCoeff}{\SymbolManifoldCoeff} \newcommand{\ManifoldCoeffUpper}{\SymbolManifoldCoeffUpper} \newcommand{\ManifoldCoeffUspline}{\QuantityRelatedTo{\SymbolManifoldCoeffUspline}{\MeshUspline}} \newcommand{\ManifoldCoeffBernstein}{\QuantityRelatedTo{\SymbolManifoldCoeffBernstein}{\MeshBezier}} \newcommand{\ManifoldCoeffVec}{\Vec{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffSet}{\Set{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVec}{\Vec{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVecCell}{\QuantityRelatedTo{\Vec{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsVecUsplineCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsVecSubmeshCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinSegmentOfVolumeEnv}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\SegmentOfVolumeEnv}} \newcommand{\ManifoldCoeffsSet}{\Set{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsSetCell}{\QuantityRelatedTo{\Set{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsSetUsplineCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsSetBernsteinCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsSetSubmeshCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldTemporalMap}[2]{\QuantityRelatedTo{#2}{#1,\SymbolTime}} \newcommand{\ManifoldPartitionMap}{\ManifoldMap{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldCADMap}{\ManifoldMap{\ParamDomainOnCAD}{\Manifold}} \newcommand{\ManifoldCADMapModified}{\ManifoldMap{\ParamDomainOnCADModified}{\Manifold}} \newcommand{\ManifoldBezierMap}{\ManifoldMap{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMap}{\ManifoldMap{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMap}{\ManifoldMap{\ParamDomain}{\Volume}} \newcommand{\SurfaceMap}{\ManifoldMap{\ParamDomainBdry}{\Surface}} \newcommand{\ManifoldMapDef}[2]{\FuncDef{\ManifoldMap{#1}{#2}}{#1}{#2}} \newcommand{\ManifoldMapInverseDef}[2]{\FuncDef{\Inverse{\ManifoldMap{#1}{#2}}}{#2}{#1}} \newcommand{\ManifoldTemporalMapDef}[2]{\FuncDef{\ManifoldTemporalMap{#1}{#2}}{#1\otimes\Reals_{+}}{#2}} \newcommand{\ManifoldPartitionMapDef}{\ManifoldMapDef{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldBezierMapDef}{\ManifoldMapDef{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMapDef}{\ManifoldMapDef{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMapDef}{\ManifoldMapDef{\ParamDomain}{\Volume}} \newcommand{\SurfaceMapDef}{\ManifoldMapDef{\ParamDomainBdry}{\Surface}} \newcommand{\SurfaceToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\Surface}} \newcommand{\ManifoldCoordDetailed}[2]{\QCO{#1}{#2}} \newcommand{\ManifoldCoordVecDetailed}[2]{\QCO{#1}{\Vec{#2}}} \newcommand{\ManifoldCoord}{x} \newcommand{\ManifoldCoordVec}{\Vec{x}} \newcommand{\ManifoldPartitionMapCoord}{\ManifoldCoordDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldPartitionMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoord}{\ManifoldCoordDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\CovariantBasisSurfVec}{\Vec{\SymbolCovariantBasisSurf}} \newcommand{\CovariantBasisVolVec}{\Vec{\SymbolCovariantBasisVol}} \newcommand{\MetricComp}{\SymbolMetric} \newcommand{\MetricTen}{\Mat{\MetricComp}} \newcommand{\CurvatureComp}{\SymbolCurvature} \newcommand{\CurvatureTen}{\Mat{\CurvatureComp}} \newcommand{\CurvCoordIdOne}{\SymbolCurvCoordIdOne} \newcommand{\CurvCoordIdTwo}{\SymbolCurvCoordIdTwo} \newcommand{\CurvCoordIdThree}{\SymbolCurvCoordIdThree} \newcommand{\OrthogonalCoordTransform}{\Mat{\SymbolOrthogonalTransform}} \newcommand{\InversionPointTen}{\Vec{p}} \newcommand{\InversionPointComp}{p} \newcommand{\BoundingVolume}[1]{\QuantityFunctionOf{\Set{bv}}{#1}} \newcommand{\BoundingVolumeSet}[1]{\QuantityFunctionOf{\Set{BV}}{#1}} \newcommand{\BoundingVolumeTree}[1]{\QuantityFunctionOf{\Set{BVH}}{#1}} \newcommand{\AxisAlignedBoundingBox}[1]{\QuantityFunctionOf{\Set{AABB}}{#1}} \newcommand{\AABBCornerLower}{\Vec{c}^l} \newcommand{\AABBCornerLowerComp}{c^l} \newcommand{\AABBCornerUpper}{\Vec{c}^u} \newcommand{\AABBCornerUpperComp}{c^u} \newcommand{\LowerBound}[2]{B^l\left(#1,#2\right)} \newcommand{\UpperBound}[2]{B^u\left(#1,#2\right)} \newcommand{\UpperBoundValue}{U} \newcommand{\UpperBoundValueBV}{U^{\text{BV}}} \newcommand{\UpperBoundValuePoints}{U^{\text{point}}} \newcommand{\GapTolerance}{\varepsilon^{\text{gap}}} \newcommand{\NearestCells}[3][]{\Set{C}_{#1}\left(#2,#3\right)} \newcommand{\BVHNearestGeom}[3][]{c_{#1}\left(#2,#3\right)} \newcommand{\BVHGeomSetOfSets}{\Set{G}} \newcommand{\BVHTessPointSet}{\Set{P}} \newcommand{\BVHBVSet}{\Set{L}} \newcommand{\SimplexMap}[1]{\QuantityFunctionOf{\Mat{L}}{#1}} \newcommand{\ParamCoordVecTarget}{\ParamCoordVecSimple_0} \newcommand{\SpatialCoordVecTarget}{\SpatialCoordVec_0} \newcommand{\SpatialCoordVecToSegmentSetMap}{\SegmentSet^f} \newcommand{\SpatialCoordVecToParamCoordVecSetMap}{\Inverse{\widetilde{\ManifoldMap{\ParamDomainEnv}{\Surface}}}} \newcommand{\HessMatComp}{H} \newcommand{\HessMatTen}{\Mat{\HessMatComp}} \newcommand{\QuadraturePointEnv}[2]{\SymbolEnvModifier{\QuadraturePoint{#1}{#2}}} \newcommand{\QuadraturePoint}[2]{\SymbolQuadraturePoint_{#1}^{#2}} \newcommand{\QuadraturePointToElemIndexMap}[1]{\operatorname{qe}(#1)} \newcommand{\QuadratureWeightEnv}[2]{\SymbolEnvModifier{\QuadratureWeight{#1}{#2}}} \newcommand{\QuadratureWeight}[2]{\SymbolQuadratureWeight_{#1}^{#2}} \newcommand{\QuadratureSet}{\Set{\SymbolQuadratureSet}} \newcommand{\QuadratureSetInside}{\QuadratureSet^{\SymbolInside}} \newcommand{\QuadratureSetOutside}{\QuadratureSet^{\SymbolOutside}} \newcommand{\QuadratureSubdDepth}{k} \newcommand{\ClosestPointMap}[1]{\QuantityChildOf{#1}{\Vec{\SymbolClosestPointMap}}} \newcommand{\ClosestPointMapCAD}{\ClosestPointMap{\SymbolCAD}} \newcommand{\ClosestPointMapCADModified}{\ClosestPointMap{\SymbolCADModified}} \newcommand{\ProjectionInto}[1]{\QuantityRelatedTo{\SymbolProjection}{#1}} \newcommand{\ProjectionIntoBernsteinCell}{\ProjectionInto{\Cell}} \newcommand{\ProjectionIntoBernsteinElem}{\ProjectionInto{\Elem}} \newcommand{\ProjectionIntoMeshBezier}{\ProjectionInto{\MeshBezier}} \newcommand{\ProjectionIntoMeshUspline}{\ProjectionInto{\MeshUspline}} \newcommand{\LinearInterpolationOp}[1]{\QRT{\SymbolLinearInterpolation}{#1}} \newcommand{\Valence}{k} \newcommand{\ArbitraryVector}[1]{\QSB{v}{#1}} \newcommand{\RotationMatrix}[1]{R^{#1}} \newcommand{\RepVecSymbol}{u} \newcommand{\RepVec}[1]{\QSB{\RepVecSymbol}{#1}} \newcommand{\RepVecVec}{\Vec{\RepVecSymbol}} \newcommand{\AlignmentField}{\RepVecVec'} \newcommand{\BiharmonicEnergy}{\QSB{E}{B}} \newcommand{\PrescribedRepVec}[1]{\QSB{d}{#1}} \newcommand{\AlignmentParameter}{\lambda} \newcommand{\SingularityIndex}[1]{\QSB{\chi}{#1}} \newcommand{\AngularDefect}[1]{\QSB{K}{#1}} \newcommand{\ArbitraryAngle}{\theta} \newcommand{\ParallelTransport}[1]{\QSB{\varphi}{#1}} \newcommand{\MinusPiToPi}[1]{\lfloor #1 \rfloor} \newcommand{\AreaOperator}[1]{\QFO{\operatorname{area}}{#1}} \newcommand{\VectorAngle}[1]{\QFO{\operatorname{arg}}{#1}} \newcommand{\DistanceFunction}{\phi} \newcommand{\DistanceGradient}{X} \newcommand{\HeatField}{\eta} \newcommand{\RegionAtZeroDistance}{\gamma}$$\newcommand{\SymbolDisp}{u} \newcommand{\SymbolDispUpper}{U} \newcommand{\SymbolVelocity}{v} \newcommand{\SymbolVelocityUpper}{V} \newcommand{\SymbolAcceleration}{a} \newcommand{\SymbolAccelerationUpper}{A} \newcommand{\SymbolMass}{M} \newcommand{\SymbolLength}{L} \newcommand{\SymbolArea}{A} \newcommand{\SymbolConstraint}{g} \newcommand{\SymbolConstraintUpper}{G} \newcommand{\SymbolPenalty}{\varepsilon} \newcommand{\SymbolLagrangeMultRef}{\Lambda} \newcommand{\SymbolLagrangeMultCurr}{\lambda} \newcommand{\SymbolFict}{f} \newcommand{\SymbolTracForce}{h} \newcommand{\SymbolTracForceUpper}{H} \newcommand{\SymbolBodyForce}{b} \newcommand{\SymbolBodyForceUpper}{B} \newcommand{\SymbolVolumeRef}{\SymbolVolumeUpper} \newcommand{\SymbolSurfaceRef}{\SymbolSurfaceUpper} \newcommand{\SymbolCurveRef}{\SymbolCurveUpper} \newcommand{\SymbolPointRef}{\SymbolPointUpper} \newcommand{\SymbolVolumeCurr}{\SymbolVolume} \newcommand{\SymbolSurfaceCurr}{\SymbolSurface} \newcommand{\SymbolCurveCurr}{\SymbolCurve} \newcommand{\SymbolPointCurr}{\SymbolPoint} \newcommand{\SymbolDeformGradInc}{f} \newcommand{\SymbolDeformGrad}{F} \newcommand{\SymbolStrainGreenLagrange}{E} \newcommand{\SymbolDeformCauchyGreenLeft}{b} \newcommand{\SymbolDeformCauchyGreenRight}{C} \newcommand{\SymbolStrainDisp}{B} \newcommand{\SymbolStrainSymGrad}{\epsilon} \newcommand{\SymbolStrainPlasticEquiv}{\alpha} \newcommand{\SymbolHardeningPlastic}{k} \newcommand{\SymbolYieldFunction}{f} \newcommand{\SymbolConsistencyParameterPlastic}{\gamma} \newcommand{\SymbolPlasticModuliScaling}{\beta} \newcommand{\SymbolYieldSurfaceNormal}{n} \newcommand{\SymbolEnergy}{\Pi} \newcommand{\SymbolEnergyDensityStrain}{\Psi} \newcommand{\SymbolEnergyDensityStrainVol}{U} \newcommand{\SymbolResidual}{R} \newcommand{\SymbolForce}{F} \newcommand{\SymbolStiffness}{K} \newcommand{\SymbolSolution}{d} \newcommand{\ParamDomainBdryDisp}{\ParamDomainBdry^{\SymbolDisp}} \newcommand{\ParamDomainBdryTrac}{\ParamDomainBdry^{\SymbolTracForce}} \newcommand{\VolumeEnvRef}{\Set{\SymbolEnvModifier{\SymbolVolumeRef}}} \newcommand{\VolumeRef}{\Set{\SymbolVolumeRef}} \newcommand{\VolumeRefClosure}{\overline{\VolumeRef}} \newcommand{\VolumeRefFict}{\VolumeEnvRef\setminus\VolumeRef} \newcommand{\dVolumeRef}{\Differential[\VolumeRef]} \newcommand{\VolumeIndicatorDef}{\FuncDef{\VolumeIndicator_{\PenaltyStiffness}}{\VolumeEnvRef}{\Reals_+}} \newcommand{\SurfaceEnvRef}{\Set{\SymbolEnvModifier{\SymbolSurfaceRef}}} \newcommand{\SurfaceRef}{\Set{\SymbolSurfaceRef}} \newcommand{\SurfaceRefWildCard}{\SurfaceRef^{\SymbolWildCard}} \newcommand{\SurfaceRefDisp}{\SurfaceRef^{\SymbolDisp}} \newcommand{\SurfaceRefTrac}{\SurfaceRef^{\SymbolTracForce}} \newcommand{\SurfaceRefFict}{\SurfaceRef^{\SymbolFict}} \newcommand{\SurfaceRefDispExternal}{\SurfaceRefDisp\setminus\SurfaceRefFict} \newcommand{\SurfaceRefTracExternal}{\SurfaceRefTrac\setminus\SurfaceRefFict} \newcommand{\SurfaceRefFictTrac}{\SurfaceRefTrac\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictDisp}{\SurfaceRefDisp\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictExternal}{\SurfaceRefFict\setminus\SurfaceRef} \newcommand{\dSurfaceRef}{\Differential[\SurfaceRef]} \newcommand{\CurveRef}{\Set{\SymbolCurveRef}} \newcommand{\dCurveRef}{\Differential[\CurveRef]} \newcommand{\PointRef}{\Set{\SymbolPointRef}} \newcommand{\PointRefDisp}{\PointRef^{\SymbolDisp}} \newcommand{\PointRefTrac}{\PointRef^{\SymbolTracForce}} \newcommand{\dPointRef}{\Differential[\PointRef]} \newcommand{\dPointRefTrac}{\Differential[\PointRefTrac]} \newcommand{\RefCoord}[1]{\ManifoldCoordDetailed{#1}{X}} \newcommand{\RefCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{X}} \newcommand{\VolumeEnvRefCoord}{\RefCoord{\VolumeEnvRef}} \newcommand{\VolumeEnvRefCoordVec}{\RefCoordVec{\VolumeEnvRef}} \newcommand{\VolumeRefCoord}{\RefCoord{\VolumeRef}} \newcommand{\VolumeRefCoordVec}{\RefCoordVec{\VolumeRef}} \newcommand{\SurfaceRefCoord}{\RefCoord{\SurfaceRef}} \newcommand{\SurfaceRefCoordVec}{\RefCoordVec{\SurfaceRef}} \newcommand{\SurfaceRefDispCoord}{\RefCoord{\SurfaceRefDisp}} \newcommand{\SurfaceRefDispCoordVec}{\RefCoordVec{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracCoord}{\RefCoord{\SurfaceRefTrac}} \newcommand{\SurfaceRefTracCoordVec}{\RefCoordVec{\SurfaceRefTrac}} \newcommand{\CurveRefCoord}{\RefCoord{\CurveRef}} \newcommand{\CurveRefCoordVec}{\RefCoordVec{\CurveRef}} \newcommand{\UsplineBasisFuncOverCurveRef}[1]{\UsplineBasisFuncDetailed{\CurveRef}{#1}} \newcommand{\UsplineBasisFuncOverSurfaceRefDisp}[1]{\UsplineBasisFuncDetailed{\SurfaceRefDisp}{#1}} \newcommand{\VolumeEnvCurr}{\Set{\SymbolEnvModifier{\SymbolVolumeCurr}}} \newcommand{\VolumeCurr}{\Set{\SymbolVolumeCurr}} \newcommand{\VolumeCurrClosure}{\overline{\VolumeCurr}} \newcommand{\dVolumeCurr}{\Differential[\VolumeCurr]} \newcommand{\SurfaceEnvCurr}{\Set{\SymbolEnvModifier{\SymbolSurfaceCurr}}} \newcommand{\SurfaceCurr}{\Set{\SymbolSurfaceCurr}} \newcommand{\SurfaceCurrDisp}{\SurfaceCurr^{\SymbolDisp}} \newcommand{\SurfaceCurrTrac}{\SurfaceCurr^{\SymbolTracForce}} \newcommand{\dSurfaceCurr}{\Differential[\SurfaceCurr]} \newcommand{\CurveCurr}{\Set{\SymbolCurveCurr}} \newcommand{\dCurveCurr}{\Differential[\CurveCurr]} \newcommand{\PointCurr}{\Set{\SymbolPointCurr}} \newcommand{\PointCurrDisp}{\PointCurr^{\SymbolDisp}} \newcommand{\PointCurrTrac}{\PointCurr^{\SymbolTracForce}} \newcommand{\dPointCurr}{\Differential[\PointCurr]} \newcommand{\CurrCoord}[1]{\ManifoldCoordDetailed{#1}{x}} \newcommand{\CurrCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{x}} \newcommand{\VolumeEnvCurrCoord}{\CurrCoord{\VolumeEnvCurr}} \newcommand{\VolumeEnvCurrCoordVec}{\CurrCoordVec{\VolumeEnvCurr}} \newcommand{\VolumeCurrCoord}{\CurrCoord{\VolumeCurr}} \newcommand{\VolumeCurrCoordVec}{\CurrCoordVec{\VolumeCurr}} \newcommand{\SurfaceCurrCoord}{\CurrCoord{\SurfaceCurr}} \newcommand{\SurfaceCurrCoordVec}{\CurrCoordVec{\SurfaceCurr}} \newcommand{\SurfaceCurrDispCoord}{\CurrCoord{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrDispCoordVec}{\CurrCoordVec{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrTracCoord}{\CurrCoord{\SurfaceCurrTrac}} \newcommand{\SurfaceCurrTracCoordVec}{\CurrCoordVec{\SurfaceCurrTrac}} \newcommand{\CurveCurrCoord}{\CurrCoord{\CurveRef}} \newcommand{\CurveCurrCoordVec}{\CurrCoordVec{\CurveRef}} \newcommand{\VolumeEnvRefMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\GenericGradOverVolumeEnvRefMap}[1]{\Grad{\VolumeEnvRefMap}{#1}} \newcommand{\VolumeRefMap}{\ManifoldMap{\ParamDomain}{\VolumeRef}} \newcommand{\GenericGradOverVolumeRefMap}[1]{\Grad{\VolumeRefMap}{#1}} \newcommand{\SurfaceRefDispMap}{\ManifoldMap{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMap}{\ManifoldMap{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\CurveRefMap}{\ManifoldMap{\ParamDomain}{\CurveRef}} \newcommand{\GenericGradOverCurveRefMap}[1]{\Grad{\CurveRefMap}{#1}} \newcommand{\VolumeEnvRefMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\SurfaceRefDispMapDef}{\ManifoldMapDef{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMapDef}{\ManifoldMapDef{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\SurfaceRefToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRef}} \newcommand{\SurfaceRefDispToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefTrac}} \newcommand{\CurveRefMapDef}{\ManifoldMapDef{\ParamDomain}{\CurveRef}} \newcommand{\GenericDeformMap}{\Vec{\varphi}} \newcommand{\VolumeEnvDeformMap}{\ManifoldMap{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\GenericGradOverVolumeEnvDeformMap}[1]{\Grad{\VolumeEnvDeformMap}{#1}} \newcommand{\VolumeDeformMap}{\ManifoldMap{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMap}{\ManifoldTemporalMap{\VolumeRef}{\VolumeCurr}} \newcommand{\GradVolumeDeformTemporalMap}{\GenericGradOverVolumeRefMap{\VolumeDeformTemporalMap}} \newcommand{\SurfaceDeformDispMap}{\ManifoldMap{\SurfaceRefDisp}{\SurfaceCurrDisp}} \newcommand{\SurfaceDeformTracMap}{\ManifoldMap{\SurfaceRefTrac}{\SurfaceCurrTrac}} \newcommand{\CurveDeformMap}{\ManifoldMap{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMap}{\ManifoldTemporalMap{\CurveRef}{\CurveCurr}} \newcommand{\VolumeDeformMapDef}{\ManifoldMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMapDef}{\ManifoldTemporalMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeEnvDeformMapDef}{\ManifoldMapDef{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\CurveDeformMapDef}{\ManifoldMapDef{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMapDef}{\ManifoldTemporalMapDef{\CurveRef}{\CurveCurr}} \newcommand{\DispTrialSpaceOverVolumeEnvRef}{\SpaceHilbert{U}(\VolumeEnvRef)} \newcommand{\DispTestSpaceOverVolumeEnvRef}{\delta \DispTrialSpaceOverVolumeEnvRef} \newcommand{\DispTrialSpaceOverVolumeRef}{\SpaceHilbert{U}(\VolumeRef)} \newcommand{\DispTestSpaceOverVolumeRef}{\delta \DispTrialSpaceOverVolumeRef} \newcommand{\DispTrialSpaceOverCurveRef}{\SpaceHilbert{U}(\CurveRef)} \newcommand{\DispTestSpaceOverCurveRef}{\delta \DispTrialSpaceOverCurveRef} \newcommand{\DispFieldRefComp}{\SymbolDispUpper} \newcommand{\DispFieldRefTen}{\Vec{\DispFieldRefComp}} \newcommand{\DispFieldCurrComp}{\SymbolDisp} \newcommand{\DispFieldCurrTen}{\Vec{\DispFieldCurrComp}} \newcommand{\VelFieldCurrTen}{\Vec{\SymbolVelocity}} \newcommand{\AccFieldCurrTen}{\Vec{\SymbolAcceleration}} \newcommand{\DeformGradComp}{\SymbolDeformGrad} \newcommand{\DeformGradTen}{\Mat{\DeformGradComp}} \newcommand{\DeformGradDet}{\Det{\DeformGradTen}} \newcommand{\KinematicElast}{e} \newcommand{\KinematicPlast}{p} \newcommand{\DivVolumeEnvRef}[1]{\Div{\VolumeEnvRefCoordVec}{#1}} \newcommand{\DivVolumeEnvCurr}[1]{\Div{\VolumeEnvCurrCoordVec}{#1}} \newcommand{\DeformGradIncComp}{\SymbolDeformGradInc} \newcommand{\DeformGradIncTen}{\Mat{\DeformGradIncComp}} \newcommand{\DeformGradIncDevComp}{\bar{\SymbolDeformGradInc}} \newcommand{\DeformGradIncDevTen}{\bar{\Mat{\DeformGradIncComp}}} \newcommand{\JAsDeformGradDet}{J} \newcommand{\StretchTen}{\Mat{V}} \newcommand{\StrainGreenLagrangeComp}{\SymbolStrainGreenLagrange} \newcommand{\StrainGreenLagrangeTen}{\Mat{\StrainGreenLagrangeComp}} \newcommand{\StrainGreenLagrangeVoigt}{\tilde{\StrainGreenLagrangeTen}} \newcommand{\DeformCauchyGreenRightComp}{\SymbolDeformCauchyGreenRight} \newcommand{\DeformCauchyGreenRightTen}{\Mat{\DeformCauchyGreenRightComp}} \newcommand{\DeformCauchyGreenLeftComp}{\SymbolDeformCauchyGreenLeft} \newcommand{\DeformCauchyGreenLeftTen}{\Mat{\DeformCauchyGreenLeftComp}} \newcommand{\DeformCauchyGreenLeftDevComp}{\bar{\SymbolDeformCauchyGreenLeft}} \newcommand{\DeformCauchyGreenLeftDevTen}{\bar{\Mat{\DeformCauchyGreenLeftComp}}} \newcommand{\StrainSymGradComp}{\SymbolStrainSymGrad} \newcommand{\StrainSymGradTen}{\Mat{\StrainSymGradComp}} \newcommand{\StrainDispMat}{\Mat{\SymbolStrainDisp}} \newcommand{\DeformCauchyGreenRightDevComp}{\bar{\SymbolDeformCauchyGreenRight}} \newcommand{\DeformCauchyGreenRightDevTen}{\bar{\Mat{\DeformCauchyGreenRightComp}}} \newcommand{\KinematicElastoplast}{{\rm ep}} \newcommand{\Trial}{{\rm trial}} \newcommand{\DeformCauchyGreenLeftElasticTenDef}{\DeformCauchyGreenLeftTen^\KinematicElast \DefEq \DeformGradTen^\KinematicElast \DeformGradTen^{\KinematicElast T}} \newcommand{\DeformCauchyGreenLeftElasticDevTenDef}{{\DeformCauchyGreenLeftDevTen}^\KinematicElast \DefEq {\JAsDeformGradDet}^{\KinematicElast-\frac{2}{3}} {\DeformCauchyGreenLeftTen}^\KinematicElast} \newcommand{\DeformCauchyGreenRightPlasticTenDef}{\DeformCauchyGreenRightTen^\KinematicPlast \DefEq \DeformGradTen^{\KinematicPlast T} \DeformGradTen^\KinematicPlast} \newcommand{\StrainPlasticEquiv}{\SymbolStrainPlasticEquiv} \newcommand{\ConsistencyParameterPlasticDiscrete}{\Delta \SymbolConsistencyParameterPlastic} \newcommand{\YieldSurfaceNormalComp}{\SymbolYieldSurfaceNormal} \newcommand{\YieldSurfaceNormalTen}{\Mat{\SymbolYieldSurfaceNormal}} \newcommand{\UnitNormalRefComp}{N} \newcommand{\UnitNormalRefTen}{\Vec{\UnitNormalRefComp}} \newcommand{\UnitNormalCurrComp}{\UnitNormalComp} \newcommand{\UnitNormalCurrTen}{\UnitNormal} \newcommand{\DispFieldOverVolumeEnvRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeEnvCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\DispFieldOverVolumeRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeDeformMap}} \newcommand{\DispFieldOverCurveRefTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\DispFieldOverCurveRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DeformGradOverVolumeRefTenDef}{\FuncDef{\DeformGradTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\DeformGradOverCurveRefTenDef}{\FuncDef{\DeformGradTen}{\CurveRef}{\CurveCurr}} \newcommand{\StrainGreenLagrangeOverVolumeEnvRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\StrainGreenLagrangeOverVolumeRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\StrainGreenLagrangeOverCurveRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\CurveRef}{\CurveCurr}} \newcommand{\DeformCauchyGreenLeftTenDef}{\DeformCauchyGreenLeftTen \DefEq \DeformGradTen \DeformGradTen^T} \newcommand{\DeformCauchyGreenLeftDevTenDef}{\DeformCauchyGreenLeftDevTen \DefEq \DeformGradDet^{-\frac{2}{3}} \DeformCauchyGreenLeftTen} \newcommand{\StressPKOneTen}{\Mat{P}} \newcommand{\StressPKTwoComp}{S} \newcommand{\StressPKTwoTen}{\Mat{\StressPKTwoComp}} \newcommand{\StressPKTwoVoigt}{\tilde{\StressPKTwoTen}} \newcommand{\StressCauchyComp}{\sigma} \newcommand{\StressCauchyTen}{\Mat{\sigma}} \newcommand{\StressCauchyVoigt}{\tilde{\StressCauchyTen}} \newcommand{\StressCauchyMean}{p} \newcommand{\StressCauchyYield}{\StressCauchyComp_Y} \newcommand{\StressKirchhoffComp}{\tau} \newcommand{\StressKirchhoffTen}{\Mat{\tau}} \newcommand{\StressKirchhoffVoigt}{\tilde{\StressKirchhoffTen}} \newcommand{\StressKirchhoffDevComp}{s} \newcommand{\StressKirchhoffDevTen}{\Mat{\StressKirchhoffDevComp}} \newcommand{\ModuliElastRefComp}{C} \newcommand{\ModuliElastRefTen}{\Mat{\ModuliElastRefComp}} \newcommand{\ModuliElastRefVoigt}{\tilde{\ModuliElastRefTen}} \newcommand{\ModuliElastCurrComp}{c} \newcommand{\ModuliElastCurrTen}{\Mat{\ModuliElastCurrComp}} \newcommand{\ModuliElastCurrVoigt}{\tilde{\ModuliElastCurrTen}} \newcommand{\MaterialYoungsModulus}{E} \newcommand{\MaterialPoissonsRatio}{\nu} \newcommand{\MaterialMassDensity}{\rho} \newcommand{\MaterialBulkModulus}{\kappa} \newcommand{\MaterialShearModulus}{\mu} \newcommand{\MaterialShearModulusDev}{\bar{\MaterialShearModulus}} \newcommand{\MaterialThermalExpansion}{\alpha_{\text{thermal}}} \newcommand{\Area}{\SymbolArea} \newcommand{\Length}{\SymbolLength} \newcommand{\Width}{b} \newcommand{\Height}{h} \newcommand{\PenaltyStiffness}{\SymbolPenalty_{\SymbolStiffness}} \newcommand{\PenaltyDisp}{\SymbolPenalty_{\SymbolDisp}} \newcommand{\BodyForceRefComp}{\SymbolBodyForceUpper} \newcommand{\BodyForceRefTen}{\Vec{\BodyForceRefComp}} \newcommand{\BodyForceCurrComp}{\SymbolBodyForce} \newcommand{\BodyForceCurrTen}{\Vec{\BodyForceCurrComp}} \newcommand{\TracForceRefComp}{\SymbolTracForceUpper} \newcommand{\TracForceRefTen}{\Vec{\TracForceRefComp}} \newcommand{\TracForceCurrComp}{\SymbolTracForce} \newcommand{\TracForceCurrTen}{\Vec{\TracForceCurrComp}} \newcommand{\Pressure}{p} \newcommand{\BodyForceOverVolumeEnvRefTenDef}{\FuncDef{\BodyForceRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\BodyForceOverCurveRefCompDef}{\FuncDef{\BodyForceRefComp}{\CurveRef}{\Reals}} \newcommand{\BodyForceOverCurveRefTenDef}{\FuncDef{\BodyForceRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\BodyForceOverCurveCurrCompDef}{\BodyForceCurrComp \DefEq \BodyForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\BodyForceOverCurveCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverSurfaceRefTracTenDef}{\FuncDef{\TracForceRefTen}{\SurfaceRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceCurrTracTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\SurfaceDeformTracMap}} \newcommand{\TracForceOverCurveRefCompDef}{\FuncDef{\TracForceRefComp}{\PointRefTrac}{\Reals}} \newcommand{\TracForceOverCurveRefTenDef}{\FuncDef{\TracForceRefTen}{\PointRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverCurveCurrCompDef}{\TracForceCurrComp \DefEq \TracForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverCurveCurrTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\ConstraintRefTen}{\Vec{\SymbolConstraintUpper}} \newcommand{\LagrangeMultTestSpaceOverSurfaceRef}{\delta \LagrangeMultTrialSpaceOverSurfaceRef} \newcommand{\LagrangeMultTrialSpaceOverSurfaceRef}{\SpaceHilbert{L}(\SurfaceRefDisp)} \newcommand{\LagrangeMultRefComp}{\SymbolLagrangeMultRef} \newcommand{\LagrangeMultRefTen}{\Vec{\LagrangeMultRefComp}} \newcommand{\LagrangeMultCurrComp}{\SymbolLagrangeMultCurr} \newcommand{\LagrangeMultCurrTen}{\Vec{\LagrangeMultCurrComp}} \newcommand{\ConstraintOverSurfaceRefDispTenDef}{\FuncDef{\ConstraintRefTen}{\SurfaceRefDisp}{\SpatialDomain}} \newcommand{\LagrangeMultOverSurfaceCurrTenDef}{\LagrangeMultCurrTen \DefEq \LagrangeMultRefTen \circ \Inverse{\SurfaceDeformDispMap}} \newcommand{\Energy}{\SymbolEnergy} \newcommand{\EnergyElastic}[1]{\QFO{\Energy}{#1}} \newcommand{\EnergyElasticNoArg}{\QFONA{\Energy}} \newcommand{\EnergyEnv}{\SymbolEnvModifier{\Energy}} \newcommand{\EnergyInside}{\Energy^{\SymbolInside}} \newcommand{\EnergyOutside}{\Energy^{\SymbolOutside}} \newcommand{\EnergyConstraint}{\Energy^{\LagrangeMultCurrComp}} \newcommand{\EnergyDensityStrain}{\SymbolEnergyDensityStrain} \newcommand{\EnergyDensityStrainVol}{\SymbolEnergyDensityStrainVol} \newcommand{\EnergyDensityStrainDev}{\bar{\SymbolEnergyDensityStrain}} \newcommand{\EnergyInsideOverVolumeEnvRefDef}{\FuncDef{\EnergyInside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyOutsideOverVolumeEnvRefDef}{\FuncDef{\EnergyOutside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefDef}{\FuncDef{\EnergyConstraint}{\DispTrialSpaceOverVolumeEnvRef\TensorProduct\LagrangeMultTrialSpaceOverSurfaceRef}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefDef}{\FuncDef{\EnergyDensityStrain}{\VolumeEnvRef}{\Reals}} \newcommand{\ResidualComp}{\SymbolResidual} \newcommand{\ResidualVec}{\Vec{\ResidualComp}} \newcommand{\ForceVec}{\Vec{\SymbolForce}} \newcommand{\ForceInternalVec}{\ForceVec^{int}} \newcommand{\ForceExternalVec}{\ForceVec^{ext}} \newcommand{\ForceConstraintPenaltyVec}{\ForceVec^{\PenaltyDisp}} \newcommand{\ForceConstraintLagrangeVec}{\ForceVec^{\lambda1}} \newcommand{\ForceConstraintVec}{\ForceVec^{\lambda2}} \newcommand{\StiffnessMat}{\Mat{\SymbolStiffness}} \newcommand{\StiffnessMaterialMat}{\StiffnessMat^{m}} \newcommand{\StiffnessGeometricMat}{\StiffnessMat^{g}} \newcommand{\StiffnessPenaltyMat}{\StiffnessMat^{\PenaltyDisp}} \newcommand{\StiffnessLagrangeMat}{\StiffnessMat^{\LagrangeMultCurrComp}} \newcommand{\MassMat}{\Mat{\SymbolMass}} \newcommand{\LumpedMassMat}{\tilde{\MassMat}} \newcommand{\SolutionComp}{\SymbolSolution} \newcommand{\Solution}{\Vec{\SymbolSolution}} \newcommand{\SolutionDisp}{\Solution^{\DispFieldCurrComp}} \newcommand{\SolutionLagrange}{\Solution^{\LagrangeMultCurrComp}} \newcommand{\Flex}[1]{\mathcal{F}_{#1}} \newcommand{\FlexIt}{\mathcal{F}} \newcommand{\FlexFEA}{\Flex{\bar{0}}} \newcommand{\FlexFEAModified}{\Flex{0}} \newcommand{\FlexOne}{\Flex{1}} \newcommand{\FlexImmersed}{\Flex{\infty}} \newcommand{\FlexInfty}{\mathcal{F}{\infty}} \newcommand{\FlexSpectrum}{\overleftrightarrow{\mathcal{F}}} \newcommand{\FlexSpectrumId}{i} \newcommand{\TimeStep}{\Delta \SymbolTime} \newcommand{\SpectralRadius}{\rho_{\infty}}$$\newcommand{\SymbolPressureContact}{p} \newcommand{\SymbolContactGap}{g} \newcommand{\NumUsplineBasisFuncsS}{\Size{\UsplineBasisFuncSetOnMeshUspline^s}} \newcommand{\NumUsplineBasisFuncsM}{\Size{\UsplineBasisFuncSetOnMeshUspline^m}} \newcommand{\NumUsplineBasisFuncsG}{\Size{\UsplineBasisFuncSetOnMeshUspline^\alpha}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactS}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactS}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactM}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactM}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactG}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactG}}} \newcommand{\ParamDomainEnvS}{\ParamDomainEnv^{s}} \newcommand{\ParamDomainEnvM}{\ParamDomainEnv^{m}} \newcommand{\ParamDomainEnvG}{\ParamDomainEnv^{\alpha}} \newcommand{\ParamDomainS}{\ParamDomain^{s}} \newcommand{\ParamDomainM}{\ParamDomain^{m}} \newcommand{\ParamDomainG}{\ParamDomain^\alpha} \newcommand{\ParamDomainClosureS}{\overline{\ParamDomain}^s} \newcommand{\ParamDomainClosureM}{\overline{\ParamDomain}^m} \newcommand{\ParamDomainClosureG}{\overline{\ParamDomain}^\alpha} \newcommand{\ParamDomainBdryG}{\ParamDomainBdry^\alpha} \newcommand{\ParamDomainBdryContactS}{\ParamDomainBdry^{c,s}} \newcommand{\ParamDomainBdryContactM}{\ParamDomainBdry^{c,m}} \newcommand{\ParamDomainBdryContactG}{\ParamDomainBdry^{c,\alpha}} \newcommand{\ParamDomainBdryTangentComp}{A} \newcommand{\ParamDomainBdryTangentTen}{\Mat{\ParamDomainBdryTangentComp}} \newcommand{\ParamDetJacobianS}{j^s} \newcommand{\ParamDomainGCoordVec}{\ParamCoordVecSimple^{\ParamDomainG}} \newcommand{\ParamDomainGCoord}{\ParamCoordSimple^{\ParamDomainG}} \newcommand{\ParamDomainEnvGCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvGCoord}{\ParamCoordSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvSCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvSCoord}{\ParamCoordSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvMCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainEnvMCoord}{\ParamCoordSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainBdryContactGCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactGCoord}{\ParamCoordSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactSCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactSCoord}{\ParamCoordSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactMCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactM}} \newcommand{\ParamDomainBdryContactMCoord}{\ParamCoordSimple^{\ParamDomainBdryContactM}} \newcommand{\SegmentParamDomainOfVolumeEnvRefS}{\QuantityRelatedTo{\ParamDomainEnvS}{\SegmentOfVolumeEnvRefS}} \newcommand{\SegmentParamDomainOfVolumeEnvRefM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvRefM}} \newcommand{\SegmentParamDomainOfVolumeEnvCurrM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvCurrM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactS}{\QuantityRelatedTo{\ParamDomainBdryContactS}{\SegmentOfSurfaceCurrContactS}} \newcommand{\SegmentParamDomainOfSurfaceRefContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceRefContactM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceCurrContactM}} \newcommand{\UsplineBasisFuncS}{\UsplineBasisFunc^{s}} \newcommand{\UsplineBasisFuncM}{\UsplineBasisFunc^{m}} \newcommand{\UsplineBasisFuncG}{\UsplineBasisFunc^{\alpha}} \newcommand{\UsplineBasisFuncParamDomainBdryContactS}{\UsplineBasisFunc^{\ParamDomainBdryContactS}} \newcommand{\UsplineBasisFuncParamDomainBdryContactM}{\UsplineBasisFunc^{\ParamDomainBdryContactM}} \newcommand{\UsplineBasisFuncParamDomainBdryContactG}{\UsplineBasisFunc^{\ParamDomainBdryContactG}} \newcommand{\UsplineBasisSymmSecondOrderComp}{S} \newcommand{\UsplineBasisSymmSecondOrderTen}{\Mat{\UsplineBasisSymmSecondOrderComp}} \newcommand{\UsplineBasisSymmFourthOrderComp}{E} \newcommand{\UsplineBasisSymmSixthOrderComp}{Z} \newcommand{\VolumeEnvRefG}{\VolumeEnvRef^{\alpha}} \newcommand{\VolumeEnvRefS}{\VolumeEnvRef^{s}} \newcommand{\VolumeEnvRefM}{\VolumeEnvRef^{m}} \newcommand{\VolumeRefG}{\VolumeRef^{\alpha}} \newcommand{\VolumeRefS}{\VolumeRef^{s}} \newcommand{\VolumeRefM}{\VolumeRef^{m}} \newcommand{\VolumeRefClosureG}{\VolumeRefClosure^\alpha} \newcommand{\VolumeRefClosureS}{\VolumeRefClosure^s} \newcommand{\VolumeRefClosureM}{\VolumeRefClosure^m} \newcommand{\SurfaceRefG}{\SurfaceRef^\alpha} \newcommand{\SurfaceRefS}{\SurfaceRef^s} \newcommand{\SurfaceRefM}{\SurfaceRef^m} \newcommand{\SurfaceRefTracG}{\SurfaceRef^{\SymbolTracForce,\alpha}} \newcommand{\SurfaceRefDispG}{\SurfaceRef^{\SymbolDisp,\alpha}} \newcommand{\SurfaceRefContactG}{\SurfaceRef^{c,\alpha}} \newcommand{\SurfaceRefContactS}{\SurfaceRef^{c,s}} \newcommand{\SurfaceRefContactM}{\SurfaceRef^{c,m}} \newcommand{\VolumeEnvRefSCoordVec}{\RefCoordVec{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMCoordVec}{\RefCoordVec{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGCoordVec}{\RefCoordVec{\VolumeEnvRefG}} \newcommand{\VolumeRefGCoordVec}{\RefCoordVec{\VolumeRefG}} \newcommand{\SurfaceRefContactSCoord}{\RefCoord{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactSCoordVec}{\RefCoordVec{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMCoord}{\RefCoord{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactMCoordVec}{\RefCoordVec{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGCoord}{\RefCoord{\SurfaceRefContactG}} \newcommand{\SurfaceRefContactGCoordVec}{\RefCoordVec{\SurfaceRefContactG}} \newcommand{\SurfaceRefDispGCoordVec}{\RefCoordVec{\SurfaceRefDispG}} \newcommand{\SegmentOfVolumeEnvRefS}{\Segment{\VolumeEnvRefS}} \newcommand{\SegmentOfVolumeEnvRefM}{\Segment{\VolumeEnvRefM}} \newcommand{\SegmentOfSurfaceRefContactS}{\Segment{\SurfaceRefContactS}} \newcommand{\SegmentOfSurfaceRefContactM}{\Segment{\SurfaceRefContactM}} \newcommand{\VolumeEnvCurrG}{\VolumeEnvCurr^{\alpha}} \newcommand{\VolumeEnvCurrS}{\VolumeEnvCurr^{s}} \newcommand{\VolumeEnvCurrM}{\VolumeEnvCurr^{m}} \newcommand{\VolumeCurrG}{\VolumeCurr^{\alpha}} \newcommand{\VolumeCurrS}{\VolumeCurr^{s}} \newcommand{\VolumeCurrM}{\VolumeCurr^{m}} \newcommand{\VolumeCurrClosureG}{\VolumeCurrClosure^\alpha} \newcommand{\VolumeCurrClosureS}{\VolumeCurrClosure^s} \newcommand{\VolumeCurrClosureM}{\VolumeCurrClosure^m} \newcommand{\SurfaceCurrG}{\SurfaceCurr^\alpha} \newcommand{\SurfaceCurrS}{\SurfaceCurr^s} \newcommand{\SurfaceCurrM}{\SurfaceCurr^m} \newcommand{\SurfaceCurrContact}{\SurfaceCurr^{c}} \newcommand{\SurfaceCurrContactG}{\SurfaceCurr^{c,\alpha}} \newcommand{\SurfaceCurrContactS}{\SurfaceCurr^{c,s}} \newcommand{\SurfaceCurrContactM}{\SurfaceCurr^{c,m}} \newcommand{\VolumeEnvCurrSCoordVec}{\CurrCoordVec{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMCoordVec}{\CurrCoordVec{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGCoordVec}{\CurrCoordVec{\VolumeEnvCurrG}} \newcommand{\VolumeCurrGCoordVec}{\CurrCoordVec{\VolumeCurrG}} \newcommand{\SurfaceCurrContactSCoord}{\CurrCoord{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactSCoordVec}{\CurrCoordVec{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMCoord}{\CurrCoord{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactMCoordVec}{\CurrCoordVec{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGCoord}{\CurrCoord{\SurfaceCurrContactG}} \newcommand{\SurfaceCurrContactGCoordVec}{\CurrCoordVec{\SurfaceCurrContactG}} \newcommand{\SegmentOfVolumeEnvCurrS}{\Segment{\VolumeEnvCurrS}} \newcommand{\SegmentOfVolumeEnvCurrM}{\Segment{\VolumeEnvCurrM}} \newcommand{\SegmentOfSurfaceCurrContactS}{\Segment{\SurfaceCurrContactS}} \newcommand{\SegmentOfSurfaceCurrContactM}{\Segment{\SurfaceCurrContactM}} \newcommand{\VolumeEnvRefSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeEnvRefSMapInv}{\Inverse{\VolumeEnvRefSMap}} \newcommand{\VolumeEnvRefMMapInv}{\Inverse{\VolumeEnvRefMMap}} \newcommand{\VolumeEnvRefGMapInv}{\Inverse{\VolumeEnvRefGMap}} \newcommand{\VolumeRefClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeRefClosureS}} \newcommand{\VolumeRefClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}} \newcommand{\VolumeRefClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\VolumeRefSMap}{\ManifoldMap{\ParamDomainS}{\VolumeRefS}} \newcommand{\VolumeRefMMap}{\ManifoldMap{\ParamDomainM}{\VolumeRefM}} \newcommand{\VolumeRefGMap}{\ManifoldMap{\ParamDomainG}{\VolumeRefG}} \newcommand{\VolumeRefClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\VolumeRefClosureMMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}\Big|_{\ParamDomainBdryContactM}} \newcommand{\SurfaceRefContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvRefGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeRefClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\SurfaceRefContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvCurrSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeCurrClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeCurrClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeCurrSMap}{\ManifoldMap{\ParamDomainS}{\VolumeCurrS}} \newcommand{\VolumeCurrMMap}{\ManifoldMap{\ParamDomainM}{\VolumeCurrM}} \newcommand{\VolumeCurrGMap}{\ManifoldMap{\ParamDomainG}{\VolumeCurrG}} \newcommand{\VolumeCurrClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\SurfaceCurrContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvCurrGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\SurfaceCurrContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvDeformSMap}{\ManifoldMap{\VolumeEnvRefS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvDeformMMap}{\ManifoldMap{\VolumeEnvRefM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvDeformGMap}{\ManifoldMap{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformSMap}{\ManifoldMap{\VolumeRefClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeDeformMMap}{\ManifoldMap{\VolumeRefClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeDeformGMap}{\ManifoldMap{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeEnvDeformGMapDef}{\ManifoldMapDef{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformGMapDef}{\ManifoldMapDef{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\DispTrialSpaceOverVolumeEnvRefS}{\SpaceHilbert{U}(\VolumeEnvRefS)} \newcommand{\DispTrialSpaceOverVolumeEnvRefM}{\SpaceHilbert{U}(\VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefSAndM}{\SpaceHilbert{U}(\VolumeEnvRefS, \VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefG}{\SpaceHilbert{U}(\VolumeEnvRefG)} \newcommand{\DispTrialSpaceOverVolumeRefS}{\SpaceHilbert{U}(\VolumeRefClosureS)} \newcommand{\DispTrialSpaceOverVolumeRefM}{\SpaceHilbert{U}(\VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefSAndM}{\SpaceHilbert{U}(\VolumeRefClosureS, \VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefG}{\SpaceHilbert{U}(\VolumeRefClosureG)} \newcommand{\DispTestSpaceOverVolumeEnvRefG}{\delta \DispTrialSpaceOverVolumeEnvRefG} \newcommand{\DispTestSpaceOverVolumeRefG}{\delta \DispTrialSpaceOverVolumeRefG} \newcommand{\DispFieldRefSComp}{\DispFieldRefComp^s} \newcommand{\DispFieldRefSTen}{\DispFieldRefTen^s} \newcommand{\DispFieldRefMComp}{\DispFieldRefComp^m} \newcommand{\DispFieldRefMTen}{\DispFieldRefTen^m} \newcommand{\DispFieldRefGTen}{\DispFieldRefTen^\alpha} \newcommand{\DispFieldDiscreteRefGTen}{\DispFieldRefTen^{h,\alpha}} \newcommand{\DispFieldOverVolumeEnvRefGTenDef}{\ManifoldMapDef{\VolumeEnvRefG}{\DispFieldRefGTen}} \newcommand{\DispFieldOverVolumeRefGTenDef}{\ManifoldMapDef{\VolumeRefClosureG}{\DispFieldRefGTen}} \newcommand{\GradVolumeRefG}[1]{\Grad{\RefCoordVec{\VolumeRefClosureG}}{#1}} \newcommand{\GradVolumeEnvRefS}[1]{\Grad{\VolumeEnvRefSCoordVec}{#1}} \newcommand{\GradVolumeEnvRefM}[1]{\Grad{\VolumeEnvRefMCoordVec}{#1}} \newcommand{\GradVolumeEnvRefG}[1]{\Grad{\VolumeEnvRefGCoordVec}{#1}} \newcommand{\DeformGradSComp}{\DeformGradComp^s} \newcommand{\DeformGradSTen}{\DeformGradTen^s} \newcommand{\DeformGradSDet}{\Det{\DeformGradSTen}} \newcommand{\DeformGradSInvTrans}{\InvTrans{\DeformGradSTen}} \newcommand{\DeformGradMComp}{\DeformGradComp^m} \newcommand{\DeformGradMTen}{\DeformGradTen^m} \newcommand{\DeformGradMDet}{\Det{\DeformGradMTen}} \newcommand{\DeformGradMInvTrans}{\InvTrans{\DeformGradMTen}} \newcommand{\DeformGradGTen}{\DeformGradTen^\alpha} \newcommand{\DeformGradOverVolumeEnvRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\DeformGradOverVolumeRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\UnitNormalRefSTen}{\UnitNormalRefTen^s} \newcommand{\UnitNormalRefMTen}{\UnitNormalRefTen^m} \newcommand{\UnitNormalCurrSComp}{\UnitNormalCurrComp^s} \newcommand{\UnitNormalCurrSTen}{\UnitNormalCurrTen^s} \newcommand{\UnitNormalCurrMComp}{\UnitNormalCurrComp^m} \newcommand{\UnitNormalCurrMTen}{\UnitNormalCurrTen^m} \newcommand{\AreaRatioS}{r^s} \newcommand{\AreaRatioM}{r^m} \newcommand{\ContraMTen}{\Mat{a}^m} \newcommand{\SymmProdInProjTan}{C} \newcommand{\ProdPBTanInvCurPBTanInv}{D} \newcommand{\ProdPBTanInvCurMetricInv}{M} \newcommand{\ProdPBTanInvCurMetricInvCurPBTanInv}{W} \newcommand{\PenaltyContactGap}{\SymbolPenalty_{\SymbolContactGap}} \newcommand{\BodyForceRefGTen}{\BodyForceRefTen^\alpha} \newcommand{\TracForceRefGTen}{\TracForceRefTen^\alpha} \newcommand{\BodyForceOverVolumeRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeRefG}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeEnvRefG}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceRefTracGTenDef}{\FuncDef{\TracForceRefGTen}{\SurfaceRefTracG}{\SpatialDomain}} \newcommand{\PressureContact}{\SymbolPressureContact} \newcommand{\PressureContactProjected}{\overline{\SymbolPressureContact}_{\UsplineBasisFuncId}} \newcommand{\CoeffPressureContact}{\SymbolPressureContact_{\UsplineBasisFuncId}} \newcommand{\PressureContactInterpolated}{\hat{\SymbolPressureContact}} \newcommand{\ConstraintRefGTen}{\ConstraintRefTen^\alpha} \newcommand{\GapContact}{\SymbolContactGap} \newcommand{\GapContactProjected}{\overline{\SymbolContactGap}_{\UsplineBasisFuncId}} \newcommand{\GapContactProjectedVariation}{\delta \GapContactProjected} \newcommand{\GapContactMortar}{\GapContact^{m}} \newcommand{\GapContactMortarProjected}{\overline{\GapContact}^{m}_{\UsplineBasisFuncId}} \newcommand{\CoeffGapContactMortar}{\GapContact^{m}_{\UsplineBasisFuncId}} \newcommand{\ConstraintOverSurfaceRefDispGTenDef}{\FuncDef{\ConstraintRefGTen}{\SurfaceRefDispG}{\SpatialDomain}} \newcommand{\EnergyEnvG}{\EnergyEnv^\alpha} \newcommand{\EnergyG}{\Energy^{\alpha}} \newcommand{\EnergyDensityStrainG}{\EnergyDensityStrain^\alpha} \newcommand{\EnergyConstraintG}{\Energy^{\SymbolDisp,\alpha}} \newcommand{\EnergyContact}{\Energy^c} \newcommand{\EnergyOverVolumeRefGDef}{\FuncDef{\EnergyG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyEnvOverVolumeEnvRefGDef}{\FuncDef{\EnergyEnvG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeEnvRefG}{\Reals}} \newcommand{\EnergyContactOverVolumeRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeRefSAndM}{\Reals}} \newcommand{\EnergyContactOverVolumeEnvRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeEnvRefSAndM}{\Reals}} \newcommand{\EnergyConstraintOverVolumeRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\ResidualMat}{\Mat{N}} \newcommand{\ForceInternalContactVec}{\ForceVec^{c,int,n}} \newcommand{\ForceGapContact}{C^n} \newcommand{\StiffnessMatA}{\hat{\Mat{N}}} \newcommand{\StiffnessMatB}{\Mat{T}} \newcommand{\StiffnessMatC}{\Mat{D}} \newcommand{\StiffnessGeometricContact}{\StiffnessMat^{c,g,n}} \newcommand{\StiffnessContact}{\StiffnessMat^{c,n}} \newcommand{\ElemCount}[1]{\operatorname{count}{(#1)}} \newcommand{\ConvexHull}[1]{\operatorname{ch}{\left(#1\right)}} \newcommand{\Normal}[1]{\operatorname{N}{\left(#1\right)}} \newcommand{\NormalConvexHull}[1]{\Normal{\ConvexHull{#1}}} \newcommand{\DiscretePointSetS}{\Set{SP}} \newcommand{\DiscreteElemSetM}{\Set{ME}} \newcommand{\EnvBoundConMapM}{\operatorname{mc}} \newcommand{\EnvBoundConSetM}{\Set{MC}} \newcommand{\SpatialCoordVecToSegmentSetMapMSensor}{\operatorname{cs}} \newcommand{\SpatialCoordVecToSegmentSetMapMElem}{\operatorname{ce}} \newcommand{\SelfContactMap}{\operatorname{sc}} \newcommand{\ColSetS}{\Set{I}} \newcommand{\PairEnvMapBoundM}{\operatorname{cp}} \newcommand{\ApproximateProjectionCollision}[1]{\widetilde{\Projection}{#1}} \newcommand{\ImageSlaveEnv}{\bar{\ParamCoordVecSimple}^{\ParamDomainEnvM}} \newcommand{\ImageSlaveBound}{\bar{\ParamCoordVecSimple}^{\ParamDomainBdryContactM}} \newcommand{\ActiveSet}{\Set{A}} \newcommand{\DiscretePointSetM}{\Set{MP}} \newcommand{\MortarActiveSet}{\Set{A}^m} \newcommand{\PressureContactAnalytical}{p_a} \newcommand{\TipPressureContactAnalytical}{p_0} \newcommand{\ContactHalfWidth}{b}$$\newcommand{\MidGeometryModifier}[1]{\bar{#1}} \newcommand{\SymbolRotationGlobal}{\omega} \newcommand{\SkewMat}[1]{\Mat{s} \left( #1 \right)} \newcommand{\SkewMatInv}[1]{\Mat{s}^{-1} \left( #1 \right)} \newcommand{\Ident}{\Mat{I}} \newcommand{\Cartesian}{\Vec{e}} \newcommand{\ManifoldDim}{n} \newcommand{\LaminaSymbol}{l} \newcommand{\LaminaSymbolUpper}{L} \newcommand{\LaminaMetricSymbol}{j} \newcommand{\ShellMomentSymbol}{q} \newcommand{\DirectorBilinearFunc}[3]{\left(#2,#3\right)_{#1}} \newcommand{\RotObjectiveFunc}{s} \newcommand{\ParamConfig}{\Omega_\xi} \newcommand{\ParamConfigMid}{\Omega_\xi^m} \newcommand{\ParamConfigSec}{\Omega_\xi^s} \newcommand{\ParamConfigBound}{\Gamma_\xi} \newcommand{\ParamConfigMidBound}{\Gamma_\xi^m} \newcommand{\ParamConfigSecBound}{\Gamma_\xi^s} \newcommand{\ParamConfigMuBound}{\Gamma_\xi^\mu} \newcommand{\ParamConfigSigBound}{\Gamma_\xi^\sigma} \newcommand{\ParamConfigDirichMidBound}{\Gamma_\xi^g} \newcommand{\ParamConfigNeuMidBound}{\Gamma_\xi^h} \newcommand{\ParamConfigDirichBound}{\Gamma_\xi^\gamma} \newcommand{\ParamConfigNeuBound}{\Gamma_\xi^\eta} \newcommand{\ParaParam}[1]{\xi_{#1}} \newcommand{\ParaParamVec}{\boldsymbol{\xi}} \newcommand{\RefConfig}{\Omega_0} \newcommand{\RefConfigMid}{\Omega_0^m} \newcommand{\RefConfigSec}{\Omega_0^s} \newcommand{\SurfaceRefRot}{\SurfaceRef^{\SymbolRotationGlobal}} \newcommand{\RefConfigBound}{\Gamma_0} \newcommand{\RefConfigMidBound}{\Gamma_0^m} \newcommand{\RefConfigSecBound}{\Gamma_0^s} \newcommand{\RefConfigMuBound}{\Gamma_0^\mu} \newcommand{\RefConfigSigBound}{\Gamma_0^\sigma} \newcommand{\RefConfigDirichMidBound}{\Gamma_0^g} \newcommand{\RefConfigNeuMidBound}{\Gamma_0^h} \newcommand{\RefConfigDirichBound}{\Gamma_0^\gamma} \newcommand{\RefConfigNeuBound}{\Gamma_0^\eta} \newcommand{\RefMap}{\Vec{X}} \newcommand{\RefMid}{\MidGeometryModifier{\Vec{X}}} \newcommand{\RefDir}{\Vec{D}} \newcommand{\RefSectionPos}{\Vec{R}} \newcommand{\RefCovar}[1]{\Vec{G}_{#1}} \newcommand{\RefMidCovar}[1]{\MidGeometryModifier{\Vec{G}}_{#1}} \newcommand{\RefContra}[1]{\Vec{G}^{#1}} \newcommand{\RefMidContra}[1]{\MidGeometryModifier{\Vec{G}}^{#1}} \newcommand{\RefLamina}[1]{\Vec{L}_{#1}} \newcommand{\RefLaminaDual}[1]{\Vec{\LaminaSymbolUpper}^{#1}} \newcommand{\RefShellProjectedBasis}[1]{\Vec{P}_{#1}} \newcommand{\CurConfig}{\Omega} \newcommand{\CurConfigMid}{\Omega^m} \newcommand{\CurConfigSec}{\Omega^s} \newcommand{\CurConfigBound}{\Gamma} \newcommand{\CurConfigMidBound}{\Gamma^m} \newcommand{\CurConfigSecBound}{\Gamma^s} \newcommand{\CurConfigMuBound}{\Gamma^\mu} \newcommand{\CurConfigSigBound}{\Gamma^\sigma} \newcommand{\CurConfigDirichMidBound}{\Gamma^g} \newcommand{\CurConfigNeuMidBound}{\Gamma^h} \newcommand{\CurConfigDirichBound}{\Gamma^\gamma} \newcommand{\CurConfigNeuBound}{\Gamma^\eta} \newcommand{\CurMap}{\Vec{x}} \newcommand{\CurMid}{\MidGeometryModifier{\Vec{x}}} \newcommand{\CurDir}{\Vec{d}} \newcommand{\CurSectionPos}{\Vec{r}} \newcommand{\CurCovar}[1]{\Vec{g}_{#1}} \newcommand{\CurMidCovar}[1]{\MidGeometryModifier{\Vec{g}}_{#1}} \newcommand{\CurContra}[1]{\Vec{g}^{#1}} \newcommand{\CurMidContra}[1]{\MidGeometryModifier{\Vec{g}}^{#1}} \newcommand{\CurLamina}[1]{\Vec{\LaminaSymbol}_{#1}} \newcommand{\CurLaminaDual}[1]{\Vec{\LaminaSymbol}^{#1}} \newcommand{\CurModLamina}[1]{\hat{\Vec{\LaminaSymbol}}_{#1}} \newcommand{\CurModLaminaDual}[1]{\hat{\Vec{\LaminaSymbol}}^{#1}} \newcommand{\CurShellProjectedBasis}[1]{\Vec{p}_{#1}} \newcommand{\DeformMap}{\varphi} \newcommand{\DeformMapMid}{\varphi^m} \newcommand{\Disp}{\Vec{u}} \newcommand{\DispMid}{\MidGeometryModifier{\Vec{u}}} \newcommand{\RotVec}{\boldsymbol{\omega}} \newcommand{\RotMat}{\boldsymbol{\Lambda}} \newcommand{\RotMatMembrane}{\Mat{\Psi}} \newcommand{\RotMatDelta}{\boldsymbol{\Lambda}_\Delta} \newcommand{\IncRotMat}{\Delta\RotMat} \newcommand{\EulerVec}{\boldsymbol{\vartheta}} \newcommand{\EulerVecNorm}{\theta} \newcommand{\EulerVecSinc}{\boldsymbol{\Theta}} \newcommand{\EulerRotVec}{\boldsymbol{\theta}} \newcommand{\EulerRotAngle}{\theta} \newcommand{\IncEulerRotVec}{\Delta\boldsymbol{\theta}} \newcommand{\AngularVelocity}{\boldsymbol{\eta}} \newcommand{\IncEulerRotVecVel}{\Delta\dot{\boldsymbol{\theta}}} \newcommand{\AngularAcceleration}{\boldsymbol{\alpha}} \newcommand{\IncEulerRotVecAcc}{\Delta\ddot{\boldsymbol{\theta}}} \newcommand{\DeformGrad}{\Mat{F}} \newcommand{\Strain}[1]{\boldsymbol{\tau}_{#1}} \newcommand{\StrainMid}[1]{\boldsymbol{\varepsilon}_{#1}} \newcommand{\StrainCurve}[1]{\boldsymbol{\kappa}_{#1}} \newcommand{\DecompDeform}{\Mat{U}} \newcommand{\ExtraDeformTen}{\Delta\DeformGradTen} \newcommand{\ExtraDeformComp}{\Delta\DeformGradComp} \newcommand{\GreenLagrange}{\Mat{E}} \newcommand{\ShellStrainCurve}[1]{\boldsymbol{\chi}_{#1}} \newcommand{\SecPK}{\Mat{S}} \newcommand{\FirstPK}{\Mat{P}} \newcommand{\Cauchy}{\boldsymbol{\sigma}} \newcommand{\IntTrac}[1]{\Vec{t}_{#1}} \newcommand{\RefModuli}{\Mat{C}} \newcommand{\CurModuli}{\Mat{c}} \newcommand{\PointModuli}{\Mat{m}} \newcommand{\ResModuli}{\Mat{M}} \newcommand{\RefAreaVec}[1]{\Vec{A}_{#1}} \newcommand{\RefAreaMidVec}[1]{\MidGeometryModifier{\Vec{A}}_{#1}} \newcommand{\RefMeas}{G} \newcommand{\UnitNormalRefVec}[1]{\Vec{N}_{#1}} \newcommand{\CurAreaVec}[1]{\Vec{a}_{#1}} \newcommand{\CurAreaMidVec}[1]{\MidGeometryModifier{\Vec{a}}_{#1}} \newcommand{\CurMeas}{g} \newcommand{\UnitNormalCurrVec}[1]{\Vec{n}_{#1}} \newcommand{\CurLaminaMetricTen}{\Mat{\LaminaMetricSymbol}} \newcommand{\CurLaminaMetricComp}{\LaminaMetricSymbol} \newcommand{\CurToModLaminaTransComp}{M} \newcommand{\IntForce}{\Vec{f}^{\, int}} \newcommand{\IntMoment}{\Vec{m}^{int}} \newcommand{\ExtForceBody}{\Vec{f}^{\, ext}_b} \newcommand{\ExtMomentBody}{\Vec{m}^{ext}_b} \newcommand{\ShellExtMomentBody}{\Vec{\ShellMomentSymbol}^{ext}_b} \newcommand{\ExtForceTrac}{\Vec{f}^{\, ext}_h} \newcommand{\ExtMomentTrac}{\Vec{m}^{ext}_h} \newcommand{\ShellExtMomentTrac}{\Vec{\ShellMomentSymbol}^{ext}_h} \newcommand{\MassForce}{\Vec{f}^{\,\rho}} \newcommand{\MassMoment}{\Vec{m}^{\rho}} \newcommand{\ShellMassMoment}{\Vec{\ShellMomentSymbol}^{\rho}} \newcommand{\ResidualInternal}{\Vec{R}^{int}} \newcommand{\ResidualExternal}{\Vec{R}^{ext}} \newcommand{\ResidualMass}{\Mat{R}^{\rho}} \newcommand{\NodalMass}[1]{\Mat{M}_{#1}} \newcommand{\NodalLinearInertia}[1]{A_{#1}} \newcommand{\NodalAngularInertia}[1]{I_{#1}} \newcommand{\ShellDeltaAngle}{\phi} \newcommand{\BStrainMatrix}[2]{\Mat{B}_{#1#2}} \newcommand{\ShellDrillingStiffness}{k} \newcommand{\DrillConstraint}{C} \newcommand{\IntForceDrilling}{\Vec{f}^{d}} \newcommand{\ModuliDrilling}{\Mat{M}^d} \newcommand{\ResidualDrilling}{\Vec{R}^d} \newcommand{\SymbolTop}{top} \newcommand{\SymbolCentroid}{c} \newcommand{\SymbolLeverArm}{r} \newcommand{\SpatialCoordVecCentroid}{\SpatialCoordVec^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidX}{\SpatialCoordX^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidY}{\SpatialCoordY^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidZ}{\SpatialCoordZ^{\SymbolCentroid}} \newcommand{\LeverArm}{\Vec{\SymbolLeverArm}} \newcommand{\LeverArmX}{\SymbolLeverArm_{\SpatialCoordX}} \newcommand{\LeverArmY}{\SymbolLeverArm_{\SpatialCoordY}} \newcommand{\LeverArmZ}{\SymbolLeverArm_{\SpatialCoordZ}} \newcommand{\MomentFirstMass}{Q} \newcommand{\MomentSecondMass}{I} \newcommand{\MomentSecondMassDetailed}[1]{I_{#1}} \newcommand{\DistributedLoad}{q} \newcommand{\TracForceCurrCompX}{\TracForceCurrComp_{\SpatialCoordX}} \newcommand{\TracForceCurrCompY}{\TracForceCurrComp_{\SpatialCoordY}} \newcommand{\TracForceCurrCompZ}{\TracForceCurrComp_{\SpatialCoordZ}} \newcommand{\TracMomentCurrCompDetailed}[1]{\TracMomentCurrComp_{#1}} \newcommand{\TracForceCurrCompSupportReaction}{r^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompSupportReactionDetailed}[1]{\TracForceCurrCompSupportReaction_{#1}} \newcommand{\TracForceCurrCompDistributedLoad}{\DistributedLoad^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompPointLoad}{p^{\TracForceCurrComp}} \newcommand{\TracMomentCurrVec}{\Vec{\TracMomentCurrComp}} \newcommand{\TracMomentCurrComp}{m} \newcommand{\BodyForceCurrCompX}{\BodyForceCurrComp_{\SpatialCoordX}} \newcommand{\BodyForceCurrCompY}{\BodyForceCurrComp_{\SpatialCoordY}} \newcommand{\BodyForceCurrCompZ}{\BodyForceCurrComp_{\SpatialCoordZ}} \newcommand{\BodyForceCurrCompDistributedLoad}{\DistributedLoad^{\BodyForceCurrComp}} \newcommand{\BodyForceCurrCompAxialLoad}{f^{\BodyForceCurrComp}} \newcommand{\StressCauchyTractionVec}{\Vec{t}} \newcommand{\StressCauchyTractionX}{t_{\SpatialCoordX}} \newcommand{\StressCauchyTractionY}{t_{\SpatialCoordY}} \newcommand{\StressCauchyTractionZ}{t_{\SpatialCoordZ}} \newcommand{\StressCauchyNormal}{\sigma} \newcommand{\StressCauchyNormalDetailed}[1]{\StressCauchyNormal_{#1}} \newcommand{\StressCauchyNormalXX}{\StressCauchyComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StressCauchyNormalYY}{\StressCauchyComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StressCauchyNormalZZ}{\StressCauchyComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StressCauchyShear}{\tau} \newcommand{\StressCauchyShearDetailed}[1]{\StressCauchyShear_{#1}} \newcommand{\StressCauchyShearXY}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StressCauchyShearYX}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordX}} \newcommand{\StressCauchyShearXZ}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StressCauchyShearZX}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordX}} \newcommand{\StressCauchyShearYZ}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\StressCauchyShearZY}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordY}} \newcommand{\StressCauchyResultantForce}{F} \newcommand{\StressCauchyResultantForceDetailed}[1]{F_{#1}} \newcommand{\StressCauchyResultantForceVec}{\Vec{\StressCauchyResultantForce}} \newcommand{\StressCauchyResultantMoment}{M} \newcommand{\StressCauchyResultantMomentDetailed}[1]{M_{#1}} \newcommand{\StressCauchyResultantMomentVec}{\Vec{\StressCauchyResultantMoment}} \newcommand{\StressCauchyResultantForceShear}{V} \newcommand{\StressCauchyResultantForceShearDetailed}[1]{V_{#1}} \newcommand{\StressCauchyResultantForceAxial}{\StressCauchyResultantForce} \newcommand{\DispFieldCurrCompX}{\DispFieldCurrComp_{\SpatialCoordX}} \newcommand{\DispFieldCurrCompY}{\DispFieldCurrComp_{\SpatialCoordY}} \newcommand{\DispFieldCurrCompZ}{\DispFieldCurrComp_{\SpatialCoordZ}} \newcommand{\DispFieldMidCurrCompX}{\overline{\DispFieldCurrComp}_{\SpatialCoordX}} \newcommand{\DispFieldMidCurrCompY}{\overline{\DispFieldCurrComp}_{\SpatialCoordY}} \newcommand{\StrainSymGradCompXX}{\StrainSymGradComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StrainSymGradCompYY}{\StrainSymGradComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StrainSymGradCompZZ}{\StrainSymGradComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StrainShearComp}{\gamma} \newcommand{\StrainShearCompXY}{\StrainShearComp_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StrainShearCompXZ}{\StrainShearComp_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StrainShearCompYZ}{\StrainShearComp_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\EquationBeamShearStress}{\frac{\StressCauchyResultantForceShear \MomentFirstMass}{\MomentSecondMassDetailed{\SpatialCoordZ}\Width}} \newcommand{\EquationVecInCoords}{\Vec{v} = v_{\SpatialCoordX} \BasisVecI + v_{\SpatialCoordY} \BasisVecJ + v_{\SpatialCoordZ} \BasisVecK} \newcommand{\EquationMatVecMultiply}{\Mat{M}\Vec{v} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Vec{v}} \\ \DotProduct{\Vec{m}_2}{\Vec{v}} \\ \DotProduct{\Vec{m}_3}{\Vec{v}} \end{bmatrix}} \newcommand{\EquationMatMatMultiply}{\Mat{M}\Mat{N} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Mat{n}_1} & \DotProduct{\Vec{m}_1}{\Mat{n}_2} & \DotProduct{\Vec{m}_1}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_2}{\Mat{n}_1} & \DotProduct{\Vec{m}_2}{\Mat{n}_2} & \DotProduct{\Vec{m}_2}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_3}{\Mat{n}_1} & \DotProduct{\Vec{m}_3}{\Mat{n}_2} & \DotProduct{\Vec{m}_3}{\Mat{n}_3} \end{bmatrix}} \newcommand{\Force}{F} \newcommand{\ShearFlow}{f}$$\newcommand{\BaseSymbol}{b} \newcommand{\EmbeddedSymbol}{e} \newcommand{\RefinedSymbol}{r} \newcommand{\HierarchicalSymbol}{\textsf{H}} \newcommand{\BlockSymbol}{\textsf{B}} \newcommand{\BaseModifier}[1]{{#1}_{\BaseSymbol}} \newcommand{\EmbeddedModifier}[1]{{#1}_{\EmbeddedSymbol}} \newcommand{\RefinedModifier}[1]{{#1}_{\RefinedSymbol}} \newcommand{\HierarchicalModifier}[1]{{#1}_{\HierarchicalSymbol}} \newcommand{\BlockModifier}[1]{{#1}_{\BlockSymbol}} \newcommand{\RefinementLevelI}{i} \newcommand{\RefinementLevelJ}{j} \newcommand{\RefinementLevelK}{k} \newcommand{\HighestRefinementLevel}{N} \newcommand{\BaseParentDomain}{\BaseModifier{\ParentDomain}} \newcommand{\RefinedDomain}[1]{\ParamDomain_{#1}} \newcommand{\BaseMesh}{\BaseModifier{\MeshTopo}} \newcommand{\BaseBezierMesh}{\BaseModifier{\MeshBezier}} \newcommand{\EmbeddedMesh}{\EmbeddedModifier{\MeshTopo}} \newcommand{\RefinedMesh}{\RefinedModifier{\MeshTopo}} \newcommand{\RefinedBezierMesh}{\RefinedModifier{\MeshBezier}} \newcommand{\HierarchicalBezierMesh}{\HierarchicalModifier{\MeshBezier}} \newcommand{\HierarchicalUsplineMesh}{\HierarchicalModifier{\MeshUspline}} \newcommand{\RefinementLevelMesh}[1]{\MeshBezier_{#1}} \newcommand{\LeafElemSet}[1]{\Set{L}_{#1}} \newcommand{\ActiveElemSet}[1]{\Set{A}_{#1}} \newcommand{\ActiveBasisFuncs}[1]{\Set{UFA}_{#1}} \newcommand{\UnderRefinedBasisFuncs}[1]{\Set{UFU}_{#1}} \newcommand{\HierarchicalBasisFuncs}{\Set{UFH}} \newcommand{\TruncatedBasisFuncs}{\Set{UFT}} \newcommand{\FuncsTruncatedToLevel}[1]{\Set{TK}_{#1}} \newcommand{\FuncsTouchingActiveFuncs}[1]{\Set{T}_{#1}} \newcommand{\FuncsSubsetOfCoarserFuncs}[1]{\Set{S}_{#1}} \newcommand{\RefinementLevelBasis}[1]{\UsplineBasisFuncSetFunctionOf{\RefinementLevelMesh{#1}}} \newcommand{\RefinementLevelSpace}[1]{\QuantityRelatedTo{\UsplineSpace}{\RefinementLevelMesh{#1}}} \newcommand{\BaseAssociated}{\operatorname{\textsf{base}}} \newcommand{\BaseAssociatedFunctionOf}[1]{\QFO{\BaseAssociated}{#1}} \newcommand{\TruncationOp}[2]{\QFO{\operatorname{\textsf{trunc}}_{#1}}{#2}} \newcommand{\EmbeddedToBaseChart}{\EmbeddedModifier{\ParentDomainChart}} \newcommand{\InvEmbeddedToBaseChart}{(\EmbeddedToBaseChart)^{-1}} \newcommand{\RefinementCoefficients}{c^A_B} \newcommand{\RefinementMat}{\Mat{D}} \newcommand{\NthLevelProlongationMat}[1]{\QSB{\ProlongationMat}{#1}} \newcommand{\NthLevelActiveMat}[1]{\QSB{\Mat{A}}{#1}} \newcommand{\NthLevelRefinementMat}[1]{\QSB{\RefinementMat}{#1}} \newcommand{\NthLevelTruncationMat}[1]{\QSB{\Mat{T}}{#1}} \newcommand{\NthLevelBasisMat}[1]{\QSB{\Mat{S}}{#1}} \newcommand{\NthLevelMassMat}[1]{\QSB{\MassMat}{#1}} \newcommand{\FuncIndex}{\operatorname*{\mathsf{ID}}} \newcommand{\MultiLevelRefinementMat}[2]{\QSB{\RefinementMat}{#1 #2}} \newcommand{\BlockRefinementMat}{\BlockModifier{\RefinementMat}} \newcommand{\BlockMassMat}{\BlockModifier{\MassMat}}$

Note: This feature is under development. The command to enable or disable features under development is:

Set Developer Commands {On|OFF}

Applies to:Volumes, Surfaces

Mesh Type: Triangle, Tetrahedral, Quadrilateral

Summary:The geometry tolerant meshing algorithm takes a volume and generates a mesh by ignoring small features, gaps, slivers, and surface alignment problems in the geometry.

To create a tolerant mesh:

1. In the Command Line, type set developer commands on (Set Dev On).

2. On the Command Panel, click on Mesh and then Volume.

3. Click on the Tolerant Mesh action button.

4. Select Tolerant Mesh from the drop-down menu.

5. Enter the appropriate values for Volume ID(s). This can also be done using the Pick Widget function.

6. Select Triangle, Tetrahedal or Quadrilateral from the Algorithm mennu.

7. Select FEM, New or Old.

8. Enter the appropriate value for Tolerance Fraction.

9. Click Apply.

Mesh Tolerant Volume <range> {Triangle|Tet|Quadrilateral} {Free} {Fraction <number>} {Fem|New|Old}

To fix or free an entity:

1. In the Command Line, type set developer commands on (Set Dev On).

2. On the Command Panel, click on Mesh and then Volume.

3. Click on the Tolerant Mesh action button.

4. Select Fix/Free Entities from the drop-down menu.

5. Select Fix or Free.

6. Select Volume, Surface, Curve or Vertext from the drop-down menu and enter the appropriate value.

7. Click Apply.

Mesh Tolerant [Fix|Free] [Volume|Surface|Curve|Vertex] <range>

To create a tolerant mesh:

1. In the Command Line, type set developer commands on (Set Dev On).

2. On the Command Panel, click on Mesh and then Volume.

3. Click on the Tolerant Mesh action button.

4. Select Visualize Mesh from the drop-down menu.

5. Enter the appropriate value for Volume ID(s). This can also be done using the Pick Widget function.

6. Click Apply.

Mesh Tolerant Volume <range> Facet

Discussion:

Many geometric assemblies contain imperfections or small features that hinder mesh generation. These imperfections can be caused by excessive detail, data format translation errors, poorly constructed initial models and a variety of other factors. Rather than performing time-consuming geometry operations to remove these features, the geometry tolerant meshing scheme will be "tolerant" of these details, and generate a mesh that ignores features below a certain size threshold. Since there may be features under that threshold which the user desires to retain in the final mesh, there is also the option to "fix" certain geometric features so they are retained in the final mesh.

The basic approach to this method involves using the model’s facet data to create a a loose representation of the geometry using the geometry’s native kernel. This faceted representation is modified to conform to the features of the model which are either "fixed" by the user, or larger than a user-provided size. Small edges are removed from the mesh, and long edges are refined. The final mesh is created by iterating over patches of triangles from the initial mesh, and re-meshing these patches with good quality elements.

15.1.6.1Initial Mesh Size

An initial mesh size must be input by the user before using the geometry tolerant meshing scheme. This initial mesh size is important to the final outcome. If the edge lengths are initially much smaller than the mesh size, the algorithm will have to do significant work to coarsen the mesh. On the other hand, if the mesh edges are too large, the final mesh will either not capture the geometry well, or the geometry information will, later, have to be extracted from the original model. The mesh sizing is set using the regular interval specification methods.

The sizing algorithm will assign a mesh size to each geometry element. The initial faceted mesh will be a loose approximation of these sizes.

15.1.6.2Fixing a Geometric Entity

Before meshing the geometry, the user may wish to specify geometry that will be fixed in the final mesh. A fixed geometric entity is one that should be unchanged by the final mesh. The user may specify a volume, surface, curve, or vertex to fix. After the initial coarse representation is created, the mesh edges that belong to any of these geometric entities will be marked as fixed. One consequence of fixing an entity is that the size of the initial mesh edges that are created by the geometry kernel will be unchanged throughout the rest of the meshing process. If the faceting engine produces small mesh edges in a region, they will remain in the final mesh.

Mesh Tolerant Fix [Volume|Surface|Curve|Vertex] <range>

To reverse the effects of fixing a geometric entity, the user may "free" an entity using the following syntax

Mesh Tolerant Free [Volume|Surface|Curve|Vertex] <range>

15.1.6.3Tolerance Fraction

The user-provided fraction controls which of non-fixed features are large enough to be included in the final mesh. It is possible for the tolerance fraction to be any number greater than zero, but in practice this number is usually less than 1. The fraction can be thought of as the percentage of the mesh size that defines a tolerable feature. After the initial faceted mesh has been created, the algorithm will loop through all of the mesh edges on the entity. Mesh edges which are smaller than the value of the (mesh size)*(tolerance fraction) will be removed if they do not belong to a fixed edge. In addition, each triangle on the surface is compared to the tolerant size to determine if it is too small. The tolerance size for a triangle is the minimum of the tolerance for the vertices. If the altitude of the triangles is shorter than that tolerance, the shortest edge of the triangle is removed. For example, if the following commands were issued:

volume 1 size 0.5
mesh tolerant volume 1 fraction 0.25

the tolerance value in the above example would be 0.5*0.25 or 0.125. Any mesh edges (from the initial faceted representation) that are smaller than 0.125 would be removed, unless fixed. Like the initial mesh size, the choice of an appropriate tolerance fraction for a given mesh size is an important to the final outcome. A larger tolerance fraction will remove more small features and possibly require you to specify more fixed edges explicitly. A smaller tolerance fraction will respect most of the original geometry, but may include features you wish to ignore.

15.1.6.4Creating the tolerant mesh

A typical sequence of events to create a tolerant mesh would be to:

1. Specify a mesh size

2. Determine tolerance fraction

3. Fix geometric entities that have features that are smaller than that mesh size * tolerance fraction using the mesh tolerant fix command

4. Mesh the geometry using the Mesh Tolerant command

The command syntax for the meshing step is shown below

Mesh Tolerant Volume <range> {Triangle|Tet|Quadrilateral} {Free} {Fraction <number>} {Fem|New|Old}

To create just the initial faceted mesh for visualization purposes the following command may also be used

Mesh Tolerant Volume <range> Facet

The geometry tolerant scheme can also handle merged volumes and sheet bodies, and will respect boundary conditions as appropriate.

15.1.6.5Fem/New/Old Options

The FEM/New/Old options refer to how the initial triangle surface mesh is generated. The FEM option will use Cubit’ advancing front trimesh scheme as the initial surface mesh. This is more likely to produce better quality elements, but less likely to succeed in meshing. The new and old options will both create a mesh by using the geometry engine’s facetted representaton. There is a slight variation in how the mesh is created, however. The new option will create the facet mesh for the entire volume using a method that requires no stitching, while the old option will loop over surfaces, assigning sizes and meshing them individually.

15.1.6.6Free Mesh vs. Mesh-Based Geometry

The free option of the tolerant meshing algorithm refers to whether the final mesh is a free mesh, or if it attempts to create new mesh-based geometry to conform to the mesh. If the free option is included, the final mesh will be a free mesh, without any associated geometry. The mesh elements will be automatically placed into a group named ’tolerant_mesh_group’. All surface meshes will be placed in groups named ’mesh_from_surface_<id>’ where <id> refers to the former surface id number. If the free option is omitted, or the "Create Mesh Based Geometry" button on the GUI is checked, the algorithm will create new mesh-based geometry that resides on top of the old geometry and contains the new mesh.

The quadrilateral surface meshing algorithm is based almost entirely on the triangle meshing algorithm. Only a few special steps are requred to have quadrilaterals at the final stage. The target mesh size is initially scaled by a factor of two, resulting in a slightly coarser representation of the original geometry. After the refinement step that makes the edges close to the scaled target size, each edge of the triangle is split one more time, which allows the resulting facets to be grouped into two pairs. Once this pairing has been identified, each pair is considered a quadrilateral, and the paving algorithm is used to create higher quality elements.

Figure 576: A triangle split into 4 triangles can then be paired into two quadrilaterals, the red and green shown on the right.

15.1.6.8Examples

Figure 577: Demonstration of the geometry tolerant meshing algorithm to remove a small groove.

Figure 578: Removal of near-tangency between two curves

In Figure 577, the algorithm correctly detects and resolves a near tangency between two curves. However, the interior mesh edges inside the cylindrical region retain much of their original shape. This causes a slight "bulge" in the cylindrical surface. While this may not be desirable, it is the expected behavior of the algorithm.

Figure 579: Tolerant meshing performed on a simple assembly with pre-merged volumes

Figure 580: Quadrilateral shell mesh generated using geometry tolerant meshing scheme. Note that no hexahedral elements were generated.

15.1.6.9.1Accumulated geometric error

By performing the remeshing step on the original facets, we accumulated discretization error. The original facets are an approximation to the original surfaces, and the new facets are an approximation to the original facets. Because of this, the final mesh may not respect the original geometry, especially in areas of high curvature. However, in many cases this accumulation does not seem prohibitive. Because the facets were created to respect the original shape well, the initial discretization error is usually small.

Figure 581: Accumulation of discretization error in geometry tolerant mesh

15.1.6.9.2Loss of Resolution due to initial faceting

If the initial faceting is coarser than the target mesh size, the refinement step is required to make the edges closer to the target size. However, for this step, we do no have a good way, yet, to maintain the geometry well. More work will be required to determine it is feasible to do this without accumulating additional error.

Figure 582: Poor resolution of geometry due to coarse initial faceting

15.1.6.9.3Surface to Surface proximity

The current approach only removes small features that can be detected by the surface mesh. Since there are no elements filling the interior of the volume, two surfaces that are close (but have no overlapping edges) will not be flagged as small features. Regular geometry manipulation would be required in this case to tweak or remove the surfaces. Figure 583 shows an example of where the algorithm fails to recognize close surfaces as distinct surfaces.

Figure 583: Demonstration of geometry-tolerant meshing algorithm failing to recognize a thin region that has no small edges or facets

15.1.6.9.4Mesh size on fixed geometry entities

If a geometric entity is fixed, the original facet edges on that entity are not collapsed regardless of how small, relative to the target mesh size, they may be. Therefore, in the current approach, there is no mechanism for coarsening the feature mesh edges in these regions.

15.1.7Mesh Cutting

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcommand{\CurveCAD}{\CurveRelatedTo{\SymbolCAD}} \newcommand{\CurveCADModified}{\CurveRelatedTo{\SymbolCADModified}} \newcommand{\CurveMesh}{\CurveRelatedTo{\Partition}} \newcommand{\CurveUspline}{\CurveRelatedTo{\MeshUspline}} \newcommand{\dCurve}{\Differential[\Curve]} \newcommand{\PointCAD}{\PointRelatedTo{\SymbolCAD}} \newcommand{\PointCADModified}{\PointRelatedTo{\SymbolCADModified}} \newcommand{\PointUspline}{\PointRelatedTo{\MeshUspline}} \newcommand{\Segment}[1]{\QuantityChildOf{#1}{\SymbolSegment}} \newcommand{\SegmentOfVolumeEnv}{\Segment{\VolumeEnv}} \newcommand{\SegmentOfSurface}{\Segment{\Surface}} \newcommand{\Hex}{\Segment{}_{h}} \newcommand{\Tet}{\Segment{}_{t}} \newcommand{\SegmentParamDomain}[1]{\QuantityRelatedTo{\ParamDomain}{#1}} \newcommand{\SegmentParamDomainOfVolumeEnv}{\QuantityRelatedTo{\ParamDomain}{\Segment{\VolumeEnv}}} \newcommand{\SegmentParamDomainOfSurface}{\QuantityRelatedTo{\ParamDomain}{\Segment{\Surface}}} \newcommand{\SegmentSet}{\SymbolSegmentSet} \newcommand{\SegmentSetFunctionOf}[1]{\QuantityFunctionOf{\SegmentSet}{#1}} \newcommand{\SegmentSetOutside}{\SegmentSet^{\SymbolOutside}} \newcommand{\SegmentSetInside}{\SegmentSet^{\SymbolInside}} \newcommand{\SegmentSetHybrid}{\SegmentSet^{\SymbolHybrid}} \newcommand{\PartitionFunctionOf}[1]{\QuantityFunctionOf{\Partition}{#1}} \newcommand{\PartitionBezierExtraction}[1]{\QuantityFunctionOf{\SymbolPartition^{B}}{#1}} \newcommand{\PartitionTessellation}[1]{\QuantityFunctionOf{\SymbolPartition^{T}}{#1}} \newcommand{\PartitionTessellationOfUspline}{\PartitionTessellation{\MeshUspline}} \newcommand{\PartitionTessellationMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldCoeff}{\SymbolManifoldCoeff} \newcommand{\ManifoldCoeffUpper}{\SymbolManifoldCoeffUpper} \newcommand{\ManifoldCoeffUspline}{\QuantityRelatedTo{\SymbolManifoldCoeffUspline}{\MeshUspline}} \newcommand{\ManifoldCoeffBernstein}{\QuantityRelatedTo{\SymbolManifoldCoeffBernstein}{\MeshBezier}} \newcommand{\ManifoldCoeffVec}{\Vec{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffSet}{\Set{\SymbolManifoldCoeff}} \newcommand{\ManifoldCoeffSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUspline}}{\MeshUspline}} \newcommand{\ManifoldCoeffSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernstein}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVec}{\Vec{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsVecUspline}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsVecBernstein}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsVecCell}{\QuantityRelatedTo{\Vec{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsVecUsplineCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsVecSubmeshCell}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldCoeffsVecBernsteinSegmentOfVolumeEnv}{\QuantityRelatedTo{\Vec{\SymbolManifoldCoeffBernsteinUpper}}{\SegmentOfVolumeEnv}} \newcommand{\ManifoldCoeffsSet}{\Set{\ManifoldCoeffUpper}} \newcommand{\ManifoldCoeffsSetUspline}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\MeshUspline}} \newcommand{\ManifoldCoeffsSetBernstein}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\MeshBezier}} \newcommand{\ManifoldCoeffsSetCell}{\QuantityRelatedTo{\Set{\ManifoldCoeffUpper}}{\Cell}} \newcommand{\ManifoldCoeffsSetUsplineCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffUsplineUpper}}{\QCO{\MeshUspline}{\Cell}}} \newcommand{\ManifoldCoeffsSetBernsteinCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\MeshBezier}{\Cell}}} \newcommand{\ManifoldCoeffsSetSubmeshCell}{\QuantityRelatedTo{\Set{\SymbolManifoldCoeffBernsteinUpper}}{\QCO{\Submesh}{\Cell}}} \newcommand{\ManifoldMap}[2]{\QuantityRelatedTo{#2}{#1}} \newcommand{\ManifoldTemporalMap}[2]{\QuantityRelatedTo{#2}{#1,\SymbolTime}} \newcommand{\ManifoldPartitionMap}{\ManifoldMap{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldCADMap}{\ManifoldMap{\ParamDomainOnCAD}{\Manifold}} \newcommand{\ManifoldCADMapModified}{\ManifoldMap{\ParamDomainOnCADModified}{\Manifold}} \newcommand{\ManifoldBezierMap}{\ManifoldMap{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMap}{\ManifoldMap{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMap}{\ManifoldMap{\ParamDomain}{\Volume}} \newcommand{\SurfaceMap}{\ManifoldMap{\ParamDomainBdry}{\Surface}} \newcommand{\ManifoldMapDef}[2]{\FuncDef{\ManifoldMap{#1}{#2}}{#1}{#2}} \newcommand{\ManifoldMapInverseDef}[2]{\FuncDef{\Inverse{\ManifoldMap{#1}{#2}}}{#2}{#1}} \newcommand{\ManifoldTemporalMapDef}[2]{\FuncDef{\ManifoldTemporalMap{#1}{#2}}{#1\otimes\Reals_{+}}{#2}} \newcommand{\ManifoldPartitionMapDef}{\ManifoldMapDef{\ParamDomainOnPartition}{\Manifold}} \newcommand{\ManifoldBezierMapDef}{\ManifoldMapDef{\ParamDomainOnMeshBezier}{\Manifold}} \newcommand{\ManifoldUsplineMapDef}{\ManifoldMapDef{\ParamDomainOnMeshUspline}{\Manifold}} \newcommand{\VolumeEnvMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnv}} \newcommand{\VolumeMapDef}{\ManifoldMapDef{\ParamDomain}{\Volume}} \newcommand{\SurfaceMapDef}{\ManifoldMapDef{\ParamDomainBdry}{\Surface}} \newcommand{\SurfaceToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\Surface}} \newcommand{\ManifoldCoordDetailed}[2]{\QCO{#1}{#2}} \newcommand{\ManifoldCoordVecDetailed}[2]{\QCO{#1}{\Vec{#2}}} \newcommand{\ManifoldCoord}{x} \newcommand{\ManifoldCoordVec}{\Vec{x}} \newcommand{\ManifoldPartitionMapCoord}{\ManifoldCoordDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldPartitionMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldPartitionMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoord}{\ManifoldCoordDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\ManifoldCADMapCoordVec}{\ManifoldCoordVecDetailed{\ManifoldCADMap}{\ManifoldCoord}} \newcommand{\CovariantBasisSurfVec}{\Vec{\SymbolCovariantBasisSurf}} \newcommand{\CovariantBasisVolVec}{\Vec{\SymbolCovariantBasisVol}} \newcommand{\MetricComp}{\SymbolMetric} \newcommand{\MetricTen}{\Mat{\MetricComp}} \newcommand{\CurvatureComp}{\SymbolCurvature} \newcommand{\CurvatureTen}{\Mat{\CurvatureComp}} \newcommand{\CurvCoordIdOne}{\SymbolCurvCoordIdOne} \newcommand{\CurvCoordIdTwo}{\SymbolCurvCoordIdTwo} \newcommand{\CurvCoordIdThree}{\SymbolCurvCoordIdThree} \newcommand{\OrthogonalCoordTransform}{\Mat{\SymbolOrthogonalTransform}} \newcommand{\InversionPointTen}{\Vec{p}} \newcommand{\InversionPointComp}{p} \newcommand{\BoundingVolume}[1]{\QuantityFunctionOf{\Set{bv}}{#1}} \newcommand{\BoundingVolumeSet}[1]{\QuantityFunctionOf{\Set{BV}}{#1}} \newcommand{\BoundingVolumeTree}[1]{\QuantityFunctionOf{\Set{BVH}}{#1}} \newcommand{\AxisAlignedBoundingBox}[1]{\QuantityFunctionOf{\Set{AABB}}{#1}} \newcommand{\AABBCornerLower}{\Vec{c}^l} \newcommand{\AABBCornerLowerComp}{c^l} \newcommand{\AABBCornerUpper}{\Vec{c}^u} \newcommand{\AABBCornerUpperComp}{c^u} \newcommand{\LowerBound}[2]{B^l\left(#1,#2\right)} \newcommand{\UpperBound}[2]{B^u\left(#1,#2\right)} \newcommand{\UpperBoundValue}{U} \newcommand{\UpperBoundValueBV}{U^{\text{BV}}} \newcommand{\UpperBoundValuePoints}{U^{\text{point}}} \newcommand{\GapTolerance}{\varepsilon^{\text{gap}}} \newcommand{\NearestCells}[3][]{\Set{C}_{#1}\left(#2,#3\right)} \newcommand{\BVHNearestGeom}[3][]{c_{#1}\left(#2,#3\right)} \newcommand{\BVHGeomSetOfSets}{\Set{G}} \newcommand{\BVHTessPointSet}{\Set{P}} \newcommand{\BVHBVSet}{\Set{L}} \newcommand{\SimplexMap}[1]{\QuantityFunctionOf{\Mat{L}}{#1}} \newcommand{\ParamCoordVecTarget}{\ParamCoordVecSimple_0} \newcommand{\SpatialCoordVecTarget}{\SpatialCoordVec_0} \newcommand{\SpatialCoordVecToSegmentSetMap}{\SegmentSet^f} \newcommand{\SpatialCoordVecToParamCoordVecSetMap}{\Inverse{\widetilde{\ManifoldMap{\ParamDomainEnv}{\Surface}}}} \newcommand{\HessMatComp}{H} \newcommand{\HessMatTen}{\Mat{\HessMatComp}} \newcommand{\QuadraturePointEnv}[2]{\SymbolEnvModifier{\QuadraturePoint{#1}{#2}}} \newcommand{\QuadraturePoint}[2]{\SymbolQuadraturePoint_{#1}^{#2}} \newcommand{\QuadraturePointToElemIndexMap}[1]{\operatorname{qe}(#1)} \newcommand{\QuadratureWeightEnv}[2]{\SymbolEnvModifier{\QuadratureWeight{#1}{#2}}} \newcommand{\QuadratureWeight}[2]{\SymbolQuadratureWeight_{#1}^{#2}} \newcommand{\QuadratureSet}{\Set{\SymbolQuadratureSet}} \newcommand{\QuadratureSetInside}{\QuadratureSet^{\SymbolInside}} \newcommand{\QuadratureSetOutside}{\QuadratureSet^{\SymbolOutside}} \newcommand{\QuadratureSubdDepth}{k} \newcommand{\ClosestPointMap}[1]{\QuantityChildOf{#1}{\Vec{\SymbolClosestPointMap}}} \newcommand{\ClosestPointMapCAD}{\ClosestPointMap{\SymbolCAD}} \newcommand{\ClosestPointMapCADModified}{\ClosestPointMap{\SymbolCADModified}} \newcommand{\ProjectionInto}[1]{\QuantityRelatedTo{\SymbolProjection}{#1}} \newcommand{\ProjectionIntoBernsteinCell}{\ProjectionInto{\Cell}} \newcommand{\ProjectionIntoBernsteinElem}{\ProjectionInto{\Elem}} \newcommand{\ProjectionIntoMeshBezier}{\ProjectionInto{\MeshBezier}} \newcommand{\ProjectionIntoMeshUspline}{\ProjectionInto{\MeshUspline}} \newcommand{\LinearInterpolationOp}[1]{\QRT{\SymbolLinearInterpolation}{#1}} \newcommand{\Valence}{k} \newcommand{\ArbitraryVector}[1]{\QSB{v}{#1}} \newcommand{\RotationMatrix}[1]{R^{#1}} \newcommand{\RepVecSymbol}{u} \newcommand{\RepVec}[1]{\QSB{\RepVecSymbol}{#1}} \newcommand{\RepVecVec}{\Vec{\RepVecSymbol}} \newcommand{\AlignmentField}{\RepVecVec'} \newcommand{\BiharmonicEnergy}{\QSB{E}{B}} \newcommand{\PrescribedRepVec}[1]{\QSB{d}{#1}} \newcommand{\AlignmentParameter}{\lambda} \newcommand{\SingularityIndex}[1]{\QSB{\chi}{#1}} \newcommand{\AngularDefect}[1]{\QSB{K}{#1}} \newcommand{\ArbitraryAngle}{\theta} \newcommand{\ParallelTransport}[1]{\QSB{\varphi}{#1}} \newcommand{\MinusPiToPi}[1]{\lfloor #1 \rfloor} \newcommand{\AreaOperator}[1]{\QFO{\operatorname{area}}{#1}} \newcommand{\VectorAngle}[1]{\QFO{\operatorname{arg}}{#1}} \newcommand{\DistanceFunction}{\phi} \newcommand{\DistanceGradient}{X} \newcommand{\HeatField}{\eta} \newcommand{\RegionAtZeroDistance}{\gamma}$$\newcommand{\SymbolDisp}{u} \newcommand{\SymbolDispUpper}{U} \newcommand{\SymbolVelocity}{v} \newcommand{\SymbolVelocityUpper}{V} \newcommand{\SymbolAcceleration}{a} \newcommand{\SymbolAccelerationUpper}{A} \newcommand{\SymbolMass}{M} \newcommand{\SymbolLength}{L} \newcommand{\SymbolArea}{A} \newcommand{\SymbolConstraint}{g} \newcommand{\SymbolConstraintUpper}{G} \newcommand{\SymbolPenalty}{\varepsilon} \newcommand{\SymbolLagrangeMultRef}{\Lambda} \newcommand{\SymbolLagrangeMultCurr}{\lambda} \newcommand{\SymbolFict}{f} \newcommand{\SymbolTracForce}{h} \newcommand{\SymbolTracForceUpper}{H} \newcommand{\SymbolBodyForce}{b} \newcommand{\SymbolBodyForceUpper}{B} \newcommand{\SymbolVolumeRef}{\SymbolVolumeUpper} \newcommand{\SymbolSurfaceRef}{\SymbolSurfaceUpper} \newcommand{\SymbolCurveRef}{\SymbolCurveUpper} \newcommand{\SymbolPointRef}{\SymbolPointUpper} \newcommand{\SymbolVolumeCurr}{\SymbolVolume} \newcommand{\SymbolSurfaceCurr}{\SymbolSurface} \newcommand{\SymbolCurveCurr}{\SymbolCurve} \newcommand{\SymbolPointCurr}{\SymbolPoint} \newcommand{\SymbolDeformGradInc}{f} \newcommand{\SymbolDeformGrad}{F} \newcommand{\SymbolStrainGreenLagrange}{E} \newcommand{\SymbolDeformCauchyGreenLeft}{b} \newcommand{\SymbolDeformCauchyGreenRight}{C} \newcommand{\SymbolStrainDisp}{B} \newcommand{\SymbolStrainSymGrad}{\epsilon} \newcommand{\SymbolStrainPlasticEquiv}{\alpha} \newcommand{\SymbolHardeningPlastic}{k} \newcommand{\SymbolYieldFunction}{f} \newcommand{\SymbolConsistencyParameterPlastic}{\gamma} \newcommand{\SymbolPlasticModuliScaling}{\beta} \newcommand{\SymbolYieldSurfaceNormal}{n} \newcommand{\SymbolEnergy}{\Pi} \newcommand{\SymbolEnergyDensityStrain}{\Psi} \newcommand{\SymbolEnergyDensityStrainVol}{U} \newcommand{\SymbolResidual}{R} \newcommand{\SymbolForce}{F} \newcommand{\SymbolStiffness}{K} \newcommand{\SymbolSolution}{d} \newcommand{\ParamDomainBdryDisp}{\ParamDomainBdry^{\SymbolDisp}} \newcommand{\ParamDomainBdryTrac}{\ParamDomainBdry^{\SymbolTracForce}} \newcommand{\VolumeEnvRef}{\Set{\SymbolEnvModifier{\SymbolVolumeRef}}} \newcommand{\VolumeRef}{\Set{\SymbolVolumeRef}} \newcommand{\VolumeRefClosure}{\overline{\VolumeRef}} \newcommand{\VolumeRefFict}{\VolumeEnvRef\setminus\VolumeRef} \newcommand{\dVolumeRef}{\Differential[\VolumeRef]} \newcommand{\VolumeIndicatorDef}{\FuncDef{\VolumeIndicator_{\PenaltyStiffness}}{\VolumeEnvRef}{\Reals_+}} \newcommand{\SurfaceEnvRef}{\Set{\SymbolEnvModifier{\SymbolSurfaceRef}}} \newcommand{\SurfaceRef}{\Set{\SymbolSurfaceRef}} \newcommand{\SurfaceRefWildCard}{\SurfaceRef^{\SymbolWildCard}} \newcommand{\SurfaceRefDisp}{\SurfaceRef^{\SymbolDisp}} \newcommand{\SurfaceRefTrac}{\SurfaceRef^{\SymbolTracForce}} \newcommand{\SurfaceRefFict}{\SurfaceRef^{\SymbolFict}} \newcommand{\SurfaceRefDispExternal}{\SurfaceRefDisp\setminus\SurfaceRefFict} \newcommand{\SurfaceRefTracExternal}{\SurfaceRefTrac\setminus\SurfaceRefFict} \newcommand{\SurfaceRefFictTrac}{\SurfaceRefTrac\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictDisp}{\SurfaceRefDisp\cap\SurfaceRefFict} \newcommand{\SurfaceRefFictExternal}{\SurfaceRefFict\setminus\SurfaceRef} \newcommand{\dSurfaceRef}{\Differential[\SurfaceRef]} \newcommand{\CurveRef}{\Set{\SymbolCurveRef}} \newcommand{\dCurveRef}{\Differential[\CurveRef]} \newcommand{\PointRef}{\Set{\SymbolPointRef}} \newcommand{\PointRefDisp}{\PointRef^{\SymbolDisp}} \newcommand{\PointRefTrac}{\PointRef^{\SymbolTracForce}} \newcommand{\dPointRef}{\Differential[\PointRef]} \newcommand{\dPointRefTrac}{\Differential[\PointRefTrac]} \newcommand{\RefCoord}[1]{\ManifoldCoordDetailed{#1}{X}} \newcommand{\RefCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{X}} \newcommand{\VolumeEnvRefCoord}{\RefCoord{\VolumeEnvRef}} \newcommand{\VolumeEnvRefCoordVec}{\RefCoordVec{\VolumeEnvRef}} \newcommand{\VolumeRefCoord}{\RefCoord{\VolumeRef}} \newcommand{\VolumeRefCoordVec}{\RefCoordVec{\VolumeRef}} \newcommand{\SurfaceRefCoord}{\RefCoord{\SurfaceRef}} \newcommand{\SurfaceRefCoordVec}{\RefCoordVec{\SurfaceRef}} \newcommand{\SurfaceRefDispCoord}{\RefCoord{\SurfaceRefDisp}} \newcommand{\SurfaceRefDispCoordVec}{\RefCoordVec{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracCoord}{\RefCoord{\SurfaceRefTrac}} \newcommand{\SurfaceRefTracCoordVec}{\RefCoordVec{\SurfaceRefTrac}} \newcommand{\CurveRefCoord}{\RefCoord{\CurveRef}} \newcommand{\CurveRefCoordVec}{\RefCoordVec{\CurveRef}} \newcommand{\UsplineBasisFuncOverCurveRef}[1]{\UsplineBasisFuncDetailed{\CurveRef}{#1}} \newcommand{\UsplineBasisFuncOverSurfaceRefDisp}[1]{\UsplineBasisFuncDetailed{\SurfaceRefDisp}{#1}} \newcommand{\VolumeEnvCurr}{\Set{\SymbolEnvModifier{\SymbolVolumeCurr}}} \newcommand{\VolumeCurr}{\Set{\SymbolVolumeCurr}} \newcommand{\VolumeCurrClosure}{\overline{\VolumeCurr}} \newcommand{\dVolumeCurr}{\Differential[\VolumeCurr]} \newcommand{\SurfaceEnvCurr}{\Set{\SymbolEnvModifier{\SymbolSurfaceCurr}}} \newcommand{\SurfaceCurr}{\Set{\SymbolSurfaceCurr}} \newcommand{\SurfaceCurrDisp}{\SurfaceCurr^{\SymbolDisp}} \newcommand{\SurfaceCurrTrac}{\SurfaceCurr^{\SymbolTracForce}} \newcommand{\dSurfaceCurr}{\Differential[\SurfaceCurr]} \newcommand{\CurveCurr}{\Set{\SymbolCurveCurr}} \newcommand{\dCurveCurr}{\Differential[\CurveCurr]} \newcommand{\PointCurr}{\Set{\SymbolPointCurr}} \newcommand{\PointCurrDisp}{\PointCurr^{\SymbolDisp}} \newcommand{\PointCurrTrac}{\PointCurr^{\SymbolTracForce}} \newcommand{\dPointCurr}{\Differential[\PointCurr]} \newcommand{\CurrCoord}[1]{\ManifoldCoordDetailed{#1}{x}} \newcommand{\CurrCoordVec}[1]{\ManifoldCoordVecDetailed{#1}{x}} \newcommand{\VolumeEnvCurrCoord}{\CurrCoord{\VolumeEnvCurr}} \newcommand{\VolumeEnvCurrCoordVec}{\CurrCoordVec{\VolumeEnvCurr}} \newcommand{\VolumeCurrCoord}{\CurrCoord{\VolumeCurr}} \newcommand{\VolumeCurrCoordVec}{\CurrCoordVec{\VolumeCurr}} \newcommand{\SurfaceCurrCoord}{\CurrCoord{\SurfaceCurr}} \newcommand{\SurfaceCurrCoordVec}{\CurrCoordVec{\SurfaceCurr}} \newcommand{\SurfaceCurrDispCoord}{\CurrCoord{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrDispCoordVec}{\CurrCoordVec{\SurfaceCurrDisp}} \newcommand{\SurfaceCurrTracCoord}{\CurrCoord{\SurfaceCurrTrac}} \newcommand{\SurfaceCurrTracCoordVec}{\CurrCoordVec{\SurfaceCurrTrac}} \newcommand{\CurveCurrCoord}{\CurrCoord{\CurveRef}} \newcommand{\CurveCurrCoordVec}{\CurrCoordVec{\CurveRef}} \newcommand{\VolumeEnvRefMap}{\ManifoldMap{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\GenericGradOverVolumeEnvRefMap}[1]{\Grad{\VolumeEnvRefMap}{#1}} \newcommand{\VolumeRefMap}{\ManifoldMap{\ParamDomain}{\VolumeRef}} \newcommand{\GenericGradOverVolumeRefMap}[1]{\Grad{\VolumeRefMap}{#1}} \newcommand{\SurfaceRefDispMap}{\ManifoldMap{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMap}{\ManifoldMap{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\CurveRefMap}{\ManifoldMap{\ParamDomain}{\CurveRef}} \newcommand{\GenericGradOverCurveRefMap}[1]{\Grad{\CurveRefMap}{#1}} \newcommand{\VolumeEnvRefMapDef}{\ManifoldMapDef{\ParamDomainEnv}{\VolumeEnvRef}} \newcommand{\SurfaceRefDispMapDef}{\ManifoldMapDef{\ParamDomainBdryDisp}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracMapDef}{\ManifoldMapDef{\ParamDomainBdryTrac}{\SurfaceRefTrac}} \newcommand{\SurfaceRefToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRef}} \newcommand{\SurfaceRefDispToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefDisp}} \newcommand{\SurfaceRefTracToParamDomainEnvMapInverseDef}{\ManifoldMapInverseDef{\ParamDomainEnv}{\SurfaceRefTrac}} \newcommand{\CurveRefMapDef}{\ManifoldMapDef{\ParamDomain}{\CurveRef}} \newcommand{\GenericDeformMap}{\Vec{\varphi}} \newcommand{\VolumeEnvDeformMap}{\ManifoldMap{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\GenericGradOverVolumeEnvDeformMap}[1]{\Grad{\VolumeEnvDeformMap}{#1}} \newcommand{\VolumeDeformMap}{\ManifoldMap{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMap}{\ManifoldTemporalMap{\VolumeRef}{\VolumeCurr}} \newcommand{\GradVolumeDeformTemporalMap}{\GenericGradOverVolumeRefMap{\VolumeDeformTemporalMap}} \newcommand{\SurfaceDeformDispMap}{\ManifoldMap{\SurfaceRefDisp}{\SurfaceCurrDisp}} \newcommand{\SurfaceDeformTracMap}{\ManifoldMap{\SurfaceRefTrac}{\SurfaceCurrTrac}} \newcommand{\CurveDeformMap}{\ManifoldMap{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMap}{\ManifoldTemporalMap{\CurveRef}{\CurveCurr}} \newcommand{\VolumeDeformMapDef}{\ManifoldMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeDeformTemporalMapDef}{\ManifoldTemporalMapDef{\VolumeRef}{\VolumeCurr}} \newcommand{\VolumeEnvDeformMapDef}{\ManifoldMapDef{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\CurveDeformMapDef}{\ManifoldMapDef{\CurveRef}{\CurveCurr}} \newcommand{\CurveDeformTemporalMapDef}{\ManifoldTemporalMapDef{\CurveRef}{\CurveCurr}} \newcommand{\DispTrialSpaceOverVolumeEnvRef}{\SpaceHilbert{U}(\VolumeEnvRef)} \newcommand{\DispTestSpaceOverVolumeEnvRef}{\delta \DispTrialSpaceOverVolumeEnvRef} \newcommand{\DispTrialSpaceOverVolumeRef}{\SpaceHilbert{U}(\VolumeRef)} \newcommand{\DispTestSpaceOverVolumeRef}{\delta \DispTrialSpaceOverVolumeRef} \newcommand{\DispTrialSpaceOverCurveRef}{\SpaceHilbert{U}(\CurveRef)} \newcommand{\DispTestSpaceOverCurveRef}{\delta \DispTrialSpaceOverCurveRef} \newcommand{\DispFieldRefComp}{\SymbolDispUpper} \newcommand{\DispFieldRefTen}{\Vec{\DispFieldRefComp}} \newcommand{\DispFieldCurrComp}{\SymbolDisp} \newcommand{\DispFieldCurrTen}{\Vec{\DispFieldCurrComp}} \newcommand{\VelFieldCurrTen}{\Vec{\SymbolVelocity}} \newcommand{\AccFieldCurrTen}{\Vec{\SymbolAcceleration}} \newcommand{\DeformGradComp}{\SymbolDeformGrad} \newcommand{\DeformGradTen}{\Mat{\DeformGradComp}} \newcommand{\DeformGradDet}{\Det{\DeformGradTen}} \newcommand{\KinematicElast}{e} \newcommand{\KinematicPlast}{p} \newcommand{\DivVolumeEnvRef}[1]{\Div{\VolumeEnvRefCoordVec}{#1}} \newcommand{\DivVolumeEnvCurr}[1]{\Div{\VolumeEnvCurrCoordVec}{#1}} \newcommand{\DeformGradIncComp}{\SymbolDeformGradInc} \newcommand{\DeformGradIncTen}{\Mat{\DeformGradIncComp}} \newcommand{\DeformGradIncDevComp}{\bar{\SymbolDeformGradInc}} \newcommand{\DeformGradIncDevTen}{\bar{\Mat{\DeformGradIncComp}}} \newcommand{\JAsDeformGradDet}{J} \newcommand{\StretchTen}{\Mat{V}} \newcommand{\StrainGreenLagrangeComp}{\SymbolStrainGreenLagrange} \newcommand{\StrainGreenLagrangeTen}{\Mat{\StrainGreenLagrangeComp}} \newcommand{\StrainGreenLagrangeVoigt}{\tilde{\StrainGreenLagrangeTen}} \newcommand{\DeformCauchyGreenRightComp}{\SymbolDeformCauchyGreenRight} \newcommand{\DeformCauchyGreenRightTen}{\Mat{\DeformCauchyGreenRightComp}} \newcommand{\DeformCauchyGreenLeftComp}{\SymbolDeformCauchyGreenLeft} \newcommand{\DeformCauchyGreenLeftTen}{\Mat{\DeformCauchyGreenLeftComp}} \newcommand{\DeformCauchyGreenLeftDevComp}{\bar{\SymbolDeformCauchyGreenLeft}} \newcommand{\DeformCauchyGreenLeftDevTen}{\bar{\Mat{\DeformCauchyGreenLeftComp}}} \newcommand{\StrainSymGradComp}{\SymbolStrainSymGrad} \newcommand{\StrainSymGradTen}{\Mat{\StrainSymGradComp}} \newcommand{\StrainDispMat}{\Mat{\SymbolStrainDisp}} \newcommand{\DeformCauchyGreenRightDevComp}{\bar{\SymbolDeformCauchyGreenRight}} \newcommand{\DeformCauchyGreenRightDevTen}{\bar{\Mat{\DeformCauchyGreenRightComp}}} \newcommand{\KinematicElastoplast}{{\rm ep}} \newcommand{\Trial}{{\rm trial}} \newcommand{\DeformCauchyGreenLeftElasticTenDef}{\DeformCauchyGreenLeftTen^\KinematicElast \DefEq \DeformGradTen^\KinematicElast \DeformGradTen^{\KinematicElast T}} \newcommand{\DeformCauchyGreenLeftElasticDevTenDef}{{\DeformCauchyGreenLeftDevTen}^\KinematicElast \DefEq {\JAsDeformGradDet}^{\KinematicElast-\frac{2}{3}} {\DeformCauchyGreenLeftTen}^\KinematicElast} \newcommand{\DeformCauchyGreenRightPlasticTenDef}{\DeformCauchyGreenRightTen^\KinematicPlast \DefEq \DeformGradTen^{\KinematicPlast T} \DeformGradTen^\KinematicPlast} \newcommand{\StrainPlasticEquiv}{\SymbolStrainPlasticEquiv} \newcommand{\ConsistencyParameterPlasticDiscrete}{\Delta \SymbolConsistencyParameterPlastic} \newcommand{\YieldSurfaceNormalComp}{\SymbolYieldSurfaceNormal} \newcommand{\YieldSurfaceNormalTen}{\Mat{\SymbolYieldSurfaceNormal}} \newcommand{\UnitNormalRefComp}{N} \newcommand{\UnitNormalRefTen}{\Vec{\UnitNormalRefComp}} \newcommand{\UnitNormalCurrComp}{\UnitNormalComp} \newcommand{\UnitNormalCurrTen}{\UnitNormal} \newcommand{\DispFieldOverVolumeEnvRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeEnvCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\DispFieldOverVolumeRefTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\VolumeRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DispFieldOverVolumeCurrTenDef}{\DispFieldCurrTen \DefEq \DispFieldRefTen \circ \Inverse{\VolumeDeformMap}} \newcommand{\DispFieldOverCurveRefTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\DispFieldOverCurveRefTemporalTenDef}{\FuncDef{\DispFieldRefTen}{\CurveRef\otimes\SymbolTime}{\SpatialDomain}} \newcommand{\DeformGradOverVolumeRefTenDef}{\FuncDef{\DeformGradTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\DeformGradOverCurveRefTenDef}{\FuncDef{\DeformGradTen}{\CurveRef}{\CurveCurr}} \newcommand{\StrainGreenLagrangeOverVolumeEnvRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeEnvRef}{\VolumeEnvCurr}} \newcommand{\StrainGreenLagrangeOverVolumeRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\VolumeRef}{\VolumeCurr}} \newcommand{\StrainGreenLagrangeOverCurveRefTenDef}{\FuncDef{\StrainGreenLagrangeTen}{\CurveRef}{\CurveCurr}} \newcommand{\DeformCauchyGreenLeftTenDef}{\DeformCauchyGreenLeftTen \DefEq \DeformGradTen \DeformGradTen^T} \newcommand{\DeformCauchyGreenLeftDevTenDef}{\DeformCauchyGreenLeftDevTen \DefEq \DeformGradDet^{-\frac{2}{3}} \DeformCauchyGreenLeftTen} \newcommand{\StressPKOneTen}{\Mat{P}} \newcommand{\StressPKTwoComp}{S} \newcommand{\StressPKTwoTen}{\Mat{\StressPKTwoComp}} \newcommand{\StressPKTwoVoigt}{\tilde{\StressPKTwoTen}} \newcommand{\StressCauchyComp}{\sigma} \newcommand{\StressCauchyTen}{\Mat{\sigma}} \newcommand{\StressCauchyVoigt}{\tilde{\StressCauchyTen}} \newcommand{\StressCauchyMean}{p} \newcommand{\StressCauchyYield}{\StressCauchyComp_Y} \newcommand{\StressKirchhoffComp}{\tau} \newcommand{\StressKirchhoffTen}{\Mat{\tau}} \newcommand{\StressKirchhoffVoigt}{\tilde{\StressKirchhoffTen}} \newcommand{\StressKirchhoffDevComp}{s} \newcommand{\StressKirchhoffDevTen}{\Mat{\StressKirchhoffDevComp}} \newcommand{\ModuliElastRefComp}{C} \newcommand{\ModuliElastRefTen}{\Mat{\ModuliElastRefComp}} \newcommand{\ModuliElastRefVoigt}{\tilde{\ModuliElastRefTen}} \newcommand{\ModuliElastCurrComp}{c} \newcommand{\ModuliElastCurrTen}{\Mat{\ModuliElastCurrComp}} \newcommand{\ModuliElastCurrVoigt}{\tilde{\ModuliElastCurrTen}} \newcommand{\MaterialYoungsModulus}{E} \newcommand{\MaterialPoissonsRatio}{\nu} \newcommand{\MaterialMassDensity}{\rho} \newcommand{\MaterialBulkModulus}{\kappa} \newcommand{\MaterialShearModulus}{\mu} \newcommand{\MaterialShearModulusDev}{\bar{\MaterialShearModulus}} \newcommand{\MaterialThermalExpansion}{\alpha_{\text{thermal}}} \newcommand{\Area}{\SymbolArea} \newcommand{\Length}{\SymbolLength} \newcommand{\Width}{b} \newcommand{\Height}{h} \newcommand{\PenaltyStiffness}{\SymbolPenalty_{\SymbolStiffness}} \newcommand{\PenaltyDisp}{\SymbolPenalty_{\SymbolDisp}} \newcommand{\BodyForceRefComp}{\SymbolBodyForceUpper} \newcommand{\BodyForceRefTen}{\Vec{\BodyForceRefComp}} \newcommand{\BodyForceCurrComp}{\SymbolBodyForce} \newcommand{\BodyForceCurrTen}{\Vec{\BodyForceCurrComp}} \newcommand{\TracForceRefComp}{\SymbolTracForceUpper} \newcommand{\TracForceRefTen}{\Vec{\TracForceRefComp}} \newcommand{\TracForceCurrComp}{\SymbolTracForce} \newcommand{\TracForceCurrTen}{\Vec{\TracForceCurrComp}} \newcommand{\Pressure}{p} \newcommand{\BodyForceOverVolumeEnvRefTenDef}{\FuncDef{\BodyForceRefTen}{\VolumeEnvRef}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\VolumeEnvDeformMap}} \newcommand{\BodyForceOverCurveRefCompDef}{\FuncDef{\BodyForceRefComp}{\CurveRef}{\Reals}} \newcommand{\BodyForceOverCurveRefTenDef}{\FuncDef{\BodyForceRefTen}{\CurveRef}{\SpatialDomain}} \newcommand{\BodyForceOverCurveCurrCompDef}{\BodyForceCurrComp \DefEq \BodyForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\BodyForceOverCurveCurrTenDef}{\BodyForceCurrTen \DefEq \BodyForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverSurfaceRefTracTenDef}{\FuncDef{\TracForceRefTen}{\SurfaceRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceCurrTracTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\SurfaceDeformTracMap}} \newcommand{\TracForceOverCurveRefCompDef}{\FuncDef{\TracForceRefComp}{\PointRefTrac}{\Reals}} \newcommand{\TracForceOverCurveRefTenDef}{\FuncDef{\TracForceRefTen}{\PointRefTrac}{\SpatialDomain}} \newcommand{\TracForceOverCurveCurrCompDef}{\TracForceCurrComp \DefEq \TracForceRefComp \circ \Inverse{\CurveDeformMap}} \newcommand{\TracForceOverCurveCurrTenDef}{\TracForceCurrTen \DefEq \TracForceRefTen \circ \Inverse{\CurveDeformMap}} \newcommand{\ConstraintRefTen}{\Vec{\SymbolConstraintUpper}} \newcommand{\LagrangeMultTestSpaceOverSurfaceRef}{\delta \LagrangeMultTrialSpaceOverSurfaceRef} \newcommand{\LagrangeMultTrialSpaceOverSurfaceRef}{\SpaceHilbert{L}(\SurfaceRefDisp)} \newcommand{\LagrangeMultRefComp}{\SymbolLagrangeMultRef} \newcommand{\LagrangeMultRefTen}{\Vec{\LagrangeMultRefComp}} \newcommand{\LagrangeMultCurrComp}{\SymbolLagrangeMultCurr} \newcommand{\LagrangeMultCurrTen}{\Vec{\LagrangeMultCurrComp}} \newcommand{\ConstraintOverSurfaceRefDispTenDef}{\FuncDef{\ConstraintRefTen}{\SurfaceRefDisp}{\SpatialDomain}} \newcommand{\LagrangeMultOverSurfaceCurrTenDef}{\LagrangeMultCurrTen \DefEq \LagrangeMultRefTen \circ \Inverse{\SurfaceDeformDispMap}} \newcommand{\Energy}{\SymbolEnergy} \newcommand{\EnergyElastic}[1]{\QFO{\Energy}{#1}} \newcommand{\EnergyElasticNoArg}{\QFONA{\Energy}} \newcommand{\EnergyEnv}{\SymbolEnvModifier{\Energy}} \newcommand{\EnergyInside}{\Energy^{\SymbolInside}} \newcommand{\EnergyOutside}{\Energy^{\SymbolOutside}} \newcommand{\EnergyConstraint}{\Energy^{\LagrangeMultCurrComp}} \newcommand{\EnergyDensityStrain}{\SymbolEnergyDensityStrain} \newcommand{\EnergyDensityStrainVol}{\SymbolEnergyDensityStrainVol} \newcommand{\EnergyDensityStrainDev}{\bar{\SymbolEnergyDensityStrain}} \newcommand{\EnergyInsideOverVolumeEnvRefDef}{\FuncDef{\EnergyInside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyOutsideOverVolumeEnvRefDef}{\FuncDef{\EnergyOutside}{\DispTrialSpaceOverVolumeEnvRef}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefDef}{\FuncDef{\EnergyConstraint}{\DispTrialSpaceOverVolumeEnvRef\TensorProduct\LagrangeMultTrialSpaceOverSurfaceRef}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefDef}{\FuncDef{\EnergyDensityStrain}{\VolumeEnvRef}{\Reals}} \newcommand{\ResidualComp}{\SymbolResidual} \newcommand{\ResidualVec}{\Vec{\ResidualComp}} \newcommand{\ForceVec}{\Vec{\SymbolForce}} \newcommand{\ForceInternalVec}{\ForceVec^{int}} \newcommand{\ForceExternalVec}{\ForceVec^{ext}} \newcommand{\ForceConstraintPenaltyVec}{\ForceVec^{\PenaltyDisp}} \newcommand{\ForceConstraintLagrangeVec}{\ForceVec^{\lambda1}} \newcommand{\ForceConstraintVec}{\ForceVec^{\lambda2}} \newcommand{\StiffnessMat}{\Mat{\SymbolStiffness}} \newcommand{\StiffnessMaterialMat}{\StiffnessMat^{m}} \newcommand{\StiffnessGeometricMat}{\StiffnessMat^{g}} \newcommand{\StiffnessPenaltyMat}{\StiffnessMat^{\PenaltyDisp}} \newcommand{\StiffnessLagrangeMat}{\StiffnessMat^{\LagrangeMultCurrComp}} \newcommand{\MassMat}{\Mat{\SymbolMass}} \newcommand{\LumpedMassMat}{\tilde{\MassMat}} \newcommand{\SolutionComp}{\SymbolSolution} \newcommand{\Solution}{\Vec{\SymbolSolution}} \newcommand{\SolutionDisp}{\Solution^{\DispFieldCurrComp}} \newcommand{\SolutionLagrange}{\Solution^{\LagrangeMultCurrComp}} \newcommand{\Flex}[1]{\mathcal{F}_{#1}} \newcommand{\FlexIt}{\mathcal{F}} \newcommand{\FlexFEA}{\Flex{\bar{0}}} \newcommand{\FlexFEAModified}{\Flex{0}} \newcommand{\FlexOne}{\Flex{1}} \newcommand{\FlexImmersed}{\Flex{\infty}} \newcommand{\FlexInfty}{\mathcal{F}{\infty}} \newcommand{\FlexSpectrum}{\overleftrightarrow{\mathcal{F}}} \newcommand{\FlexSpectrumId}{i} \newcommand{\TimeStep}{\Delta \SymbolTime} \newcommand{\SpectralRadius}{\rho_{\infty}}$$\newcommand{\SymbolPressureContact}{p} \newcommand{\SymbolContactGap}{g} \newcommand{\NumUsplineBasisFuncsS}{\Size{\UsplineBasisFuncSetOnMeshUspline^s}} \newcommand{\NumUsplineBasisFuncsM}{\Size{\UsplineBasisFuncSetOnMeshUspline^m}} \newcommand{\NumUsplineBasisFuncsG}{\Size{\UsplineBasisFuncSetOnMeshUspline^\alpha}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactS}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactS}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactM}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactM}}} \newcommand{\NumUsplineBasisFuncsParamDomainBdryContactG}{\Size{\UsplineBasisFuncSetOnMeshUspline^{\ParamDomainBdryContactG}}} \newcommand{\ParamDomainEnvS}{\ParamDomainEnv^{s}} \newcommand{\ParamDomainEnvM}{\ParamDomainEnv^{m}} \newcommand{\ParamDomainEnvG}{\ParamDomainEnv^{\alpha}} \newcommand{\ParamDomainS}{\ParamDomain^{s}} \newcommand{\ParamDomainM}{\ParamDomain^{m}} \newcommand{\ParamDomainG}{\ParamDomain^\alpha} \newcommand{\ParamDomainClosureS}{\overline{\ParamDomain}^s} \newcommand{\ParamDomainClosureM}{\overline{\ParamDomain}^m} \newcommand{\ParamDomainClosureG}{\overline{\ParamDomain}^\alpha} \newcommand{\ParamDomainBdryG}{\ParamDomainBdry^\alpha} \newcommand{\ParamDomainBdryContactS}{\ParamDomainBdry^{c,s}} \newcommand{\ParamDomainBdryContactM}{\ParamDomainBdry^{c,m}} \newcommand{\ParamDomainBdryContactG}{\ParamDomainBdry^{c,\alpha}} \newcommand{\ParamDomainBdryTangentComp}{A} \newcommand{\ParamDomainBdryTangentTen}{\Mat{\ParamDomainBdryTangentComp}} \newcommand{\ParamDetJacobianS}{j^s} \newcommand{\ParamDomainGCoordVec}{\ParamCoordVecSimple^{\ParamDomainG}} \newcommand{\ParamDomainGCoord}{\ParamCoordSimple^{\ParamDomainG}} \newcommand{\ParamDomainEnvGCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvGCoord}{\ParamCoordSimple^{\ParamDomainEnvG}} \newcommand{\ParamDomainEnvSCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvSCoord}{\ParamCoordSimple^{\ParamDomainEnvS}} \newcommand{\ParamDomainEnvMCoordVec}{\ParamCoordVecSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainEnvMCoord}{\ParamCoordSimple^{\ParamDomainEnvM}} \newcommand{\ParamDomainBdryContactGCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactGCoord}{\ParamCoordSimple^{\ParamDomainBdryContactG}} \newcommand{\ParamDomainBdryContactSCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactSCoord}{\ParamCoordSimple^{\ParamDomainBdryContactS}} \newcommand{\ParamDomainBdryContactMCoordVec}{\ParamCoordVecSimple^{\ParamDomainBdryContactM}} \newcommand{\ParamDomainBdryContactMCoord}{\ParamCoordSimple^{\ParamDomainBdryContactM}} \newcommand{\SegmentParamDomainOfVolumeEnvRefS}{\QuantityRelatedTo{\ParamDomainEnvS}{\SegmentOfVolumeEnvRefS}} \newcommand{\SegmentParamDomainOfVolumeEnvRefM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvRefM}} \newcommand{\SegmentParamDomainOfVolumeEnvCurrM}{\QuantityRelatedTo{\ParamDomainEnvM}{\SegmentOfVolumeEnvCurrM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactS}{\QuantityRelatedTo{\ParamDomainBdryContactS}{\SegmentOfSurfaceCurrContactS}} \newcommand{\SegmentParamDomainOfSurfaceRefContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceRefContactM}} \newcommand{\SegmentParamDomainOfSurfaceCurrContactM}{\QuantityRelatedTo{\ParamDomainBdryContactM}{\SegmentOfSurfaceCurrContactM}} \newcommand{\UsplineBasisFuncS}{\UsplineBasisFunc^{s}} \newcommand{\UsplineBasisFuncM}{\UsplineBasisFunc^{m}} \newcommand{\UsplineBasisFuncG}{\UsplineBasisFunc^{\alpha}} \newcommand{\UsplineBasisFuncParamDomainBdryContactS}{\UsplineBasisFunc^{\ParamDomainBdryContactS}} \newcommand{\UsplineBasisFuncParamDomainBdryContactM}{\UsplineBasisFunc^{\ParamDomainBdryContactM}} \newcommand{\UsplineBasisFuncParamDomainBdryContactG}{\UsplineBasisFunc^{\ParamDomainBdryContactG}} \newcommand{\UsplineBasisSymmSecondOrderComp}{S} \newcommand{\UsplineBasisSymmSecondOrderTen}{\Mat{\UsplineBasisSymmSecondOrderComp}} \newcommand{\UsplineBasisSymmFourthOrderComp}{E} \newcommand{\UsplineBasisSymmSixthOrderComp}{Z} \newcommand{\VolumeEnvRefG}{\VolumeEnvRef^{\alpha}} \newcommand{\VolumeEnvRefS}{\VolumeEnvRef^{s}} \newcommand{\VolumeEnvRefM}{\VolumeEnvRef^{m}} \newcommand{\VolumeRefG}{\VolumeRef^{\alpha}} \newcommand{\VolumeRefS}{\VolumeRef^{s}} \newcommand{\VolumeRefM}{\VolumeRef^{m}} \newcommand{\VolumeRefClosureG}{\VolumeRefClosure^\alpha} \newcommand{\VolumeRefClosureS}{\VolumeRefClosure^s} \newcommand{\VolumeRefClosureM}{\VolumeRefClosure^m} \newcommand{\SurfaceRefG}{\SurfaceRef^\alpha} \newcommand{\SurfaceRefS}{\SurfaceRef^s} \newcommand{\SurfaceRefM}{\SurfaceRef^m} \newcommand{\SurfaceRefTracG}{\SurfaceRef^{\SymbolTracForce,\alpha}} \newcommand{\SurfaceRefDispG}{\SurfaceRef^{\SymbolDisp,\alpha}} \newcommand{\SurfaceRefContactG}{\SurfaceRef^{c,\alpha}} \newcommand{\SurfaceRefContactS}{\SurfaceRef^{c,s}} \newcommand{\SurfaceRefContactM}{\SurfaceRef^{c,m}} \newcommand{\VolumeEnvRefSCoordVec}{\RefCoordVec{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMCoordVec}{\RefCoordVec{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGCoordVec}{\RefCoordVec{\VolumeEnvRefG}} \newcommand{\VolumeRefGCoordVec}{\RefCoordVec{\VolumeRefG}} \newcommand{\SurfaceRefContactSCoord}{\RefCoord{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactSCoordVec}{\RefCoordVec{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMCoord}{\RefCoord{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactMCoordVec}{\RefCoordVec{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGCoord}{\RefCoord{\SurfaceRefContactG}} \newcommand{\SurfaceRefContactGCoordVec}{\RefCoordVec{\SurfaceRefContactG}} \newcommand{\SurfaceRefDispGCoordVec}{\RefCoordVec{\SurfaceRefDispG}} \newcommand{\SegmentOfVolumeEnvRefS}{\Segment{\VolumeEnvRefS}} \newcommand{\SegmentOfVolumeEnvRefM}{\Segment{\VolumeEnvRefM}} \newcommand{\SegmentOfSurfaceRefContactS}{\Segment{\SurfaceRefContactS}} \newcommand{\SegmentOfSurfaceRefContactM}{\Segment{\SurfaceRefContactM}} \newcommand{\VolumeEnvCurrG}{\VolumeEnvCurr^{\alpha}} \newcommand{\VolumeEnvCurrS}{\VolumeEnvCurr^{s}} \newcommand{\VolumeEnvCurrM}{\VolumeEnvCurr^{m}} \newcommand{\VolumeCurrG}{\VolumeCurr^{\alpha}} \newcommand{\VolumeCurrS}{\VolumeCurr^{s}} \newcommand{\VolumeCurrM}{\VolumeCurr^{m}} \newcommand{\VolumeCurrClosureG}{\VolumeCurrClosure^\alpha} \newcommand{\VolumeCurrClosureS}{\VolumeCurrClosure^s} \newcommand{\VolumeCurrClosureM}{\VolumeCurrClosure^m} \newcommand{\SurfaceCurrG}{\SurfaceCurr^\alpha} \newcommand{\SurfaceCurrS}{\SurfaceCurr^s} \newcommand{\SurfaceCurrM}{\SurfaceCurr^m} \newcommand{\SurfaceCurrContact}{\SurfaceCurr^{c}} \newcommand{\SurfaceCurrContactG}{\SurfaceCurr^{c,\alpha}} \newcommand{\SurfaceCurrContactS}{\SurfaceCurr^{c,s}} \newcommand{\SurfaceCurrContactM}{\SurfaceCurr^{c,m}} \newcommand{\VolumeEnvCurrSCoordVec}{\CurrCoordVec{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMCoordVec}{\CurrCoordVec{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGCoordVec}{\CurrCoordVec{\VolumeEnvCurrG}} \newcommand{\VolumeCurrGCoordVec}{\CurrCoordVec{\VolumeCurrG}} \newcommand{\SurfaceCurrContactSCoord}{\CurrCoord{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactSCoordVec}{\CurrCoordVec{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMCoord}{\CurrCoord{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactMCoordVec}{\CurrCoordVec{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGCoord}{\CurrCoord{\SurfaceCurrContactG}} \newcommand{\SurfaceCurrContactGCoordVec}{\CurrCoordVec{\SurfaceCurrContactG}} \newcommand{\SegmentOfVolumeEnvCurrS}{\Segment{\VolumeEnvCurrS}} \newcommand{\SegmentOfVolumeEnvCurrM}{\Segment{\VolumeEnvCurrM}} \newcommand{\SegmentOfSurfaceCurrContactS}{\Segment{\SurfaceCurrContactS}} \newcommand{\SegmentOfSurfaceCurrContactM}{\Segment{\SurfaceCurrContactM}} \newcommand{\VolumeEnvRefSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvRefS}} \newcommand{\VolumeEnvRefMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvRefM}} \newcommand{\VolumeEnvRefGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeEnvRefSMapInv}{\Inverse{\VolumeEnvRefSMap}} \newcommand{\VolumeEnvRefMMapInv}{\Inverse{\VolumeEnvRefMMap}} \newcommand{\VolumeEnvRefGMapInv}{\Inverse{\VolumeEnvRefGMap}} \newcommand{\VolumeRefClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeRefClosureS}} \newcommand{\VolumeRefClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}} \newcommand{\VolumeRefClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\VolumeRefSMap}{\ManifoldMap{\ParamDomainS}{\VolumeRefS}} \newcommand{\VolumeRefMMap}{\ManifoldMap{\ParamDomainM}{\VolumeRefM}} \newcommand{\VolumeRefGMap}{\ManifoldMap{\ParamDomainG}{\VolumeRefG}} \newcommand{\VolumeRefClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeRefClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\VolumeRefClosureMMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureM}{\VolumeRefClosureM}\Big|_{\ParamDomainBdryContactM}} \newcommand{\SurfaceRefContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvRefGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvRefG}} \newcommand{\VolumeRefClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeRefClosureG}} \newcommand{\SurfaceRefContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceRefContactS}} \newcommand{\SurfaceRefContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceRefContactM}} \newcommand{\SurfaceRefContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceRefContactG}} \newcommand{\VolumeEnvCurrSMap}{\ManifoldMap{\ParamDomainEnvS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvCurrMMap}{\ManifoldMap{\ParamDomainEnvM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvCurrGMap}{\ManifoldMap{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureSMap}{\ManifoldMap{\ParamDomainClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeCurrClosureMMap}{\ManifoldMap{\ParamDomainClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeCurrClosureGMap}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeCurrSMap}{\ManifoldMap{\ParamDomainS}{\VolumeCurrS}} \newcommand{\VolumeCurrMMap}{\ManifoldMap{\ParamDomainM}{\VolumeCurrM}} \newcommand{\VolumeCurrGMap}{\ManifoldMap{\ParamDomainG}{\VolumeCurrG}} \newcommand{\VolumeCurrClosureGMapRestrictedToBoundary}{\ManifoldMap{\ParamDomainClosureG}{\VolumeCurrClosureG}\Big|_{\ParamDomainBdryContactG}} \newcommand{\SurfaceCurrContactSMap}{\ManifoldMap{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMap}{\ManifoldMap{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMap}{\ManifoldMap{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvCurrGMapDef}{\ManifoldMapDef{\ParamDomainEnvG}{\VolumeEnvCurrG}} \newcommand{\VolumeCurrClosureGMapDef}{\ManifoldMapDef{\ParamDomainClosureG}{\VolumeCurrClosureG}} \newcommand{\SurfaceCurrContactSMapDef}{\ManifoldMapDef{\ParamDomainBdryContactS}{\SurfaceCurrContactS}} \newcommand{\SurfaceCurrContactMMapDef}{\ManifoldMapDef{\ParamDomainBdryContactM}{\SurfaceCurrContactM}} \newcommand{\SurfaceCurrContactGMapDef}{\ManifoldMapDef{\ParamDomainBdryContactG}{\SurfaceCurrContactG}} \newcommand{\VolumeEnvDeformSMap}{\ManifoldMap{\VolumeEnvRefS}{\VolumeEnvCurrS}} \newcommand{\VolumeEnvDeformMMap}{\ManifoldMap{\VolumeEnvRefM}{\VolumeEnvCurrM}} \newcommand{\VolumeEnvDeformGMap}{\ManifoldMap{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformSMap}{\ManifoldMap{\VolumeRefClosureS}{\VolumeCurrClosureS}} \newcommand{\VolumeDeformMMap}{\ManifoldMap{\VolumeRefClosureM}{\VolumeCurrClosureM}} \newcommand{\VolumeDeformGMap}{\ManifoldMap{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\VolumeEnvDeformGMapDef}{\ManifoldMapDef{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\VolumeDeformGMapDef}{\ManifoldMapDef{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\DispTrialSpaceOverVolumeEnvRefS}{\SpaceHilbert{U}(\VolumeEnvRefS)} \newcommand{\DispTrialSpaceOverVolumeEnvRefM}{\SpaceHilbert{U}(\VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefSAndM}{\SpaceHilbert{U}(\VolumeEnvRefS, \VolumeEnvRefM)} \newcommand{\DispTrialSpaceOverVolumeEnvRefG}{\SpaceHilbert{U}(\VolumeEnvRefG)} \newcommand{\DispTrialSpaceOverVolumeRefS}{\SpaceHilbert{U}(\VolumeRefClosureS)} \newcommand{\DispTrialSpaceOverVolumeRefM}{\SpaceHilbert{U}(\VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefSAndM}{\SpaceHilbert{U}(\VolumeRefClosureS, \VolumeRefClosureM)} \newcommand{\DispTrialSpaceOverVolumeRefG}{\SpaceHilbert{U}(\VolumeRefClosureG)} \newcommand{\DispTestSpaceOverVolumeEnvRefG}{\delta \DispTrialSpaceOverVolumeEnvRefG} \newcommand{\DispTestSpaceOverVolumeRefG}{\delta \DispTrialSpaceOverVolumeRefG} \newcommand{\DispFieldRefSComp}{\DispFieldRefComp^s} \newcommand{\DispFieldRefSTen}{\DispFieldRefTen^s} \newcommand{\DispFieldRefMComp}{\DispFieldRefComp^m} \newcommand{\DispFieldRefMTen}{\DispFieldRefTen^m} \newcommand{\DispFieldRefGTen}{\DispFieldRefTen^\alpha} \newcommand{\DispFieldDiscreteRefGTen}{\DispFieldRefTen^{h,\alpha}} \newcommand{\DispFieldOverVolumeEnvRefGTenDef}{\ManifoldMapDef{\VolumeEnvRefG}{\DispFieldRefGTen}} \newcommand{\DispFieldOverVolumeRefGTenDef}{\ManifoldMapDef{\VolumeRefClosureG}{\DispFieldRefGTen}} \newcommand{\GradVolumeRefG}[1]{\Grad{\RefCoordVec{\VolumeRefClosureG}}{#1}} \newcommand{\GradVolumeEnvRefS}[1]{\Grad{\VolumeEnvRefSCoordVec}{#1}} \newcommand{\GradVolumeEnvRefM}[1]{\Grad{\VolumeEnvRefMCoordVec}{#1}} \newcommand{\GradVolumeEnvRefG}[1]{\Grad{\VolumeEnvRefGCoordVec}{#1}} \newcommand{\DeformGradSComp}{\DeformGradComp^s} \newcommand{\DeformGradSTen}{\DeformGradTen^s} \newcommand{\DeformGradSDet}{\Det{\DeformGradSTen}} \newcommand{\DeformGradSInvTrans}{\InvTrans{\DeformGradSTen}} \newcommand{\DeformGradMComp}{\DeformGradComp^m} \newcommand{\DeformGradMTen}{\DeformGradTen^m} \newcommand{\DeformGradMDet}{\Det{\DeformGradMTen}} \newcommand{\DeformGradMInvTrans}{\InvTrans{\DeformGradMTen}} \newcommand{\DeformGradGTen}{\DeformGradTen^\alpha} \newcommand{\DeformGradOverVolumeEnvRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeEnvRefG}{\VolumeEnvCurrG}} \newcommand{\DeformGradOverVolumeRefGTenDef}{\FuncDef{\DeformGradGTen}{\VolumeRefClosureG}{\VolumeCurrClosureG}} \newcommand{\UnitNormalRefSTen}{\UnitNormalRefTen^s} \newcommand{\UnitNormalRefMTen}{\UnitNormalRefTen^m} \newcommand{\UnitNormalCurrSComp}{\UnitNormalCurrComp^s} \newcommand{\UnitNormalCurrSTen}{\UnitNormalCurrTen^s} \newcommand{\UnitNormalCurrMComp}{\UnitNormalCurrComp^m} \newcommand{\UnitNormalCurrMTen}{\UnitNormalCurrTen^m} \newcommand{\AreaRatioS}{r^s} \newcommand{\AreaRatioM}{r^m} \newcommand{\ContraMTen}{\Mat{a}^m} \newcommand{\SymmProdInProjTan}{C} \newcommand{\ProdPBTanInvCurPBTanInv}{D} \newcommand{\ProdPBTanInvCurMetricInv}{M} \newcommand{\ProdPBTanInvCurMetricInvCurPBTanInv}{W} \newcommand{\PenaltyContactGap}{\SymbolPenalty_{\SymbolContactGap}} \newcommand{\BodyForceRefGTen}{\BodyForceRefTen^\alpha} \newcommand{\TracForceRefGTen}{\TracForceRefTen^\alpha} \newcommand{\BodyForceOverVolumeRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeRefG}{\SpatialDomain}} \newcommand{\BodyForceOverVolumeEnvRefGDef}{\FuncDef{\BodyForceRefGTen}{\VolumeEnvRefG}{\SpatialDomain}} \newcommand{\TracForceOverSurfaceRefTracGTenDef}{\FuncDef{\TracForceRefGTen}{\SurfaceRefTracG}{\SpatialDomain}} \newcommand{\PressureContact}{\SymbolPressureContact} \newcommand{\PressureContactProjected}{\overline{\SymbolPressureContact}_{\UsplineBasisFuncId}} \newcommand{\CoeffPressureContact}{\SymbolPressureContact_{\UsplineBasisFuncId}} \newcommand{\PressureContactInterpolated}{\hat{\SymbolPressureContact}} \newcommand{\ConstraintRefGTen}{\ConstraintRefTen^\alpha} \newcommand{\GapContact}{\SymbolContactGap} \newcommand{\GapContactProjected}{\overline{\SymbolContactGap}_{\UsplineBasisFuncId}} \newcommand{\GapContactProjectedVariation}{\delta \GapContactProjected} \newcommand{\GapContactMortar}{\GapContact^{m}} \newcommand{\GapContactMortarProjected}{\overline{\GapContact}^{m}_{\UsplineBasisFuncId}} \newcommand{\CoeffGapContactMortar}{\GapContact^{m}_{\UsplineBasisFuncId}} \newcommand{\ConstraintOverSurfaceRefDispGTenDef}{\FuncDef{\ConstraintRefGTen}{\SurfaceRefDispG}{\SpatialDomain}} \newcommand{\EnergyEnvG}{\EnergyEnv^\alpha} \newcommand{\EnergyG}{\Energy^{\alpha}} \newcommand{\EnergyDensityStrainG}{\EnergyDensityStrain^\alpha} \newcommand{\EnergyConstraintG}{\Energy^{\SymbolDisp,\alpha}} \newcommand{\EnergyContact}{\Energy^c} \newcommand{\EnergyOverVolumeRefGDef}{\FuncDef{\EnergyG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyEnvOverVolumeEnvRefGDef}{\FuncDef{\EnergyEnvG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeRefG}{\Reals}} \newcommand{\EnergyDensityStrainOverVolumeEnvRefGDef}{\FuncDef{\EnergyDensityStrainG}{\VolumeEnvRefG}{\Reals}} \newcommand{\EnergyContactOverVolumeRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeRefSAndM}{\Reals}} \newcommand{\EnergyContactOverVolumeEnvRefSAndMDef}{\FuncDef{\EnergyContact}{\DispTrialSpaceOverVolumeEnvRefSAndM}{\Reals}} \newcommand{\EnergyConstraintOverVolumeRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeRefG}{\Reals}} \newcommand{\EnergyConstraintOverVolumeEnvRefGDef}{\FuncDef{\EnergyConstraintG}{\DispTrialSpaceOverVolumeEnvRefG}{\Reals}} \newcommand{\ResidualMat}{\Mat{N}} \newcommand{\ForceInternalContactVec}{\ForceVec^{c,int,n}} \newcommand{\ForceGapContact}{C^n} \newcommand{\StiffnessMatA}{\hat{\Mat{N}}} \newcommand{\StiffnessMatB}{\Mat{T}} \newcommand{\StiffnessMatC}{\Mat{D}} \newcommand{\StiffnessGeometricContact}{\StiffnessMat^{c,g,n}} \newcommand{\StiffnessContact}{\StiffnessMat^{c,n}} \newcommand{\ElemCount}[1]{\operatorname{count}{(#1)}} \newcommand{\ConvexHull}[1]{\operatorname{ch}{\left(#1\right)}} \newcommand{\Normal}[1]{\operatorname{N}{\left(#1\right)}} \newcommand{\NormalConvexHull}[1]{\Normal{\ConvexHull{#1}}} \newcommand{\DiscretePointSetS}{\Set{SP}} \newcommand{\DiscreteElemSetM}{\Set{ME}} \newcommand{\EnvBoundConMapM}{\operatorname{mc}} \newcommand{\EnvBoundConSetM}{\Set{MC}} \newcommand{\SpatialCoordVecToSegmentSetMapMSensor}{\operatorname{cs}} \newcommand{\SpatialCoordVecToSegmentSetMapMElem}{\operatorname{ce}} \newcommand{\SelfContactMap}{\operatorname{sc}} \newcommand{\ColSetS}{\Set{I}} \newcommand{\PairEnvMapBoundM}{\operatorname{cp}} \newcommand{\ApproximateProjectionCollision}[1]{\widetilde{\Projection}{#1}} \newcommand{\ImageSlaveEnv}{\bar{\ParamCoordVecSimple}^{\ParamDomainEnvM}} \newcommand{\ImageSlaveBound}{\bar{\ParamCoordVecSimple}^{\ParamDomainBdryContactM}} \newcommand{\ActiveSet}{\Set{A}} \newcommand{\DiscretePointSetM}{\Set{MP}} \newcommand{\MortarActiveSet}{\Set{A}^m} \newcommand{\PressureContactAnalytical}{p_a} \newcommand{\TipPressureContactAnalytical}{p_0} \newcommand{\ContactHalfWidth}{b}$$\newcommand{\MidGeometryModifier}[1]{\bar{#1}} \newcommand{\SymbolRotationGlobal}{\omega} \newcommand{\SkewMat}[1]{\Mat{s} \left( #1 \right)} \newcommand{\SkewMatInv}[1]{\Mat{s}^{-1} \left( #1 \right)} \newcommand{\Ident}{\Mat{I}} \newcommand{\Cartesian}{\Vec{e}} \newcommand{\ManifoldDim}{n} \newcommand{\LaminaSymbol}{l} \newcommand{\LaminaSymbolUpper}{L} \newcommand{\LaminaMetricSymbol}{j} \newcommand{\ShellMomentSymbol}{q} \newcommand{\DirectorBilinearFunc}[3]{\left(#2,#3\right)_{#1}} \newcommand{\RotObjectiveFunc}{s} \newcommand{\ParamConfig}{\Omega_\xi} \newcommand{\ParamConfigMid}{\Omega_\xi^m} \newcommand{\ParamConfigSec}{\Omega_\xi^s} \newcommand{\ParamConfigBound}{\Gamma_\xi} \newcommand{\ParamConfigMidBound}{\Gamma_\xi^m} \newcommand{\ParamConfigSecBound}{\Gamma_\xi^s} \newcommand{\ParamConfigMuBound}{\Gamma_\xi^\mu} \newcommand{\ParamConfigSigBound}{\Gamma_\xi^\sigma} \newcommand{\ParamConfigDirichMidBound}{\Gamma_\xi^g} \newcommand{\ParamConfigNeuMidBound}{\Gamma_\xi^h} \newcommand{\ParamConfigDirichBound}{\Gamma_\xi^\gamma} \newcommand{\ParamConfigNeuBound}{\Gamma_\xi^\eta} \newcommand{\ParaParam}[1]{\xi_{#1}} \newcommand{\ParaParamVec}{\boldsymbol{\xi}} \newcommand{\RefConfig}{\Omega_0} \newcommand{\RefConfigMid}{\Omega_0^m} \newcommand{\RefConfigSec}{\Omega_0^s} \newcommand{\SurfaceRefRot}{\SurfaceRef^{\SymbolRotationGlobal}} \newcommand{\RefConfigBound}{\Gamma_0} \newcommand{\RefConfigMidBound}{\Gamma_0^m} \newcommand{\RefConfigSecBound}{\Gamma_0^s} \newcommand{\RefConfigMuBound}{\Gamma_0^\mu} \newcommand{\RefConfigSigBound}{\Gamma_0^\sigma} \newcommand{\RefConfigDirichMidBound}{\Gamma_0^g} \newcommand{\RefConfigNeuMidBound}{\Gamma_0^h} \newcommand{\RefConfigDirichBound}{\Gamma_0^\gamma} \newcommand{\RefConfigNeuBound}{\Gamma_0^\eta} \newcommand{\RefMap}{\Vec{X}} \newcommand{\RefMid}{\MidGeometryModifier{\Vec{X}}} \newcommand{\RefDir}{\Vec{D}} \newcommand{\RefSectionPos}{\Vec{R}} \newcommand{\RefCovar}[1]{\Vec{G}_{#1}} \newcommand{\RefMidCovar}[1]{\MidGeometryModifier{\Vec{G}}_{#1}} \newcommand{\RefContra}[1]{\Vec{G}^{#1}} \newcommand{\RefMidContra}[1]{\MidGeometryModifier{\Vec{G}}^{#1}} \newcommand{\RefLamina}[1]{\Vec{L}_{#1}} \newcommand{\RefLaminaDual}[1]{\Vec{\LaminaSymbolUpper}^{#1}} \newcommand{\RefShellProjectedBasis}[1]{\Vec{P}_{#1}} \newcommand{\CurConfig}{\Omega} \newcommand{\CurConfigMid}{\Omega^m} \newcommand{\CurConfigSec}{\Omega^s} \newcommand{\CurConfigBound}{\Gamma} \newcommand{\CurConfigMidBound}{\Gamma^m} \newcommand{\CurConfigSecBound}{\Gamma^s} \newcommand{\CurConfigMuBound}{\Gamma^\mu} \newcommand{\CurConfigSigBound}{\Gamma^\sigma} \newcommand{\CurConfigDirichMidBound}{\Gamma^g} \newcommand{\CurConfigNeuMidBound}{\Gamma^h} \newcommand{\CurConfigDirichBound}{\Gamma^\gamma} \newcommand{\CurConfigNeuBound}{\Gamma^\eta} \newcommand{\CurMap}{\Vec{x}} \newcommand{\CurMid}{\MidGeometryModifier{\Vec{x}}} \newcommand{\CurDir}{\Vec{d}} \newcommand{\CurSectionPos}{\Vec{r}} \newcommand{\CurCovar}[1]{\Vec{g}_{#1}} \newcommand{\CurMidCovar}[1]{\MidGeometryModifier{\Vec{g}}_{#1}} \newcommand{\CurContra}[1]{\Vec{g}^{#1}} \newcommand{\CurMidContra}[1]{\MidGeometryModifier{\Vec{g}}^{#1}} \newcommand{\CurLamina}[1]{\Vec{\LaminaSymbol}_{#1}} \newcommand{\CurLaminaDual}[1]{\Vec{\LaminaSymbol}^{#1}} \newcommand{\CurModLamina}[1]{\hat{\Vec{\LaminaSymbol}}_{#1}} \newcommand{\CurModLaminaDual}[1]{\hat{\Vec{\LaminaSymbol}}^{#1}} \newcommand{\CurShellProjectedBasis}[1]{\Vec{p}_{#1}} \newcommand{\DeformMap}{\varphi} \newcommand{\DeformMapMid}{\varphi^m} \newcommand{\Disp}{\Vec{u}} \newcommand{\DispMid}{\MidGeometryModifier{\Vec{u}}} \newcommand{\RotVec}{\boldsymbol{\omega}} \newcommand{\RotMat}{\boldsymbol{\Lambda}} \newcommand{\RotMatMembrane}{\Mat{\Psi}} \newcommand{\RotMatDelta}{\boldsymbol{\Lambda}_\Delta} \newcommand{\IncRotMat}{\Delta\RotMat} \newcommand{\EulerVec}{\boldsymbol{\vartheta}} \newcommand{\EulerVecNorm}{\theta} \newcommand{\EulerVecSinc}{\boldsymbol{\Theta}} \newcommand{\EulerRotVec}{\boldsymbol{\theta}} \newcommand{\EulerRotAngle}{\theta} \newcommand{\IncEulerRotVec}{\Delta\boldsymbol{\theta}} \newcommand{\AngularVelocity}{\boldsymbol{\eta}} \newcommand{\IncEulerRotVecVel}{\Delta\dot{\boldsymbol{\theta}}} \newcommand{\AngularAcceleration}{\boldsymbol{\alpha}} \newcommand{\IncEulerRotVecAcc}{\Delta\ddot{\boldsymbol{\theta}}} \newcommand{\DeformGrad}{\Mat{F}} \newcommand{\Strain}[1]{\boldsymbol{\tau}_{#1}} \newcommand{\StrainMid}[1]{\boldsymbol{\varepsilon}_{#1}} \newcommand{\StrainCurve}[1]{\boldsymbol{\kappa}_{#1}} \newcommand{\DecompDeform}{\Mat{U}} \newcommand{\ExtraDeformTen}{\Delta\DeformGradTen} \newcommand{\ExtraDeformComp}{\Delta\DeformGradComp} \newcommand{\GreenLagrange}{\Mat{E}} \newcommand{\ShellStrainCurve}[1]{\boldsymbol{\chi}_{#1}} \newcommand{\SecPK}{\Mat{S}} \newcommand{\FirstPK}{\Mat{P}} \newcommand{\Cauchy}{\boldsymbol{\sigma}} \newcommand{\IntTrac}[1]{\Vec{t}_{#1}} \newcommand{\RefModuli}{\Mat{C}} \newcommand{\CurModuli}{\Mat{c}} \newcommand{\PointModuli}{\Mat{m}} \newcommand{\ResModuli}{\Mat{M}} \newcommand{\RefAreaVec}[1]{\Vec{A}_{#1}} \newcommand{\RefAreaMidVec}[1]{\MidGeometryModifier{\Vec{A}}_{#1}} \newcommand{\RefMeas}{G} \newcommand{\UnitNormalRefVec}[1]{\Vec{N}_{#1}} \newcommand{\CurAreaVec}[1]{\Vec{a}_{#1}} \newcommand{\CurAreaMidVec}[1]{\MidGeometryModifier{\Vec{a}}_{#1}} \newcommand{\CurMeas}{g} \newcommand{\UnitNormalCurrVec}[1]{\Vec{n}_{#1}} \newcommand{\CurLaminaMetricTen}{\Mat{\LaminaMetricSymbol}} \newcommand{\CurLaminaMetricComp}{\LaminaMetricSymbol} \newcommand{\CurToModLaminaTransComp}{M} \newcommand{\IntForce}{\Vec{f}^{\, int}} \newcommand{\IntMoment}{\Vec{m}^{int}} \newcommand{\ExtForceBody}{\Vec{f}^{\, ext}_b} \newcommand{\ExtMomentBody}{\Vec{m}^{ext}_b} \newcommand{\ShellExtMomentBody}{\Vec{\ShellMomentSymbol}^{ext}_b} \newcommand{\ExtForceTrac}{\Vec{f}^{\, ext}_h} \newcommand{\ExtMomentTrac}{\Vec{m}^{ext}_h} \newcommand{\ShellExtMomentTrac}{\Vec{\ShellMomentSymbol}^{ext}_h} \newcommand{\MassForce}{\Vec{f}^{\,\rho}} \newcommand{\MassMoment}{\Vec{m}^{\rho}} \newcommand{\ShellMassMoment}{\Vec{\ShellMomentSymbol}^{\rho}} \newcommand{\ResidualInternal}{\Vec{R}^{int}} \newcommand{\ResidualExternal}{\Vec{R}^{ext}} \newcommand{\ResidualMass}{\Mat{R}^{\rho}} \newcommand{\NodalMass}[1]{\Mat{M}_{#1}} \newcommand{\NodalLinearInertia}[1]{A_{#1}} \newcommand{\NodalAngularInertia}[1]{I_{#1}} \newcommand{\ShellDeltaAngle}{\phi} \newcommand{\BStrainMatrix}[2]{\Mat{B}_{#1#2}} \newcommand{\ShellDrillingStiffness}{k} \newcommand{\DrillConstraint}{C} \newcommand{\IntForceDrilling}{\Vec{f}^{d}} \newcommand{\ModuliDrilling}{\Mat{M}^d} \newcommand{\ResidualDrilling}{\Vec{R}^d} \newcommand{\SymbolTop}{top} \newcommand{\SymbolCentroid}{c} \newcommand{\SymbolLeverArm}{r} \newcommand{\SpatialCoordVecCentroid}{\SpatialCoordVec^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidX}{\SpatialCoordX^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidY}{\SpatialCoordY^{\SymbolCentroid}} \newcommand{\SpatialCoordCentroidZ}{\SpatialCoordZ^{\SymbolCentroid}} \newcommand{\LeverArm}{\Vec{\SymbolLeverArm}} \newcommand{\LeverArmX}{\SymbolLeverArm_{\SpatialCoordX}} \newcommand{\LeverArmY}{\SymbolLeverArm_{\SpatialCoordY}} \newcommand{\LeverArmZ}{\SymbolLeverArm_{\SpatialCoordZ}} \newcommand{\MomentFirstMass}{Q} \newcommand{\MomentSecondMass}{I} \newcommand{\MomentSecondMassDetailed}[1]{I_{#1}} \newcommand{\DistributedLoad}{q} \newcommand{\TracForceCurrCompX}{\TracForceCurrComp_{\SpatialCoordX}} \newcommand{\TracForceCurrCompY}{\TracForceCurrComp_{\SpatialCoordY}} \newcommand{\TracForceCurrCompZ}{\TracForceCurrComp_{\SpatialCoordZ}} \newcommand{\TracMomentCurrCompDetailed}[1]{\TracMomentCurrComp_{#1}} \newcommand{\TracForceCurrCompSupportReaction}{r^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompSupportReactionDetailed}[1]{\TracForceCurrCompSupportReaction_{#1}} \newcommand{\TracForceCurrCompDistributedLoad}{\DistributedLoad^{\TracForceCurrComp}} \newcommand{\TracForceCurrCompPointLoad}{p^{\TracForceCurrComp}} \newcommand{\TracMomentCurrVec}{\Vec{\TracMomentCurrComp}} \newcommand{\TracMomentCurrComp}{m} \newcommand{\BodyForceCurrCompX}{\BodyForceCurrComp_{\SpatialCoordX}} \newcommand{\BodyForceCurrCompY}{\BodyForceCurrComp_{\SpatialCoordY}} \newcommand{\BodyForceCurrCompZ}{\BodyForceCurrComp_{\SpatialCoordZ}} \newcommand{\BodyForceCurrCompDistributedLoad}{\DistributedLoad^{\BodyForceCurrComp}} \newcommand{\BodyForceCurrCompAxialLoad}{f^{\BodyForceCurrComp}} \newcommand{\StressCauchyTractionVec}{\Vec{t}} \newcommand{\StressCauchyTractionX}{t_{\SpatialCoordX}} \newcommand{\StressCauchyTractionY}{t_{\SpatialCoordY}} \newcommand{\StressCauchyTractionZ}{t_{\SpatialCoordZ}} \newcommand{\StressCauchyNormal}{\sigma} \newcommand{\StressCauchyNormalDetailed}[1]{\StressCauchyNormal_{#1}} \newcommand{\StressCauchyNormalXX}{\StressCauchyComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StressCauchyNormalYY}{\StressCauchyComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StressCauchyNormalZZ}{\StressCauchyComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StressCauchyShear}{\tau} \newcommand{\StressCauchyShearDetailed}[1]{\StressCauchyShear_{#1}} \newcommand{\StressCauchyShearXY}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StressCauchyShearYX}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordX}} \newcommand{\StressCauchyShearXZ}{\StressCauchyShear_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StressCauchyShearZX}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordX}} \newcommand{\StressCauchyShearYZ}{\StressCauchyShear_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\StressCauchyShearZY}{\StressCauchyShear_{\SpatialCoordZ\SpatialCoordY}} \newcommand{\StressCauchyResultantForce}{F} \newcommand{\StressCauchyResultantForceDetailed}[1]{F_{#1}} \newcommand{\StressCauchyResultantForceVec}{\Vec{\StressCauchyResultantForce}} \newcommand{\StressCauchyResultantMoment}{M} \newcommand{\StressCauchyResultantMomentDetailed}[1]{M_{#1}} \newcommand{\StressCauchyResultantMomentVec}{\Vec{\StressCauchyResultantMoment}} \newcommand{\StressCauchyResultantForceShear}{V} \newcommand{\StressCauchyResultantForceShearDetailed}[1]{V_{#1}} \newcommand{\StressCauchyResultantForceAxial}{\StressCauchyResultantForce} \newcommand{\DispFieldCurrCompX}{\DispFieldCurrComp_{\SpatialCoordX}} \newcommand{\DispFieldCurrCompY}{\DispFieldCurrComp_{\SpatialCoordY}} \newcommand{\DispFieldCurrCompZ}{\DispFieldCurrComp_{\SpatialCoordZ}} \newcommand{\DispFieldMidCurrCompX}{\overline{\DispFieldCurrComp}_{\SpatialCoordX}} \newcommand{\DispFieldMidCurrCompY}{\overline{\DispFieldCurrComp}_{\SpatialCoordY}} \newcommand{\StrainSymGradCompXX}{\StrainSymGradComp_{\SpatialCoordX\SpatialCoordX}} \newcommand{\StrainSymGradCompYY}{\StrainSymGradComp_{\SpatialCoordY\SpatialCoordY}} \newcommand{\StrainSymGradCompZZ}{\StrainSymGradComp_{\SpatialCoordZ\SpatialCoordZ}} \newcommand{\StrainShearComp}{\gamma} \newcommand{\StrainShearCompXY}{\StrainShearComp_{\SpatialCoordX\SpatialCoordY}} \newcommand{\StrainShearCompXZ}{\StrainShearComp_{\SpatialCoordX\SpatialCoordZ}} \newcommand{\StrainShearCompYZ}{\StrainShearComp_{\SpatialCoordY\SpatialCoordZ}} \newcommand{\EquationBeamShearStress}{\frac{\StressCauchyResultantForceShear \MomentFirstMass}{\MomentSecondMassDetailed{\SpatialCoordZ}\Width}} \newcommand{\EquationVecInCoords}{\Vec{v} = v_{\SpatialCoordX} \BasisVecI + v_{\SpatialCoordY} \BasisVecJ + v_{\SpatialCoordZ} \BasisVecK} \newcommand{\EquationMatVecMultiply}{\Mat{M}\Vec{v} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Vec{v}} \\ \DotProduct{\Vec{m}_2}{\Vec{v}} \\ \DotProduct{\Vec{m}_3}{\Vec{v}} \end{bmatrix}} \newcommand{\EquationMatMatMultiply}{\Mat{M}\Mat{N} = \begin{bmatrix} \DotProduct{\Vec{m}_1}{\Mat{n}_1} & \DotProduct{\Vec{m}_1}{\Mat{n}_2} & \DotProduct{\Vec{m}_1}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_2}{\Mat{n}_1} & \DotProduct{\Vec{m}_2}{\Mat{n}_2} & \DotProduct{\Vec{m}_2}{\Mat{n}_3} \\ \DotProduct{\Vec{m}_3}{\Mat{n}_1} & \DotProduct{\Vec{m}_3}{\Mat{n}_2} & \DotProduct{\Vec{m}_3}{\Mat{n}_3} \end{bmatrix}} \newcommand{\Force}{F} \newcommand{\ShearFlow}{f}$$\newcommand{\BaseSymbol}{b} \newcommand{\EmbeddedSymbol}{e} \newcommand{\RefinedSymbol}{r} \newcommand{\HierarchicalSymbol}{\textsf{H}} \newcommand{\BlockSymbol}{\textsf{B}} \newcommand{\BaseModifier}[1]{{#1}_{\BaseSymbol}} \newcommand{\EmbeddedModifier}[1]{{#1}_{\EmbeddedSymbol}} \newcommand{\RefinedModifier}[1]{{#1}_{\RefinedSymbol}} \newcommand{\HierarchicalModifier}[1]{{#1}_{\HierarchicalSymbol}} \newcommand{\BlockModifier}[1]{{#1}_{\BlockSymbol}} \newcommand{\RefinementLevelI}{i} \newcommand{\RefinementLevelJ}{j} \newcommand{\RefinementLevelK}{k} \newcommand{\HighestRefinementLevel}{N} \newcommand{\BaseParentDomain}{\BaseModifier{\ParentDomain}} \newcommand{\RefinedDomain}[1]{\ParamDomain_{#1}} \newcommand{\BaseMesh}{\BaseModifier{\MeshTopo}} \newcommand{\BaseBezierMesh}{\BaseModifier{\MeshBezier}} \newcommand{\EmbeddedMesh}{\EmbeddedModifier{\MeshTopo}} \newcommand{\RefinedMesh}{\RefinedModifier{\MeshTopo}} \newcommand{\RefinedBezierMesh}{\RefinedModifier{\MeshBezier}} \newcommand{\HierarchicalBezierMesh}{\HierarchicalModifier{\MeshBezier}} \newcommand{\HierarchicalUsplineMesh}{\HierarchicalModifier{\MeshUspline}} \newcommand{\RefinementLevelMesh}[1]{\MeshBezier_{#1}} \newcommand{\LeafElemSet}[1]{\Set{L}_{#1}} \newcommand{\ActiveElemSet}[1]{\Set{A}_{#1}} \newcommand{\ActiveBasisFuncs}[1]{\Set{UFA}_{#1}} \newcommand{\UnderRefinedBasisFuncs}[1]{\Set{UFU}_{#1}} \newcommand{\HierarchicalBasisFuncs}{\Set{UFH}} \newcommand{\TruncatedBasisFuncs}{\Set{UFT}} \newcommand{\FuncsTruncatedToLevel}[1]{\Set{TK}_{#1}} \newcommand{\FuncsTouchingActiveFuncs}[1]{\Set{T}_{#1}} \newcommand{\FuncsSubsetOfCoarserFuncs}[1]{\Set{S}_{#1}} \newcommand{\RefinementLevelBasis}[1]{\UsplineBasisFuncSetFunctionOf{\RefinementLevelMesh{#1}}} \newcommand{\RefinementLevelSpace}[1]{\QuantityRelatedTo{\UsplineSpace}{\RefinementLevelMesh{#1}}} \newcommand{\BaseAssociated}{\operatorname{\textsf{base}}} \newcommand{\BaseAssociatedFunctionOf}[1]{\QFO{\BaseAssociated}{#1}} \newcommand{\TruncationOp}[2]{\QFO{\operatorname{\textsf{trunc}}_{#1}}{#2}} \newcommand{\EmbeddedToBaseChart}{\EmbeddedModifier{\ParentDomainChart}} \newcommand{\InvEmbeddedToBaseChart}{(\EmbeddedToBaseChart)^{-1}} \newcommand{\RefinementCoefficients}{c^A_B} \newcommand{\RefinementMat}{\Mat{D}} \newcommand{\NthLevelProlongationMat}[1]{\QSB{\ProlongationMat}{#1}} \newcommand{\NthLevelActiveMat}[1]{\QSB{\Mat{A}}{#1}} \newcommand{\NthLevelRefinementMat}[1]{\QSB{\RefinementMat}{#1}} \newcommand{\NthLevelTruncationMat}[1]{\QSB{\Mat{T}}{#1}} \newcommand{\NthLevelBasisMat}[1]{\QSB{\Mat{S}}{#1}} \newcommand{\NthLevelMassMat}[1]{\QSB{\MassMat}{#1}} \newcommand{\FuncIndex}{\operatorname*{\mathsf{ID}}} \newcommand{\MultiLevelRefinementMat}[2]{\QSB{\RefinementMat}{#1 #2}} \newcommand{\BlockRefinementMat}{\BlockModifier{\RefinementMat}} \newcommand{\BlockMassMat}{\BlockModifier{\MassMat}}$

Note: This feature is under development. The command to enable or disable features under development is:

set developer commands {on|OFF}

The term "mesh cutting" refers to modifying an existing mesh by moving nodes to a cutting entity and modifying the connectivity of the mesh so that the original mesh fits a new geometry. The behavior of mesh cutting is intended to be similar to web cutting in that the process results in a decomposition of the original geometry. The difference is that the decomposition is performed on meshed geometry and results in the creation of virtual geometry partitions. The underlying ACIS body remains unchanged. The user has the option to determine what is partitioned during mesh cutting: the volume, the surfaces only, or nothing.

The current scope of mesh cutting is limited to cutting hex meshed volumes with planes and extended surfaces. These cutting entities are also limited in that mesh cutting will not work if they pass through a vertex at the end of more than two curves. Mesh cutting does not work on tet meshes or surface meshes.

The steps of mesh cutting include:

• Create a starting mesh. This mesh is typically simpler than the desired final mesh and can be created with sweeping, mapping, or some other available meshing algorithm. Currently, the starting mesh must be a single volume: mesh cutting does not handle merged volumes or assemblies.

• Create a cutting entity that can be used to capture the new detail in the mesh. Currently, mesh cutting works with planes or sheets extended from surfaces. It is important to note that if an extended surface is used, mesh cutting will not capture any geometric features (curves or vertices) of the surface.

• Issue the command to cut the mesh. The meshcut commands are similar in syntax and behavior to the webcut commands.

The following entities with the associated commands are available for mesh cutting:

15.1.7.1Coordinate Plane

A coordinate plane can be used to cut the model, and can optionally be offset a positive or negative distance from its position at the origin.

Meshcut Volume <range> Plane {xplane|yplane|zplane} [offset <dist>]

The planar surface to be used for mesh cutting can also be previewed using the Draw Plane command.

15.1.7.2Planar Surface

An existing planar surface can also be used to cut the model.

Meshcut Volume <range> Plane Surface <surface_id>

The planar surface to be used for mesh cutting can also be previewed using the Draw Plane command.

15.1.7.3Plane from 3 points

Any arbitrary planar surface can be used by specifying three nodes that define the plane.

Meshcut Volume <range> Plane Node <3_node_ids>

15.1.7.4Extended Surface

An extended surface or "sheet" can also be used for mesh cutting. In this case, the sheet is not restricted to be planar and will be extended in all directions possible. When cutting with an extended surface mesh cutting will ignore all curves and vertices of the surface. Also, the resolution of the mesh will determine how well curved surfaces are captured with meshcutting. A surface with high curvature will not be captured accurately with a coarse mesh. Note that some spline surfaces are limited in extent and may not give an expected result from mesh cutting.

Meshcut Volume <range> Sheet [Extended From] Surface <surface_id>

Note: When cutting with surfaces extended from composite surfaces the default underlying surface approximation may result in a poor final mesh for mesh cutting. This problem can be fixed using the following command:

Composite closest_pt surface <id> gme

See the discussion on composite geometry for a more detailed description of this command.

15.1.7.5Meshcut Options

The following options can be used with all the meshcut commands:

[PARTITION VOLUME|partition surface|no_partition]

: By default, mesh cutting will create virtual partitions of the volume being cut to match the cutting entity. This option allows mesh cutting to also create only the surface partitions or create no partitions for the volume or surfaces.

[no_refine]: This option tells mesh cutting not to refine the mesh around the cutting entity.

[no_smooth]: This option tells mesh cutting not to perform the final smoothing step after the cut has been made.

15.1.7.6Meshcutting Scope

The following is a list of the current scope and limitations of meshcutting.

• Meshcutting only works on hex meshes.

• Meshcutting only works for single volumes. It currently does not handle assembly meshes.

• Currently, only planes and extended surfaces can be used as the cutting entity.

• Curves and vertices on the cutting entity will not be captured in the mesh.

• Meshcutting will not work if the cutting entity passes through a meshed vertex that is at the end of more than two curves.

• The resolution of the mesh determines how well a non-planar cutting entity will be captured in the resulting mesh. Small features and high curvature will not be captured by a coarse mesh.

• Spline surfaces are limited in extent and may not give expected results if used as an extended cutting surface.

15.1.7.7Meshcutting Example

The figures below show an example of mesh cutting. Figure 584 shows the body that will be meshed. This body is a brick with intersecting through-holes. The steps to create a mesh for this body are listed below.

Figure 584: The original, unmeshed body

Step 1: Create a starting mesh. Figure 585 below shows the starting mesh for this problem. The commands for this mesh are:

Cubit> create brick x 10
Cubit> create cylinder radius 3 z 15
Cubit> subtract 2 from 1
Cubit> volume 1 scheme sweep
Cubit> volume 1 size .75
Cubit> mesh volume 1

Figure 585: The starting mesh

Step 2: Create a cutting entity. Figure 586 shows the volume that will be used to cut the mesh. The commands are:

Cubit> create cylinder radius 2 z 15
Cubit> rotate body 3 about x angle 90

Figure 586: The starting mesh and cutting entity

Step 3: Cut the mesh. Figure 587 shows the new mesh after the original mesh has been cut. At this point we have 3 meshed volumes. The commands for this step are:

Cubit> meshcut vol 1 sheet surface 13
Cubit> draw volume 1 4 5

Figure 587: The mesh after meshcutting

Step 4: Final step. Figure 588 shows the final mesh after the mesh of the mesh of the two extra volumes is deleted. The commands are:

Cubit> delete mesh vol 4 5 propagate
Cubit> draw volume 1

Figure 588: Final mesh after deleting unneeded elements

15.1.8Mesh Grafting

$\newcommand{\QuantityFunctionOf}[2]{{#1}(#2)} \newcommand{\QFO}[2]{\QuantityFunctionOf{#1}{#2}} \newcommand{\QuantityFunctionOfNoArg}[1]{{#1}} \newcommand{\QFONA}[1]{\QuantityFunctionOfNoArg{#1}} \newcommand{\SubscriptedQuantityFunctionOf}[3]{{#1}_{#2}(#3)} \newcommand{\SQFO}[3]{\SubscriptedQuantityFunctionOf{#1}{#2}{#3}} \newcommand{\QuantityChildOf}[2]{{#2}^{#1}} \newcommand{\QCO}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\QuantityRelatedTo}[2]{{#1}[#2]} \newcommand{\QRT}[2]{\QuantityRelatedTo{#1}{#2}} \newcommand{\QuantitySubscriptedBy}[2]{{#1}_{#2}} \newcommand{\QSB}[2]{\QuantitySubscriptedBy{#1}{#2}} \newcommand{\SubscriptedQuantityFunctionOfChildOf}[4]{{#1}_{#2}^{#3}(#4)} \newcommand{\SQFOCO}[4]{\SubscriptedQuantityFunctionOfChildOf{#1}{#2}{#3}{#4}} \newcommand{\SubscriptedQuantityChildOf}[3]{{#1}_{#2}^{#3}} \newcommand{\SQCO}[3]{\SubscriptedQuantityChildOf{#1}{#2}{#3}} \newcommand{\overbar}[1]{\mkern 1.5mu\overline{\mkern-1.5mu#1\mkern-1.5mu}\mkern 1.5mu} \newcommand{\bcdot}{\boldsymbol{\cdot}} \newcommand{\SuchThat}{\, : \,} \newcommand{\SuchThatText}{\text{s.t.}} \newcommand{\DefEq}{\overset{\operatorname{def}}{=}} \newcommand{\True}{\textsf{True}} \newcommand{\False}{\textsf{False}} \newcommand{\ArrayRoster}[1]{\left[#1\right]} \newcommand{\ArrayRosterI}[2]{[#1]_{#2}} \newcommand{\ArrayEmpty}{\ArrayRoster{\hspace{1mm}}} \newcommand{\Tuple}[1]{\mathsf{#1}} \newcommand{\TupleRoster}[1]{\left(#1\right)} \newcommand{\PointPair}[2]{\TupleRoster{#1, #2}} \newcommand{\Set}[1]{\mathsf{#1}} \newcommand{\SetRoster}[1]{\left\{ #1 \right\}} \newcommand{\SetRosterIndexed}[3]{\SetRoster{#1}_{#2}^{#3}} \newcommand{\SetRosterPredicate}[2]{\SetRoster{#1 \SuchThat #2}} \newcommand{\SetEmpty}{\varnothing} \newcommand{\SetPower}[1]{\QuantityFunctionOf{\boldsymbol{\Set{P}}}{#1}} \newcommand{\SetNeighborhood}[1]{\QuantityFunctionOf{\boldsymbol{\Set{B}}}{#1}} \newcommand{\Domain}{\Omega} \newcommand{\DomainBdry}{\Gamma} \newcommand{\IntervalClosed}[2]{\left[#1, #2\right]} \newcommand{\IntervalOpen}[2]{\left(#1, #2\right)} \newcommand{\IntervalClosedOpen}[2]{\left[#1, #2\right)} \newcommand{\IntervalOpenClosed}[2]{\left(#1, #2\right]} \newcommand{\Reals}{\mathbb{R}} \newcommand{\Naturals}{\mathbb{N}} \newcommand{\Integers}{\mathbb{Z}} \newcommand{\Field}{\mathbb{F}} \newcommand{\Size}[1]{\left\lvert #1 \right\rvert} \newcommand{\Union}[3]{\bigcup\limits_{#1}^{#2} #3} \newcommand{\UnionInline}[3]{\bigcup_{#1}^{#2} #3} \newcommand{\Intersect}[3]{\bigcap\limits_{#1}^{#2} #3} \newcommand{\ElementWiseGreaterOrEqual}{\succeq} \newcommand{\ElemntWiseGreater}{\succ} \newcommand{\ElementWiseLessOrEqual}{\preceq} \newcommand{\ElementWiseLess}{\prec} \newcommand{\SpaceLinear}[1]{\mathnormal{#1}} \newcommand{\SpaceDual}[1]{\SpaceLinear{#1}^*} \newcommand{\AbsoluteValue}[1]{\Size{#1}} \newcommand{\Norm}[2]{\left\lVert #2 \right\rVert_{#1}} \newcommand{\NormAbstract}[1]{\Norm{}{#1}} \newcommand{\NormSemi}[1]{\Size{#1}} \newcommand{\SpaceLinearNormed}[1]{\left(\SpaceLinear{#1}, \NormAbstract{\bcdot} \right)} \newcommand{\SpaceBanach}[1]{\mathfrak{#1}} % normed and complete \newcommand{\SymmetricBilinear}[2]{\left(#1, #2\right)} \newcommand{\InnerProduct}[2]{\left\langle#1, #2\right\rangle} \newcommand{\DotProduct}[2]{\left(#1 \bcdot #2\right)} \newcommand{\SpaceInnerProduct}[1]{\left(\SpaceLinear{#1}, \InnerProduct{\bcdot}{\bcdot}\right)} \newcommand{\SpaceHilbert}[1]{\mathcal{#1}} \newcommand{\SpaceLTwo}{\SpaceHilbert{L}_2} \newcommand{\SpaceLTwoDef}[2]{\SpaceLTwo\left(#1; #2\right)} \newcommand{\SpaceLInfty}{\SpaceHilbert{L}_\infty} \newcommand{\SpaceLTwoWeighted}{\SpaceLTwo^w} \newcommand{\SpaceSobolevK}[1]{\SpaceHilbert{H}^{#1}} \newcommand{\SpaceSobolevKDef}[3]{\SpaceSobolevK{#1}\left(#2 ; #3\right)} \newcommand{\Cont}{\operatorname{cont}} \newcommand{\SpaceCont}{\SpaceHilbert{C}} \newcommand{\SpaceContDef}[2]{\SpaceCont\left(#1 ; #2\right)} \newcommand{\SpaceContK}[1]{\SpaceCont^{#1}} \newcommand{\SpaceContKDef}[3]{\SpaceContK{#1}\left(#2; #3\right)} \newcommand{\SpaceContZero}{\SpaceContK{0}} \newcommand{\SpaceContInf}{\SpaceContK{\infty}} \newcommand{\SpaceContInfDef}[2]{\SpaceContKDef{\infty}{#1}{#2}} \newcommand{\SpaceContKBounded}[2]{\SpaceContK{#1}_{#2}} \newcommand{\SpaceContKBoundedDef}[3]{\SpaceCont_{b}^{#1}\left(#2 ; #3\right)} \newcommand{\SpaceLinearOperator}[1]{\mathscr{#1}} \newcommand{\SpaceLinearOperatorDef}[2]{\SpaceLinearOperator{L}\left(#1 ; #2\right)} \newcommand{\SpaceLinearOperatorBoundedDef}[2]{\SpaceLinearOperator{B}\left(#1 ; #2\right)} \newcommand{\SpaceLinearN}[1]{\SpaceLinear{#1}^h} \newcommand{\SpaceHilbertN}[1]{\SpaceHilbert{#1}^h} \newcommand{\SpaceVecRealN}[1]{\Reals^{#1}} \newcommand{\SpacePoly}[1]{\SpaceHilbert{P}^{#1}} \newcommand{\SpaceMatrixRealMN}[2]{\Reals^{#1\times#2}} \newcommand{\SpacePolyDef}[3]{\SpacePoly{#1}\left(#2 ; #3\right)} \newcommand{\Func}[1][f]{#1} \newcommand{\FuncAlt}[1][g]{#1} \newcommand{\FuncDef}[3]{#1 \SuchThat #2 \rightarrow #3} \newcommand{\FuncApprox}[1]{#1^h} \newcommand{\LinearOperator}[1]{\SpaceLinearOperator{#1}} \newcommand{\LinearOperatorDef}[3]{\FuncDef{\LinearOperator{#1}}{#2}{#3}} \newcommand{\Functional}[1]{\LinearOperator{#1}} \newcommand{\Projection}{\Pi} \newcommand{\VectorProjection}[2]{\Projection_{#1} {\left(#2\right)}} \newcommand{\Mat}[1]{\boldsymbol{#1}} \newcommand{\MatIJ}[3]{\left[#1\right]_{#2#3}} \newcommand{\MatIdRow}{m} \newcommand{\MatIdCol}{n} \newcommand{\NonZeroIndices}{\operatorname{\mathsf{nzi}}} \newcommand{\ColumnSelector}{\operatorname{\mathrm{col}}} \newcommand{\RowSelector}{\operatorname{\mathrm{row}}} \newcommand{\ColOf}[1]{\ColumnSelector_{#1}} \newcommand{\RowOf}[1]{\RowSelector_{#1}} \newcommand{\DiagonalMatrix}[1]{\QFO{\operatorname*{diag}}{#1}} \newcommand{\Rotation}{\Mat{R}} \newcommand{\Identity}{\Mat{I}} \newcommand{\KroneckerDeltaComp}{\delta} \newcommand{\KroneckerDelta}{\Mat{\delta}} \newcommand{\LeviCivita}{\Mat{\epsilon}} \newcommand{\Jacobian}{\Mat{J}} \renewcommand{\Vec}[1]{\boldsymbol{#1}} \newcommand{\VecChildOf}[2]{\QCO{#2}{#1}} \newcommand{\VecI}[2]{\{#1\}_{#2}} \newcommand{\ZeroVec}{\Vec{0}} \newcommand{\OneVec}{\Vec{1}} \newcommand{\ZeroMat}{\Mat{0}} \newcommand{\UnitNormalComp}{n} \newcommand{\UnitNormal}{\Vec{\UnitNormalComp}} \newcommand{\MacBracket}[1]{\langle#1\rangle} \newcommand{\IdentityTenSym}{\mathbb{I}} \newcommand{\BraKet}[1]{\langle#1\rangle} \newcommand{\FuncObjective}[1]{\QFO{\Func}{#1}} \newcommand{\FuncEqualityConstraints}[1]{\QFO{\Func[\Vec{g}]}{#1}} \newcommand{\VarDesign}{\Vec{\phi}} \newcommand{\VarState}[1]{\QFO{\Vec{u}}{#1}} \newcommand{\FuncLagrangian}[1]{\QFO{\mathscr{L}}{#1}} \newcommand{\FuncAugmentedLagrangian}[1]{\QFO{\mathscr{L}_A}{#1}} \newcommand{\VecLambdaLM}[1]{\QFO{\Vec{\lambda}}{#1}} \newcommand{\LambdaLM}[1]{\QFO{\lambda}{#1}} \newcommand{\SolutionLocalOpt}[1]{\left(#1\right)^*} \newcommand{\ProximalPoint}{\overbar{\VecLambdaLM{}}} \newcommand{\PenaltyParameter}{\rho} \newcommand{\Slacify}[1]{\QSB{#1}{s}} \newcommand{\Prod}[2]{\prod\limits_{#1}^{#2}} \newcommand{\ProdInline}[2]{\prod_{#1}^{#2}} \newcommand{\TensorProduct}{\otimes} \newcommand{\Sum}[2]{\sum\limits_{#1}^{#2}} \newcommand{\SumInline}[2]{\sum_{#1}^{#2}} \newcommand{\Rank}[1]{\operatorname{rank}(#1)} \newcommand{\Nullity}[1]{\operatorname{null}(#1)} \newcommand{\Image}{\operatorname{image}} \newcommand{\Range}{\operatorname{range}} \newcommand{\Inverse}[1]{\left(#1\right)^{-1}} \newcommand{\inverse}[1]{\overline{#1}} \newcommand{\Transpose}[1]{\left(#1\right)^{T}} \newcommand{\TransposeSimple}[1]{#1^{T}} \newcommand{\InvTrans}[1]{\left(#1\right)^{-T}} \newcommand{\Complement}[1]{\overbar{#1}} \newcommand{\Adjoint}[1]{\left(#1\right)^*} \newcommand{\OrthogonalComplement}[1]{\left(#1\right)^\perp} \newcommand{\Det}[1]{\QFO{\operatorname{det}}{#1}} \newcommand{\DCT}{\operatorname{DCT}} \newcommand{\IDCT}{\operatorname{IDCT}} \newcommand{\RealPart}[1]{\QFO{\mathfrak{R}}{#1}} \newcommand{\Trace}[1]{\QFO{\operatorname{tr}}{#1}} \newcommand{\Dev}[1]{\QFO{\operatorname{dev}}{#1}} \newcommand{\DevDef}[1]{\Dev{#1} \DefEq #1 - \frac{1}{3}\Trace{#1}\Identity} \newcommand{\dual}[1]{{\bar{#1}}} \newcommand{\symind}[1]{\textsc{#1}} \newcommand{\symmetrizer}{{S}} \newcommand{\BasisFuncCoeff}[2]{\QSB{#1}{#2}} \newcommand{\BasisVec}[2]{\QSB{#1}{#2}} \newcommand{\BasisVecChildOf}[3]{\SQFOCO{#1}{#2}{#3}{a}} \newcommand{\OrthogonalBasisVec}[2]{\SQFOCO{#1}{#2}{\perp}{a}} \newcommand{\OrthonormalBasisVec}[2]{\SQFOCO{\overbar{#1}}{#2}{\perp}{a}} \newcommand{\PolynomialDegree}{p} \newcommand{\BasisFuncId}{i} \newcommand{\BasisFuncIdAlt}{j} \newcommand{\BasisFuncIdAltAlt}{k} \newcommand{\BasisFunc}[3]{\SQFO{#1}{#2}{#3}} \newcommand{\PowerBasisFunc}[2]{\QCO{#2}{#1}} \newcommand{\LagrangeBasisFunc}[3]{\SQFOCO{\Func[L]}{#1}{#2}{#3}} \newcommand{\LagrangeBasisFuncNoArg}[2]{\SQCO{\Func[L]}{#1}{#2}} \newcommand{\LegendreBasisFunc}[3]{\SQFOCO{\Func[P]}{#1}{#2}{#3}} \newcommand{\LegendreBasisFuncNoArg}[2]{\SQCO{\Func[P]}{#1}{#2}} \newcommand{\PreNormalizedLegendreBasisFunc}[3]{\hat{\LegendreBasisFunc{#1}{#2}{#3}}} \newcommand{\ChebyshevBasisFunc}[2]{\SQFO{\Func[T]}{#1}{#2}} \newcommand{\ChebyshevBasisFuncNoArg}[1]{\SQCO{\Func[T]}{#1}{}} \newcommand{\BasisVecI}{\Vec{i}} \newcommand{\BasisVecJ}{\Vec{j}} \newcommand{\BasisVecK}{\Vec{k}} \newcommand{\Span}{\operatorname{span}} \newcommand{\Dim}[1]{\operatorname{dim}\left({#1}\right)} \newcommand{\Support}[1]{\operatorname{supp}(#1)} \newcommand{\SupportPos}[1]{\operatorname{supp}_{+}(#1)} \newcommand{\SumBasis}[4]{\Sum{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\SumInlineBasis}[4]{\SumInline{#1}{#2}{#3}_{#1}{#4}_{#1}} \newcommand{\BasisTransMatrix}[2]{\Mat{R}_{{#1}\rightarrow{#2}}} \newcommand{\ChebyshevZeros}[1]{\QSB{z}{#1}} \newcommand{\ChebyshevExtremizers}[1]{\QSB{t}{#1}} \newcommand{\BernToChebMat}{\Mat{T}} \newcommand{\Chebfun}[3]{\biggl(\, \sum_{#2=0}^{#1}{#3}_{#2}\ChebyshevBasisFuncNoArg{#2}\biggr)} \newcommand{\ChebfunVector}[1]{\left[#1\right]_c} \newcommand{\PowerBasisMat}[1]{\QCO{#1}{\Mat{M}}} \newcommand{\LagrangeBasisMat}[1]{\QCO{#1}{\Mat{L}}} \newcommand{\LegendreBasisMat}[1]{\QCO{#1}{\Mat{P}}} \newcommand{\BernsteinBasisMat}[1]{\QCO{#1}{\Mat{B}}} \newcommand{\ChebyshevBasisMat}[1]{\QCO{#1}{\Mat{T}}} \newcommand{\EvaluateTwoLimits}[3]{#1\biggr\rvert_{#2}^{#3}} \newcommand{\EvaluateOneLimit}[2]{\left.#1\right\rvert_{#2}} \newcommand{\Limit}[2]{\lim\limits_{#1\rightarrow #2}} \newcommand{\LimitInline}[2]{\lim_{#1\rightarrow #2}} \newcommand{\DNE}{\operatorname{DNE}} \newcommand{\TotalDeriv}{D} \newcommand{\LagrangeDeriv}[1]{{#1}'} \newcommand{\KthLagrangeDeriv}[2]{{#1}^{(#2)}} \newcommand{\LeibnizSubDeriv}[2]{{#1}_{,#2}} \newcommand{\LeibnizFracDeriv}[2]{\frac{d}{d#2} #1} \newcommand{\KthLeibnizFracDeriv}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1](#3)} \newcommand{\KthLeibnizFracSpecificFunction}[3]{\frac{d^{#2}}{d#3^{#2}}\Func[#1]} \newcommand{\Differential}[1][x]{\, \operatorname{d}{#1}} \newcommand{\FrechetDeriv}[2]{D{#1}\left(#2\right)} \newcommand{\GateauxDirectionBold}[1]{\Vec{\delta}#1} \newcommand{\GateauxDirection}[1]{\delta #1} \newcommand{\GateauxDerivBold}[2]{D#1(#2; \GateauxDirectionBold{#2})} \newcommand{\GateauxDeriv}[2]{D#1(#2; \GateauxDirection{#2})} \newcommand{\GateauxDerivWithDirection}[3]{D#1\left(#2 \ ;\ #3\right)} \newcommand{\GateauxDerivPartial}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\KthGateauxDerivPartial}[3]{\frac{\partial^{#3} #1}{\partial #2^{#3}}} \newcommand{\Grad}[2]{\boldsymbol{\nabla}^{#1} #2} \newcommand{\Jac}{\Mat{J}} \newcommand{\Div}[2]{\boldsymbol{\nabla}^{#1} \bcdot #2} \newcommand{\Laplace}[2]{\boldsymbol{\Delta}^{#1} #2} \newcommand{\TaylorSeries}[2]{\mathcal{T}\left[\Func[#1]\right](#2)} \newcommand{\TruncatedTaylorSeries}[3]{\mathcal{T}_{#1}\left[\Func[#2]\right]\left(#3\right)} \newcommand{\Int}[2]{\int\limits_{#1}^{#2}} \newcommand{\IntDomain}[1]{\int\limits_{#1}} \newcommand{\IntInline}[2]{\int_{#1}^{#2}} \newcommand{\IntDomainInline}[1]{\int_{#1}} \newcommand{\DetJacobian}{\Det{\Jac}} \newcommand{\BigO}[1]{\mathcal{O}\left(#1\right)} \newcommand{\Flops}{\operatorname{flops}} \newcommand{\Interpolant}[2]{\mathcal{#1}^{h}} \newcommand{\ErrorApproxComp}{e} \newcommand{\ErrorApproxTen}{\Vec{\ErrorApproxComp}} \newcommand{\ErrorNewton}{\epsilon} \newcommand{\ApproximateIntegrationError}[1]{\tilde{e}_{#1}} \newcommand{\AnalyticApproximateIntegrationErrorDifference}[1]{\overbar{e}_{#1}} \newcommand{\erf}[1]{\mathrm{erf}\left(#1\right)} \newcommand{\erfc}[1]{\mathrm{erfc}\left(#1\right)} \newcommand{\HeavisideFunc}[1]{\mathit{H}\left(#1\right)} \newcommand{\DiracDelta}[2]{\delta_{D}\left(#1 - #2\right)}$$\newcommand{\SymbolParentModifier}[1]{\overbar{#1}} \newcommand{\SymbolParamModifier}[1]{\hat{#1}} \newcommand{\SymbolSubmeshModifier}{} \newcommand{\SymbolDomain}{\Domain} \newcommand{\SymbolDomainBdry}{\DomainBdry} \newcommand{\SymbolBernstein}{B} \newcommand{\SymbolBasisUspline}{N} \newcommand{\SymbolUspline}{U} \newcommand{\SymbolUsplineLower}{u} \newcommand{\SymbolGrevillePoint}{g} \newcommand{\SymbolDim}{d} \newcommand{\SymbolArbitraryCoeffUspline}{c} \newcommand{\SymbolArbitraryCoeffUsplineAlt}{\beta} \newcommand{\SymbolArbitraryCoeffBernstein}{c} \newcommand{\SymbolDistance}{\operatorname{dist}} \newcommand{\AdjacencyId}{n} \newcommand{\DimId}{k} \newcommand{\DimIdAlt}{n} \newcommand{\ArbDim}{\DimId} \newcommand{\ArbDimAlt}{\DimIdAlt} \newcommand{\DimIdSet}{\Set{\DimId}} \newcommand{\DimIdOne}{\DimId_0} \newcommand{\DimIdTwo}{\DimId_1} \newcommand{\DimIdThree}{\DimId_2} \newcommand{\TopoAlpha}[1]{\alpha_{#1}} \newcommand{\TopoPhi}[1]{\phi_{#1}} \newcommand{\UTopology}{\mathsf{U}} \newcommand{\Map}[1]{\mathsf{#1}} \newcommand{\OMap}[1]{\mathsf{#1}} \newcommand{\UOMap}[1]{\UTopology(#1)} \newcommand{\Topology}{\mathsf{T}} \newcommand{\DartsOf}[1]{\operatorname*{\mathsf{D}}\left(#1\right)} \newcommand{\DartIndex}[1]{\operatorname*{\mathsf{ID}}\left(#1\right)} \newcommand{\OR}{\operatorname{OR}} \newcommand{\AND}{\operatorname{AND}} \newcommand{\XOR}{\operatorname{XOR}} \newcommand{\Decomp}{\operatorname{dec}} \newcommand{\ParentDomain}{\SymbolParentModifier{\SymbolDomain}} \newcommand{\ParentDomainChart}{\SymbolParentModifier{\Vec{\phi}}} \newcommand{\ParentDomainChartFunctionOf}[2]{\QuantityFunctionOf{{\ParentDomainChart}^{#1}}{#2}} \newcommand{\ParentDim}{\SymbolDim} \newcommand{\ParentCoord}{\xi} \newcommand{\ParentCoordVec}{\Vec{\ParentCoord}} \newcommand{\ParentS}{\ParentCoord_0} \newcommand{\ParentT}{\ParentCoord_1} \newcommand{\ParentU}{\ParentCoord_2} \newcommand{\ParentBarycentric}[1]{\ParentCoord_{#1}} \newcommand{\ParentGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}} \newcommand{\ParentGrevillePointFunctionOf}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParentModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParentGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParentModifier{G}}}{#1}} \newcommand{\BernsteinBasisFuncId}{\BasisFuncId} \newcommand{\BernsteinBasisFuncIdAlt}{\BasisFuncIdAlt} \newcommand{\BernsteinBasisFuncIdAltAlt}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdB}{\BasisFuncIdAltAlt} \newcommand{\BernsteinBasisFuncIdOne}{\BernsteinBasisFuncId_0} \newcommand{\BernsteinBasisFuncIdTwo}{\BernsteinBasisFuncId_1} \newcommand{\BernsteinBasisFuncIdSet}{\Set{\BernsteinBasisFuncId}} \newcommand{\BernsteinBasisFuncIndexTuple}{\BernsteinBasisFuncIdSet} \newcommand{\BernsteinBasisFuncIndexTupleAlt}{\Set{\BernsteinBasisFuncIdAlt}} \newcommand{\BernsteinBasisFuncIndexTupleAltAlt}{\Set{\BernsteinBasisFuncIdAltAlt}} \newcommand{\BernsteinBasisFuncIndexTupleB}{\Set{\BernsteinBasisFuncIdB}} \newcommand{\BernsteinDegree}{\PolynomialDegree} \newcommand{\BernsteinDegreeAlt}{q} \newcommand{\BernsteinDegreeTuple}{\Tuple{\BernsteinDegree}} \newcommand{\BernsteinDegreeElevMatComp}{D} \newcommand{\BernsteinDegreeElevMat}{\Mat{\BernsteinDegreeElevMatComp}} \newcommand{\CompletePolynomial}[1]{\AbsoluteValue{#1}} \newcommand{\BernsteinBasisFunc}{\SymbolBernstein} \newcommand{\BernsteinBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBernstein}}} \newcommand{\BernsteinBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\BernsteinBasisFuncVec{#1}}{#2}} \newcommand{\BernsteinBasisFuncDetailed}[2]{\BernsteinBasisFunc_{#1}^{#2}} \newcommand{\BernFuncLowerDimCell}[2]{\BernsteinBasisFunc^{#1}_{#2}} \newcommand{\BernFuncInterf}[1]{\BernFuncLowerDimCell{\Interface}{#1}} \newcommand{\BernsteinSpace}{\SpaceHilbert{\SymbolBernstein}} \newcommand{\BernsteinRestriction}[2]{#1\vert_{#2}} \newcommand{\Bezier}{B\'ezier} \newcommand{\MeshTopo}{\boldsymbol{\textsf{M}}} \newcommand{\MeshSize}{h} \newcommand{\MeshBezier}{\boldsymbol{\textsf{B}}} \newcommand{\CellArbitrary}[1]{\Set{#1}} \newcommand{\Cell}{\CellArbitrary{c}} \newcommand{\CellAlpha}{\CellArbitrary{a}} \newcommand{\CellBeta}{\CellArbitrary{b}} \newcommand{\CellGamma}{\CellArbitrary{c}} \newcommand{\CellToTheLeft}{\CellAlpha} \newcommand{\CellToTheRight}{\CellBeta} \newcommand{\CellBoundary}[1]{\partial #1} \newcommand{\CellSet}[1]{\Set{C}^{#1}} \newcommand{\CellSetAdjacent}[1]{\Set{ADJ}^{#1}} \newcommand{\CellSetAdjacentFunctionOf}[2]{\QuantityFunctionOf{\CellSetAdjacent{#1}}{#2}} \newcommand{\NRing}[1]{\QuantitySubscriptedBy{\operatorname{ring}}{#1}} \newcommand{\NRingFunctionOf}[2]{\SQFO{\operatorname{ring}}{#1}{#2}} \newcommand{\CellSetCardinal}[1]{\QuantityFunctionOf{\Set{CRD}}{#1}} \newcommand{\CellSetSupport}[1]{\Support{#1}} \newcommand{\Elem}{\Set{E}} \newcommand{\Interface}{\Set{I}} \newcommand{\Smoothness}{\vartheta} \newcommand{\SmoothnessVar}{\rho} \newcommand{\SmoothnessSet}{\Set{\Smoothness}} \newcommand{\InterfaceSmoothness}[1]{\QuantityChildOf{#1}{\Smoothness}} \newcommand{\MaxPerpCont}[1]{\QuantityFunctionOf{\Smoothness^{\perp}_{\max}}{#1}} \newcommand{\Face}{\Set{f}} \newcommand{\Edge}{\Set{e}} \newcommand{\Vertex}{\Set{v}} \newcommand{\CodimTwoCell}{\Set{w}} \newcommand{\KCell}{\Cell^\ArbDim} \newcommand{\KPlusOneCell}{\Cell^{\ArbDim+1}} \newcommand{\KCellAlpha}{\CellAlpha^\ArbDim} \newcommand{\KPlusOneCellBeta}{\CellBeta^{\ArbDim+1}} \newcommand{\MaxParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\max}}{#1}} \newcommand{\MinParallelDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\parallel}_{\min}}{#1}} \newcommand{\MaxPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\max}}{#1}} \newcommand{\MinPerpDegree}[1]{\QuantityFunctionOf{\BernsteinDegree^{\perp}_{\min}}{#1}} \newcommand{\MinParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\min}}{#1,#2}} \newcommand{\MaxParallelPerpDegree}[2]{\QuantityFunctionOf{\BernsteinDegree^{\parallel,\perp}_{\max}}{#1,#2}} \newcommand{\DegreeParallel}{\BernsteinDegree^{\parallel}} \newcommand{\DegreeParallelToEdge}[2]{\DegreeParallel_{#1}(#2)} \newcommand{\DegreePerp}{\BernsteinDegree^{\perp}} \newcommand{\DegreePerpToInterface}[2]{\DegreePerp_{#1}(#2)} \newcommand{\DegreeTupleParallelToKCell}[2]{\Tuple{\BernsteinDegree}^{\parallel}_{#1}(#2)} \newcommand{\ChangeInDegree}[2]{\Delta(\BernsteinDegree)_{#1}^{#2}} \newcommand{\IndexSet}{\Set{ID}} \newcommand{\IndexSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSet}{#1}} \newcommand{\CompositeBVUnionIndexSet}[1]{\QuantityFunctionOf{\Set{UID}}{#1}} \newcommand{\IndexSetPosCoeffs}[1]{\QuantityFunctionOf{\Set{ID}}{#1}} \newcommand{\IndexSetSet}{\boldsymbol{\IndexSet}} \newcommand{\IndexSetSetFunctionOf}[1]{\QuantityFunctionOf{\IndexSetSet}{#1}} \newcommand{\IndexSetOnMeshBezier}{\IndexSetFunctionOf{\MeshBezier}} \newcommand{\IndexOnCell}[2]{\QuantityChildOf{#1}{#2}} \newcommand{\IndexOnCellIJ}[3]{\QuantityChildOf{#1}{\TupleRoster{#2,#3}}} \newcommand{\CellFromQuantity}[1]{\QuantityFunctionOf{\operatorname{cell}}{#1}} \newcommand{\ExtractionOp}[1]{\QuantityChildOf{#1}{\Mat{C}}} \newcommand{\ExtractionOpFunctionOf}[2]{\QuantityFunctionOf{\ExtractionOp{#1}}{#2}} \newcommand{\ReconstructOp}[1]{\QuantityChildOf{#1}{\Mat{R}}} \newcommand{\ReconstructOpFunction}[2]{\QuantityFunctionOf{\ReconstructOp{#1}}{#2}} \newcommand{\Gramian}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Mat{G}}{#2}}} \newcommand{\BernsteinSpaceOnMeshBezier}{\QCO{\MeshBezier}{\BernsteinSpace}} \newcommand{\ii}{\IndexOnCell{}{\BernsteinBasisFuncIndexTuple}} \newcommand{\jj}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAlt}} \newcommand{\kk}{\IndexOnCell{}{\BernsteinBasisFuncIndexTupleAltAlt}} \newcommand{\ParamDomain}{\SymbolParamModifier{\SymbolDomain}} \newcommand{\ParamDomainOnCell}{\QuantityChildOf{\Cell}{\ParamDomain}} \newcommand{\ParamDomainBdry}{\SymbolParamModifier{\SymbolDomainBdry}} \newcommand{\ParamDomainChart}[1]{\Vec{\phi}^{#1}} \newcommand{\ParamDomainChartFunctionOf}[2]{\QuantityFunctionOf{\ParamDomainChart{#1}}{#2}} \newcommand{\ParamDim}{\SymbolDim} \newcommand{\ParamCoordSimple}{s} \newcommand{\ParamCoord}[1]{\QCO{#1}{s}} \newcommand{\ParamCoordVecSimple}{\Vec{s}} \newcommand{\ParamCoordVec}[1]{\QCO{#1}{\Vec{\ParamCoordSimple}}} \newcommand{\ParamDomainBdryParamCoord}{\ParamCoord{\ParamDomainBdry}} \newcommand{\ParamDomainBdryParamCoordVec}{\ParamCoordVec{\ParamDomainBdry}} \newcommand{\ParamCoordVecSet}{\boldsymbol{\Set{S}}} \newcommand{\ParamS}{\ParamCoord{}_0} \newcommand{\ParamT}{\ParamCoord{}_1} \newcommand{\ParamU}{\ParamCoord{}_2} \newcommand{\ParamBarycentric}[1]{\lambda_{#1}} \newcommand{\ParamLength}{\ell} \newcommand{\ParamLengthLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLength}} \newcommand{\ParamLengthRight}{\QuantityChildOf{\CellToTheRight}{\ParamLength}} \newcommand{\ParamLengthInS}{\ParamLength_{0}} \newcommand{\ParamLengthInT}{\ParamLength_{1}} \newcommand{\ParamLengthLeftS}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthLeftT}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthRightS}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthRightT}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\ParamLengthInSLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInS}} \newcommand{\ParamLengthInTLeft}{\QuantityChildOf{\CellToTheLeft}{\ParamLengthInT}} \newcommand{\ParamLengthInSRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInS}} \newcommand{\ParamLengthInTRight}{\QuantityChildOf{\CellToTheRight}{\ParamLengthInT}} \newcommand{\BernsteinDegreeInS}{\BernsteinDegree_{0}} \newcommand{\BernsteinDegreeInT}{\BernsteinDegree_{1}} \newcommand{\BernsteinDegreeLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\BernsteinDegreeInSLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInSRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInS}} \newcommand{\BernsteinDegreeInTLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeInTRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegreeInT}} \newcommand{\BernsteinDegreeBarycentricLeft}{\QuantityChildOf{\CellToTheLeft}{\BernsteinDegree}} \newcommand{\BernsteinDegreeBarycentricRight}{\QuantityChildOf{\CellToTheRight}{\BernsteinDegree}} \newcommand{\ParamGrevillePoint}[2]{\QuantityChildOf{#1}{\QuantityFunctionOf{\Set{\SymbolParamModifier{\SymbolGrevillePoint}}}{#2}}} \newcommand{\ParamGrevillePointSet}[1]{\QuantityFunctionOf{\Set{\SymbolParamModifier{G}}}{#1}} \newcommand{\ParamDomainOnMeshBezier}{\QuantityChildOf{\MeshBezier}{\ParamDomain}} \newcommand{\BernsteinTraceMappingMat}{\Mat{M}} \newcommand{\NormalParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\perp}_{#1}}{#2}} \newcommand{\ParallelParamCoordSet}[2]{\QuantityFunctionOf{\ParamCoordVecSimple^{\parallel}_{#1}}{#2}} \newcommand{\Submesh}{\boldsymbol{\textsf{K}}} \newcommand{\SubmeshDomain}{\SymbolSubmeshModifier{\SymbolDomain}} \newcommand{\SubmeshDomainBdry}{\SymbolSubmeshModifier{\SymbolDomainBdry}} \newcommand{\SubmeshDomainChart}[1]{\QuantityChildOf{#1}{\Vec{\varphi}}} \newcommand{\SubmeshDomainChartFunctionOf}[2]{\QuantityFunctionOf{\SubmeshDomainChart{#1}}{#2}} \newcommand{\SubmeshDomainParameter}{\mathsf{\alpha}} \newcommand{\SubmeshDomainParameterVec}{\Vec{\SubmeshDomainParameter}} \newcommand{\SubmeshGrevillePoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolSubmeshModifier{\SymbolGrevillePoint}}}} \newcommand{\SubmeshGrevillePointFunctionOf}[2]{\QuantityFunctionOf{\SubmeshGrevillePoint{#1}}{#2}} \newcommand{\SubmeshGrevilleMaxPoint}[1]{\QuantityChildOf{#1}{\Set{\SymbolGrevillePoint}}_{\max}} \newcommand{\SubmeshGrevilleMaxPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\max}} \newcommand{\SubmeshGrevilleMinPointSet}[1]{\QuantityChildOf{#1}{\Set{G}}_{\min}} \newcommand{\SubmeshGrevilleMaxPointLeft}{\SubmeshGrevilleMaxPoint{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointRight}{\SubmeshGrevilleMaxPoint{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointIntersection}{\SubmeshGrevilleMaxPoint{\Interface}} \newcommand{\SubmeshGrevilleMinPointSetLeft}{\SubmeshGrevilleMinPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMinPointSetRight}{\SubmeshGrevilleMinPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetLeft}{\SubmeshGrevilleMaxPointSet{\CellAlpha}} \newcommand{\SubmeshGrevilleMaxPointSetRight}{\SubmeshGrevilleMaxPointSet{\CellBeta}} \newcommand{\SubmeshGrevilleMaxPointSetIntersection}{\SubmeshGrevilleMaxPointSet{\Interface}} \newcommand{\SubmeshGrevillePointSet}{\Set{\SymbolSubmeshModifier{G}}} \newcommand{\SubmeshGrevillePointSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSet}{#1}} \newcommand{\SubmeshGrevillePointSetLeft}{\Set{\SymbolSubmeshModifier{GA}}} \newcommand{\SubmeshGrevillePointSetRight}{\Set{\SymbolSubmeshModifier{GB}}} \newcommand{\SubmeshGrevillePointSetElement}[1]{\Set{\SymbolSubmeshModifier{GE}}_{#1}} \newcommand{\SubmeshGrevillePointSetIntersect}{\Set{\SymbolSubmeshModifier{GI}}} \newcommand{\SubmeshGrevillePointSetUnion}[1]{\QuantityFunctionOf{\Set{\SymbolSubmeshModifier{GU}}}{#1}} \newcommand{\SubmeshGrevillePointSetSet}{\boldsymbol{\SubmeshGrevillePointSet}} \newcommand{\SubmeshGrevillePointSetSetFunctionOf}[1]{\QuantityFunctionOf{\SubmeshGrevillePointSetSet}{#1}} \newcommand{\SubmeshGrevillePointSetSetLeft}{\boldsymbol{\SymbolSubmeshModifier{\Set{GA}}}} \newcommand{\SubmeshGrevillePointSetSetRight}{\boldsymbol{\SymbolSubmeshModifier{\Set{GB}}}} \newcommand{\SubmeshGrevillePointSetSetElement}[2]{\QuantityFunctionOf{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1}}{#2}} \newcommand{\SubmeshGrevilleDifferenceVectorsSet}{\Delta \SubmeshGrevillePointSetFunctionOf{a}} \newcommand{\SubmeshGrevilleDifferenceVectorsSetRight}{\Delta\SubmeshGrevilleMaxPointSetRight} \newcommand{\SubmeshGrevilleDifferenceVector}{\Delta\SubmeshGrevilleMaxPoint{a}} \newcommand{\SubmeshGrevilleDifferenceVectorLeft}{\Delta\SubmeshGrevilleMaxPointLeft} \newcommand{\SubmeshGrevilleDifferenceVectorRight}{\Delta\SubmeshGrevilleMaxPointRight} \newcommand{\SubmeshGrevilleDistanceToCell}[2]{\QuantityFunctionOf{\SymbolDistance}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCell}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMin}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\min}}{#1, #2}} \newcommand{\SubmeshPerpIndexDistanceToCellMax}[2]{\QuantityFunctionOf{\operatorname{id}\SymbolDistance^\perp_{\max}}{#1, #2}} \newcommand{\SubmeshPerpProjection}[1]{\Projection^{\perp}_{#1}} \newcommand{\SubmeshPerpProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshPerpProjection{#1}}{#2}} \newcommand{\SubmeshParallelProjection}[1]{\Projection^{\parallel}_{#1}} \newcommand{\SubmeshParallelProjectionFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelProjection{#1}}{#2}} \newcommand{\SubmeshStarProjection}[2]{\QuantityFunctionOf{\Projection^{*}_{#1}}{#2}} \newcommand{\SubmeshPerpEquivalence}[1]{\varpi^{\perp}_{#1}} \newcommand{\SubmeshParallelEquivalence}[1]{\varpi^{\parallel}_{#1}} \newcommand{\SubmeshParallelEquivalenceFunctionOf}[2]{\QuantityFunctionOf{\SubmeshParallelEquivalence{#1}}{#2}} \newcommand{\SubmeshStarEquivalence}[1]{\varpi^{*}_{#1}} \newcommand{\AlignedSet}{{\boldsymbol{\textsf{Align}}}} \newcommand{\AlignedSetSet}{{\boldsymbol{\textsf{ALIGN}}}} \newcommand{\AlignmentSetOfSetsLeft}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetOfSetsRight}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \SubmeshGrevillePoint{\Interface}{}}^{\parallel}} \newcommand{\AlignmentSetForInterfaceGrevillePoint}{\AlignedSet_{\SubmeshGrevillePoint{\Interface}{}}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRow}{\Set{NZ}} \newcommand{\IndexSetOfNonZeroEntriesInMapMatOnRowFunctionOf}[2]{\QuantityFunctionOf{\IndexSetOfNonZeroEntriesInMapMatOnRow_{#1}}{#2}} \newcommand{\AlignmentSetOfSetsOnLowerDCell}[2]{\boldsymbol{\SymbolSubmeshModifier{\Set{GE}}}_{#1,#2}^{\parallel}} \newcommand{\AlignmentSetOfSetsLeftThreeD}{\SubmeshGrevillePointSetSetLeft{}_{\Interface, \ii}^{\parallel}} \newcommand{\AlignmentSetOfSetsRightThreeD}{\SubmeshGrevillePointSetSetRight{}_{\Interface, \ii}^{\parallel}} \newcommand{\KPlusOneCellAdjacentIndexedSubmeshDomain}{\QuantityChildOf{\CellAlpha\CellBeta}{\SubmeshDomain}} \newcommand{\StructuredSymbol}{\square} \newcommand{\StructuredSubmesh}[1]{\Submesh^{\StructuredSymbol}_{#1}} \newcommand{\ToGlobalDartOp}{\operatorname*{\mathsf{G}}} \newcommand{\ProlongationMat}{\Mat{P}} \newcommand{\RestrictionMat}{\Mat{R}} \newcommand{\MeshUspline}{\boldsymbol{\textsf{\SymbolUspline}}} \newcommand{\SetNeighborhoodOfInteraction}[1]{\QuantityFunctionOf{\textsf{NI}}{#1}} \newcommand{\Ray}{\Set{r}} \newcommand{\RayHead}{\Edge^{h}} \newcommand{\RayTail}{\Vec{t}} \newcommand{\RayTailId}{j} \newcommand{\RayTailIdOne}{\RayTailId_0} \newcommand{\RayTailIdTwo}{\RayTailId_1} \newcommand{\RayTailOrigin}{\textsf{o}} \newcommand{\RayTailEdge}{\Edge} \newcommand{\RayTailVertexMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RayTailEdgeMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RaySkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RaySmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RayDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RayContinuityTransition}{\Set{cr}} \newcommand{\RayDegreeTransition}{\Set{dr}} \newcommand{\RayTailSize}{\Size{\RayTail}} \newcommand{\RayTailTargetSize}{n} \newcommand{\RayIsTruncated}{\Set{trunc}} \newcommand{\RayAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RayStartingBernIndex}{\RayAlgBernIndexVariable_{\RayHead}} \newcommand{\BernIndexOnSpecificRayTailEdge}[1]{\RayAlgBernIndexVariable_{#1}} \newcommand{\Ribbon}{\Set{r}} \newcommand{\RibbonHead}{\Interface^{h}} \newcommand{\RibbonTail}{\Vec{t}} \newcommand{\RibbonTailId}{j} \newcommand{\RibbonTailIdOne}{\RibbonTailId_0} \newcommand{\RibbonTailIdTwo}{\RibbonTailId_1} \newcommand{\RibbonTailOrigin}{\textsf{o}} \newcommand{\RibbonTailInterf}{\Interface} \newcommand{\RibbonTailCodimTwoCellMaxContinuity}[1]{\Smoothness_{#1}^{\max}} \newcommand{\RibbonTailInterfMinDegree}[1]{\BernsteinDegree_{#1}^{\min}} \newcommand{\RibbonSkeleton}[1]{\operatorname{skel}(#1)} \newcommand{\RibbonSmoothness}[2]{\Smoothness_{#1}^{#2}} \newcommand{\RibbonDegree}[2]{\BernsteinDegree_{#1}^{#2}} \newcommand{\RibbonContinuityTransition}{\Set{cr}} \newcommand{\RibbonDegreeTransition}{\Set{dr}} \newcommand{\RibbonTailSize}{\Size{\RibbonTail}} \newcommand{\RibbonTailTargetSize}{n} \newcommand{\RibbonIsTruncated}{\Set{trunc}} \newcommand{\RibbonAlgBernIndexVariable}{\BernsteinBasisFuncIdSet} \newcommand{\RibbonStartingBernIndex}{\RibbonAlgBernIndexVariable_{\RibbonHead}} \newcommand{\BernIndexOnSpecificRibbonTailInterf}[1]{\RibbonAlgBernIndexVariable_{#1}} \newcommand{\ParamDomainOnMeshUspline}{\QuantityChildOf{\MeshUspline}{\ParamDomain}} \newcommand{\UsplineSpace}{\SpaceHilbert{\SymbolUspline}} \newcommand{\UsplineBasisFunc}{\SymbolBasisUspline} \newcommand{\UsplineBasisFuncDetailed}[2]{\UsplineBasisFunc^{#1}_{#2}} \newcommand{\UsplineBasisFuncSet}{\Set{UF}} \newcommand{\UsplineBasisFuncSetFunctionOf}[1]{\QuantityFunctionOf{\UsplineBasisFuncSet}{#1}} \newcommand{\UsplineBasisFuncVec}[1]{\QuantityChildOf{#1}{\Vec{\SymbolBasisUspline}}} \newcommand{\UsplineBasisFuncVecFunctionOf}[2]{\QuantityFunctionOf{\UsplineBasisFuncVec{#1}}{#2}} \newcommand{\UsplineBasisFuncSetOnMeshBezier}{\QuantityFunctionOf{\Set{UF}}{\MeshBezier}} \newcommand{\UsplineBasisFuncSetOnMeshUspline}{\QuantityFunctionOf{\Set{UF}}{\MeshUspline}} \newcommand{\UsplineBasisFuncSetSupport}[1]{\Support{\UsplineBasisFuncSetFunctionOf{#1}}} \newcommand{\UsplineBasisFuncId}{A} \newcommand{\UsplineBasisFuncIdVec}{\Vec{A}} \newcommand{\UsplineBasisFuncIdAlt}{B} \newcommand{\UsplineBasisFuncIdLocal}{a} \newcommand{\UsplineBasisFuncIdOne}{\UsplineBasisFuncId_0} \newcommand{\UsplineBasisFuncIdTwo}{\UsplineBasisFuncId_1} \newcommand{\UsplineBasisFuncNormalized}{\bar{\SymbolBasisUspline}} \newcommand{\UsplineBasisFuncParam}[1]{\UsplineBasisFuncDetailed{\MeshBezier}{#1}} \newcommand{\UsplineDegree}{q} \newcommand{\UsplineNullVectorCoeff}{u} \newcommand{\UsplineNullVector}{\Vec{\UsplineNullVectorCoeff}} \newcommand{\UsplineNullVectorIds}{\Set{id}} \newcommand{\UsplineNullVectorSet}{\boldsymbol{\textsf{UV}}} \newcommand{\UsplineNullVectorSetOfIndexSets}{\boldsymbol{\textsf{UI}}} \newcommand{\UsplineNullVectorSetOnMeshBezier}{\NullVectorSetFunctionOf{\MeshBezier}} \newcommand{\UsplineNullVectorSetOnMeshUspline}{\QuantityFunctionOf{\UsplineNullVectorSet}{\MeshUspline}} \newcommand{\UsplineSpaceOnMeshUspline}{\QCO{\MeshUspline}{\UsplineSpace}} \newcommand{\UsplineCellToGlobalBasisFuncIndexMap}[1]{\operatorname{ucg}(#1)} \newcommand{\UsplineCellToGlobalBasisFuncIndexMapDef}{\FuncDef{\operatorname{ucg}}{\MeshBezier\times\Integers}{\Integers}} \newcommand{\BernsteinBasisFuncCoeff}{\SymbolArbitraryCoeffBernstein} \newcommand{\BernsteinBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffBernstein}}}{\MeshBezier}} \newcommand{\BernsteinBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffBernstein}}{\MeshBezier}} \newcommand{\UsplineBasisFuncCoeff}{\SymbolArbitraryCoeffUspline} \newcommand{\UsplineBasisFuncCoeffAlt}{\SymbolArbitraryCoeffUsplineAlt} \newcommand{\UsplineBasisFuncCoeffsSet}{\QuantityRelatedTo{\boldsymbol{\Set{\SymbolArbitraryCoeffUspline}}}{\MeshUspline}} \newcommand{\UsplineBasisFuncCoeffsVec}{\QuantityRelatedTo{\Vec{\SymbolArbitraryCoeffUspline}}{\MeshUspline}} \newcommand{\ContiguousIndexMap}[1]{i_{#1}} \newcommand{\Constraint}{R} \newcommand{\ConstraintCoeff}{r} \newcommand{\ConstraintCoeffsSet}{\boldsymbol{\Set{\ConstraintCoeff}}} \newcommand{\ConstraintCoeffsVec}{\Vec{\ConstraintCoeff}} \newcommand{\ConstraintSet}{\Set{\Constraint}} \newcommand{\ConstraintSetFunctionOf}[1]{\QuantityFunctionOf{\ConstraintSet}{#1}} \newcommand{\ConstraintSetOnMeshBezier}{\ConstraintSetFunctionOf{\MeshBezier}} \newcommand{\ConstraintMat}{\Mat{\Constraint}} \newcommand{\ConstraintMatFunctionOf}[1]{\QuantityFunctionOf{\ConstraintMat}{#1}} \newcommand{\ConstraintMatOnMeshBezier}{\ConstraintMatFunctionOf{\MeshBezier}} \newcommand{\SparsestPossibleBasisOnCell}[1]{\QFO{\Set{N}}{#1}} \newcommand{\NullVectorCoeff}[1]{#1} \newcommand{\NullVector}{\Vec{v}} \newcommand{\NullVectorFunctionOf}[1]{\QuantityFunctionOf{\NullVector}{#1}} \newcommand{\NullVectorArbitrary}[1]{\Vec{#1}} \newcommand{\KCellNullVectorForCellAlpha}{\NullVectorArbitrary{n}_{\KCellAlpha}} \newcommand{\KPlusOneCellNullVectorForCellBeta}{\NullVectorArbitrary{n}_{\KPlusOneCellBeta}} \newcommand{\NullVectorSet}{\boldsymbol{\textsf{BV}}}%changed from mathsf \newcommand{\NullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSet}{#1}}%changed from mathsf \newcommand{\CompositeNullVectorSet}{\NullVectorSet^{\prime\prime}} \newcommand{\CompositeNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\CompositeNullVectorSet}{#1}} \newcommand{\SimpleNullVectorSet}{\NullVectorSet^{\prime}} \newcommand{\SimpleNullVectorSetFunctionOf}[1]{\QuantityFunctionOf{\SimpleNullVectorSet}{#1}} \newcommand{\InterfaceNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}}{#1}} \newcommand{\InterfaceNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{IBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOfIndexSets}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BI}}}{#1}} \newcommand{\NullVectorSetGrevilleSets}{\boldsymbol{\textsf{BG}}}%changed from mathsf \newcommand{\NullVectorSetGrevilleSetsFunctionOf}[1]{\QuantityFunctionOf{\NullVectorSetGrevilleSets}{#1}}%changed from mathsf \newcommand{\NullVectorSetSubordinateToNullVector}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}}{#1}} \newcommand{\NullVectorSetSubordinateToNullVectorOnCell}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{SBV}}_{#1}}{#2}} \newcommand{\NullVectorSetOnBdryOfNullVector}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{BD}}_{#1}}{#2}} \newcommand{\NullVectorEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBV}}}{#1}} \newcommand{\NullVectorIndexEquivClass}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{EBI}}}{#1}} \newcommand{\NullVectorGrevilleEquivClass}{\boldsymbol{\textsf{EBG}}}%changed from mathsf \newcommand{\NullVectorGrevilleEquivClassFunctionOf}[1]{\QuantityFunctionOf{\NullVectorGrevilleEquivClass}{#1}}%changed from mathsf \newcommand{\NullVectorExpansionSet}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{XBV}}}{#1,#2}} \newcommand{\NullSpaceOperatorForm}[1]{\QuantityFunctionOf{\SpaceHilbert{N}}{#1}} \newcommand{\NullSpaceOperatorFormOnMeshBezier}{\NullSpaceOperatorForm{\MeshBezier}} \newcommand{\NullSpaceVectorForm}{\Set{N}} \newcommand{\NullSpaceVectorFormFunctionOf}[1]{\QuantityFunctionOf{\NullSpaceVectorForm}{#1}} \newcommand{\NullVectorGrevillePointSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{BV}}}{#1}} \newcommand{\DegSmoothDiff}[2]{\delta_{#1}^{#2}} \newcommand{\FaceEdgeDiff}{\Set{t}} \newcommand{\FaceEdgeDiffSet}[1]{\Set{T}_{#1}} \newcommand{\PerpTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\perp}{#1}} \newcommand{\ParallelTuple}[1]{\QuantityFunctionOf{\FaceEdgeDiff^\parallel}{#1}} \newcommand{\ElemInterfDiff}{\Set{t}} \newcommand{\ElemInterfDiffSet}[1]{\Set{T}_{#1}} \newcommand{\SpokeSymbol}{\rho} \newcommand{\ElemInterfPairSymbol}{t} \newcommand{\ElemKPlusOneCellPair}{\Set{\SpokeSymbol}} \newcommand{\Spoke}{\ElemKPlusOneCellPair} \newcommand{\ElemInterfPair}{\Set{\ElemInterfPairSymbol}} \newcommand{\EIDPerpTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\perp}{#1}} \newcommand{\EIDParallelTuple}[1]{\QuantityFunctionOf{\ElemInterfDiff^\parallel}{#1}} \newcommand{\InclDist}{\textsf{inc}}%changed from mathsf \newcommand{\InclDistFunctionOf}[1]{\QuantityFunctionOf{\InclDist}{#1}}%changed from mathsf \newcommand{\InclDistSet}[2]{\Set{INC}^{#1,#2}} \newcommand{\EdgeInclDist}[3]{\InclDistSet{#2}{#3}_{#1}} \newcommand{\PerpEdgesSet}{\Set{E}^\perp} \newcommand{\PerpInterfacesSet}{\Set{IRF}^\perp} \newcommand{\PerpOfKPlusOneCellInterfSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{PI}}}{#1}} \newcommand{\PerpKPlusOneCellSet}{\boldsymbol{\textsf{PC}}}%changed from mathsf \newcommand{\PerpKPlusOneCellSetFunctionOf}[1]{\QuantityFunctionOf{\PerpKPlusOneCellSet}{#1}}%changed from mathsf \newcommand{\ElemKPlusOneCellPairPerp}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\perp}{#1}} \newcommand{\ElemInterfPairPerp}[1]{\QuantityFunctionOf{\Set{t}^\perp}{#1}} \newcommand{\ElemInterfPairParallel}[1]{\QuantityFunctionOf{\Set{\ElemInterfPairSymbol}^\parallel}{#1}} \newcommand{\ElemKPlusOneCellPairParallelSet}[1]{\QuantityFunctionOf{\Set{\SpokeSymbol}^\parallel}{#1}} \newcommand{\KPlusOneCellNullVectorSet}[1]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}}{#1}} \newcommand{\KPlusOneCellNullVectorAlignedSubset}[2]{\QuantityFunctionOf{\boldsymbol{\textsf{HBV}}_{#1}}{#2}} \newcommand{\Graph}{G} \newcommand{\GraphFunctionOf}[1]{\QuantityFunctionOf{\Graph}{#1}} \newcommand{\GraphCore}{K} \newcommand{\GraphDirectedEdge}{\Edge_{i,j}} \newcommand{\GraphDirectedEdgeIJ}[2]{\Edge_{#1,#2}} \newcommand{\GraphCoreToVertex}[1]{\QuantityFunctionOf{\Vertex}{#1}} \newcommand{\GraphCoreChildren}[1]{\QuantityFunctionOf{\operatorname{children}}{#1}} \newcommand{\GraphVertexToCore}[1]{\QuantityFunctionOf{\GraphCore}{#1}} \newcommand{\GraphInteractingEdges}{\Set{IE}} \newcommand{\GraphCoveredEdges}{\Set{CE}} \newcommand{\GraphFailedEdges}{\Set{FE}} \newcommand{\GraphCandidateEdges}{\Set{XE}} \newcommand{\UsplineClass}[1]{\boldsymbol{\mathcal{\SymbolUspline}}^{#1}} \newcommand{\UClassRegular}{R} \newcommand{\UClassIrregular}{r} \newcommand{\UClassContFinite}{H} \newcommand{\UClassContInfinity}{h} \newcommand{\UClassGlobalSmoothness}{K} \newcommand{\UClassLocalSmoothness}{k} \newcommand{\UClassGlobalDegree}{P} \newcommand{\UClassLocalDegree}{p} \newcommand{\SuperscriptRHKP}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHKP}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhKP}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhKP}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHkP}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrHkP}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRhkP}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptrhkP}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassGlobalDegree} \newcommand{\SuperscriptRHKp}{\UClassRegular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHKp}{\UClassIrregular\UClassContFinite\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhKp}{\UClassRegular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrhKp}{\UClassIrregular\UClassContInfinity\UClassGlobalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRHkp}{\UClassRegular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptrHkp}{\UClassIrregular\UClassContFinite\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\SuperscriptRhkp}{\UClassRegular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\Superscriptrhkp}{\UClassIrregular\UClassContInfinity\UClassLocalSmoothness\UClassLocalDegree} \newcommand{\UsplineClassRHKP}{\UsplineClass{\SuperscriptRHKP}} \newcommand{\UsplineClassrHKP}{\UsplineClass{\SuperscriptrHKP}} \newcommand{\UsplineClassRhKP}{\UsplineClass{\SuperscriptRhKP}} \newcommand{\UsplineClassrhKP}{\UsplineClass{\SuperscriptrhKP}} \newcommand{\UsplineClassRHkP}{\UsplineClass{\SuperscriptRHkP}} \newcommand{\UsplineClassrHkP}{\UsplineClass{\SuperscriptrHkP}} \newcommand{\UsplineClassRhkP}{\UsplineClass{\SuperscriptRhkP}} \newcommand{\UsplineClassrhkP}{\UsplineClass{\SuperscriptrhkP}} \newcommand{\UsplineClassRHKp}{\UsplineClass{\SuperscriptRHKp}} \newcommand{\UsplineClassrHKp}{\UsplineClass{\SuperscriptrHKp}} \newcommand{\UsplineClassRhKp}{\UsplineClass{\SuperscriptRhKp}} \newcommand{\UsplineClassrhKp}{\UsplineClass{\SuperscriptrhKp}} \newcommand{\UsplineClassRHkp}{\UsplineClass{\SuperscriptRHkp}} \newcommand{\UsplineClassrHkp}{\UsplineClass{\SuperscriptrHkp}} \newcommand{\UsplineClassRhkp}{\UsplineClass{\SuperscriptRhkp}} \newcommand{\UsplineClassrhkp}{\UsplineClass{\Superscriptrhkp}} \newcommand{\BaseTopoLine}{\mathsf{L}} \newcommand{\BaseTopoLoop}{\mathsf{P}} \newcommand{\BaseTopoOneDGeneric}{\MeshUspline^{\textsf{1D}}} \newcommand{\BaseTopoGrid}{\mathsf{G}} \newcommand{\BaseTopoAnnulus}{\mathsf{A}} \newcommand{\BaseTopoTorus}{\mathsf{T}} \newcommand{\BaseTopoTriangle}{\mathsf{\Delta}} \newcommand{\BaseTopoMixed}{\mathsf{M}} \newcommand{\BaseTopoMultiPatch}{\mathsf{X}} \newcommand{\BaseTopoPatch}{\mathsf{H}} \newcommand{\AlgNameBuildRayOfMaximumCouplingLength}{BuildRayOfMaximumCouplingLength} \newcommand{\AlgNameBuildRibbonOfMaximumCouplingLength}{BuildRibbonOfMaximumCouplingLength} \newcommand{\AlgNameComputeCoreGraph}{ComputeCoreGraph} \newcommand{\UpperDBMat}{\Mat{U}} \newcommand{\LowerWeightDBMat}{\Mat{W}} \newcommand{\RationalSplineWeightSymbol}{w} \newcommand{\NURBSWeight}{\RationalSplineWeightSymbol} \newcommand{\WeightFunc}[1][\RationalSplineWeightSymbol]{#1} \newcommand{\DBParamWeight}{\omega} \newcommand{\DualBCoeff}{d} \newcommand{\NumUsplineBasisFuncsOnMeshBezier}{\Size{\UsplineBasisFuncSetOnMeshBezier}} \newcommand{\NumUsplineBasisFuncsOnMeshUspline}{\Size{\UsplineBasisFuncSetOnMeshUspline}} \newcommand{\NumUsplineBasisFuncsOnElem}{\Size{\UsplineBasisFuncSetFunctionOf{\Elem}}} \newcommand{\NumBernsteinBasisFuncsOnMeshBezier}{\Size{\IndexSetOnMeshBezier}} \newcommand{\NumBernsteinBasisFuncsOnElem}{\Size{\IndexSetFunctionOf{\Elem}}} \newcommand{\NumElemsInMeshBezier}{\Size{\CellSet{\ParamDim}}}$$\newcommand{\SymbolTime}{t} \newcommand{\SymbolEnvModifier}[1]{\star\mspace{-1mu} #1} \newcommand{\SymbolInteriorModifier}[1]{\tilde{#1}} \newcommand{\SymbolClosestPointMap}{\kappa} \newcommand{\SymbolManifold}{m} \newcommand{\SymbolVolume}{v} \newcommand{\SymbolVolumeUpper}{V} \newcommand{\SymbolSurface}{s} \newcommand{\SymbolSurfaceUpper}{S} \newcommand{\SymbolCurve}{c} \newcommand{\SymbolCurveUpper}{C} \newcommand{\SymbolPoint}{p} \newcommand{\SymbolPointUpper}{P} \newcommand{\SymbolIndicator}{\chi} \newcommand{\SymbolSpatialDim}{n} \newcommand{\SymbolWildCard}{*} \newcommand{\SymbolSegment}{\epsilon} \newcommand{\SymbolSpatialCoord}{x} \newcommand{\SymbolSpatialCoordUpper}{x} \newcommand{\SymbolSegmentSet}{\boldsymbol{E}} \newcommand{\SymbolInside}{\bullet} \newcommand{\SymbolOutside}{\circ} \newcommand{\SymbolHybrid}{\circledcirc} \newcommand{\SymbolPartition}{\boldsymbol{\vartriangle}} \newcommand{\SymbolQuadratureWeight}{w} \newcommand{\SymbolQuadratureSet}{Q} \newcommand{\SymbolQuadraturePoint}{\xi} \newcommand{\SymbolIntegrationPoint}{i} \newcommand{\SymbolManifoldCoeff}{x} \newcommand{\SymbolManifoldCoeffUpper}{X} \newcommand{\SymbolManifoldCoeffUspline}{x} \newcommand{\SymbolManifoldCoeffUsplineUpper}{X} \newcommand{\SymbolManifoldCoeffBernstein}{x} \newcommand{\SymbolManifoldCoeffBernsteinUpper}{X} \newcommand{\SymbolCADModified}{\boldsymbol{\circledast}} \newcommand{\SymbolCAD}{\bar{\SymbolCADModified}} \newcommand{\SymbolProjection}{\Projection} \newcommand{\SymbolCovariantBasisSurf}{a} \newcommand{\SymbolCovariantBasisVol}{g} \newcommand{\SymbolMetric}{m} \newcommand{\SymbolCurvature}{k} \newcommand{\SymbolCurvCoordIdOne}{\alpha} \newcommand{\SymbolCurvCoordIdTwo}{\beta} \newcommand{\SymbolCurvCoordIdThree}{\gamma} \newcommand{\SymbolOrthogonalTransform}{Q} \newcommand{\SymbolLinearInterpolation}{\mathscr{l}} \newcommand{\ParamDomainEnv}{\SymbolEnvModifier{\ParamDomain}} \newcommand{\ParamDomainCAD}{\QRT{\ParamDomain}{\SymbolCAD}} \newcommand{\ParamDomainOnCellEnv}{\SymbolEnvModifier{\ParamDomainOnCell}} \newcommand{\ParamDomainOnCAD}{\QCO{\SymbolCAD}{\ParamDomain}} \newcommand{\ParamDomainOnCADModified}{\QCO{\SymbolCADModified}{\ParamDomain}} \newcommand{\ParamDomainOnPartition}{\QCO{\SymbolPartition}{\ParamDomain}} \newcommand{\SpatialDim}{\SymbolSpatialDim} \newcommand{\SpatialDomain}{\Reals^{\SymbolSpatialDim}} \newcommand{\SpatialCoord}{\SymbolSpatialCoord} \newcommand{\SpatialCoordX}{\SymbolSpatialCoord} \newcommand{\SpatialCoordY}{y} \newcommand{\SpatialCoordZ}{z} \newcommand{\SpatialCoordUpper}{\SymbolSpatialCoordUpper} \newcommand{\SpatialCoordVec}{\Vec{\SpatialCoord}} \newcommand{\SpatialCoordVecSet}[1]{\QuantityFunctionOf{\boldsymbol{\Set{X}}}{#1}} \newcommand{\UsplineBasisFuncSpatial}[1]{\UsplineBasisFuncDetailed{\SpatialCoord}{#1}} \newcommand{\Manifold}{\Set{\SymbolManifold}} \newcommand{\ManifoldRelatedTo}[1]{\QuantityRelatedTo{\Manifold}{#1}} \newcommand{\Volume}{\Set{\SymbolVolume}} \newcommand{\VolumeRelatedTo}[1]{\QuantityRelatedTo{\Volume}{#1}} \newcommand{\Surface}{\Set{\SymbolSurface}} \newcommand{\SurfaceRelatedTo}[1]{\QuantityRelatedTo{\Surface}{#1}} \newcommand{\Curve}{\Set{\SymbolCurve}} \newcommand{\CurveRelatedTo}[1]{\QuantityRelatedTo{\Curve}{#1}} \newcommand{\Point}{\Set{\SymbolPoint}} \newcommand{\PointRelatedTo}[1]{\QuantityRelatedTo{\Point}{#1}} \newcommand{\Partition}{\SymbolPartition} \newcommand{\ManifoldCAD}{\ManifoldRelatedTo{\SymbolCAD}} \newcommand{\ManifoldCADModified}{\ManifoldRelatedTo{\SymbolCADModified}} \newcommand{\ManifoldCADEnv}{\SymbolEnvModifier{\ManifoldCAD}} \newcommand{\ManifoldCADModifiedEnv}{\SymbolEnvModifier{\ManifoldCADModified}} \newcommand{\ManifoldPartition}{\ManifoldRelatedTo{\Partition}} \newcommand{\ManifoldBezier}{\ManifoldRelatedTo{\MeshBezier}} \newcommand{\ManifoldUspline}{\ManifoldRelatedTo{\MeshUspline}} \newcommand{\ManifoldUsplineInterior}{\QRT{\SymbolInteriorModifier{\Manifold}}{\MeshUspline}} \newcommand{\ManifoldUsplineEnv}{\SymbolEnvModifier{\ManifoldUspline}} \newcommand{\VolumeEnv}{\SymbolEnvModifier{\Volume}} \newcommand{\dVolume}{\Differential[\Volume]} \newcommand{\VolumeIndicator}{\SymbolIndicator} \newcommand{\SurfaceEnv}{\SymbolEnvModifier{\Surface}} \newcommand{\SurfaceCAD}{\SurfaceRelatedTo{\SymbolCAD}} \newcommand{\SurfaceCADModified}{\SurfaceRelatedTo{\SymbolCADModified}} \newcommand{\SurfaceMesh}{\SurfaceRelatedTo{\Partition}} \newcommand{\SurfaceUspline}{\SurfaceRelatedTo{\MeshUspline}} \newcommand{\SurfaceWildCard}{\Surface^{\SymbolWildCard}} \newcommand{\dSurface}{\Differential[\Surface]} \newcom$