import { VecN } from '@holotope/core'; import { type SimplexConstitutiveEvaluationN } from './simplex-constitutive.js'; import { type SimplexConstitutiveHessianVectorEvaluationN } from './simplex-constitutive-curvature.js'; /** Compressible Neo-Hookean parameters in intrinsic material coordinates. */ export interface SimplexCompressibleNeoHookeanMaterialN { /** First Lame parameter. This reference requires `lambda >= 0`. */ readonly firstLameParameter: number; /** Shear modulus `mu > 0`. */ readonly shearModulus: number; } export interface SimplexCompressibleNeoHookeanEvaluationN extends SimplexConstitutiveEvaluationN { /** `log(J)`, where `J` is the positive current/rest intrinsic measure ratio. */ readonly volumetricLogStrain: number; } export declare const SIMPLEX_COMPRESSIBLE_NEO_HOOKEAN_LAW_ID = "compressible-neo-hookean"; /** * Evaluates a compressible Neo-Hookean law on a k-simplex embedded in RN. * * Embedded elements use their positive intrinsic measure ratio. A * full-dimensional element must preserve signed orientation. Collapse or * inversion is outside this constitutive chart and is refused explicitly. */ export declare function evaluateSimplexCompressibleNeoHookeanN(restPositions: readonly VecN[], currentPositions: readonly VecN[], material: SimplexCompressibleNeoHookeanMaterialN): SimplexCompressibleNeoHookeanEvaluationN; /** * Evaluates the exact matrix-free Neo-Hookean potential Hessian direction. * * The implementation differentiates the intrinsic material stress directly; * it neither assembles a dense Hessian nor perturbs the authored positions. */ export declare function evaluateSimplexCompressibleNeoHookeanHessianVectorN(restPositions: readonly VecN[], currentPositions: readonly VecN[], directions: readonly VecN[], material: SimplexCompressibleNeoHookeanMaterialN): SimplexConstitutiveHessianVectorEvaluationN; //# sourceMappingURL=simplex-neo-hookean-material.d.ts.map