@geotechcli/core 0.4.61 → 0.4.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -102,12 +102,12 @@ toolRegistry.register({
102
102
  },
103
103
  useDemoDefaults: {
104
104
  type: 'boolean',
105
- description: 'Use built-in demo defaults for implemented foundation-settlement and excavation-deformation previews. Keep false for user/project evidence routing.',
105
+ description: 'Use built-in demo defaults for implemented foundation-settlement, excavation-deformation, and tunnel-volume-loss-settlement previews. Keep false for user/project evidence routing.',
106
106
  default: false,
107
107
  },
108
108
  geometry: {
109
109
  type: 'object',
110
- description: 'Explicit geometry inputs. For foundation-settlement: raftLengthM, raftWidthM, raftThicknessM, domainLengthM, domainWidthM, domainDepthM. For excavation-deformation: excavationLengthM, excavationWidthM, excavationFinalDepthM, wallToeDepthM, plus optional domain dimensions.',
110
+ description: 'Explicit geometry inputs. For foundation-settlement: raftLengthM, raftWidthM, raftThicknessM, domainLengthM, domainWidthM, domainDepthM. For excavation-deformation: excavationLengthM, excavationWidthM, excavationFinalDepthM, wallToeDepthM, plus optional domain dimensions. For tunnel-volume-loss-settlement: tunnelDiameterM, tunnelAxisDepthM, tunnelLengthM, tunnelVolumeLossPercent, troughWidthParameterK, optional tunnelCenterXM/tunnelCenterYM, plus optional domain dimensions.',
111
111
  },
112
112
  load: {
113
113
  type: 'object',
@@ -1 +1 @@
1
- {"version":3,"file":"fem-tools.js","sourceRoot":"","sources":["../../src/agents/fem-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fem-tools.js","sourceRoot":"","sources":["../../src/agents/fem-tools.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import type { FemAnalysisCase, FemResultManifest } from './types.js';
2
2
  export declare function buildRaftDemoAnalysisCase(now?: Date): FemAnalysisCase;
3
3
  export declare function buildExcavationDemoAnalysisCase(now?: Date): FemAnalysisCase;
4
+ export declare function buildTunnelVolumeLossDemoAnalysisCase(now?: Date): FemAnalysisCase;
4
5
  export declare function runBuiltinElasticRaftDemo(caseFile?: FemAnalysisCase): FemResultManifest;
6
+ export declare function runBuiltinTunnelVolumeLossDemo(caseFile?: FemAnalysisCase): FemResultManifest;
5
7
  export declare function runBuiltinElasticExcavationDemo(caseFile?: FemAnalysisCase): FemResultManifest;
6
8
  //# sourceMappingURL=demo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"demo.d.ts","sourceRoot":"","sources":["../../src/fem/demo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAIf,iBAAiB,EAIlB,MAAM,YAAY,CAAC;AAuDpB,wBAAgB,yBAAyB,CAAC,GAAG,OAAuC,GAAG,eAAe,CAuHrG;AAED,wBAAgB,+BAA+B,CAAC,GAAG,OAAuC,GAAG,eAAe,CAuI3G;AAgTD,wBAAgB,yBAAyB,CAAC,QAAQ,kBAA8B,GAAG,iBAAiB,CAkEnG;AAED,wBAAgB,+BAA+B,CAC7C,QAAQ,kBAAoC,GAC3C,iBAAiB,CA4EnB"}
1
+ {"version":3,"file":"demo.d.ts","sourceRoot":"","sources":["../../src/fem/demo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAIf,iBAAiB,EAIlB,MAAM,YAAY,CAAC;AAuDpB,wBAAgB,yBAAyB,CAAC,GAAG,OAAuC,GAAG,eAAe,CAuHrG;AAED,wBAAgB,+BAA+B,CAAC,GAAG,OAAuC,GAAG,eAAe,CAuI3G;AAED,wBAAgB,qCAAqC,CAAC,GAAG,OAAuC,GAAG,eAAe,CA+GjH;AAyaD,wBAAgB,yBAAyB,CAAC,QAAQ,kBAA8B,GAAG,iBAAiB,CAkEnG;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,kBAA0C,GACjD,iBAAiB,CAiEnB;AAED,wBAAgB,+BAA+B,CAC7C,QAAQ,kBAAoC,GAC3C,iBAAiB,CA4EnB"}
package/dist/fem/demo.js CHANGED
@@ -301,6 +301,117 @@ export function buildExcavationDemoAnalysisCase(now = new Date('2026-05-17T00:00
301
301
  ],
302
302
  };
303
303
  }
304
+ export function buildTunnelVolumeLossDemoAnalysisCase(now = new Date('2026-05-18T00:00:00.000Z')) {
305
+ const assumptions = [
306
+ {
307
+ id: 'empirical-volume-loss',
308
+ parameter: 'settlement method',
309
+ value: 'Gaussian tunnel volume-loss trough',
310
+ basis: 'Experimental deterministic preview for agentic routing, visualization, and review workflow validation.',
311
+ confidence: 'review',
312
+ reviewRequired: true,
313
+ },
314
+ {
315
+ id: 'volume-loss-assumption',
316
+ parameter: 'volume loss',
317
+ value: 1.2,
318
+ unit: '%',
319
+ basis: 'Representative preliminary assumption; must be replaced with project-specific construction method evidence.',
320
+ confidence: 'review',
321
+ reviewRequired: true,
322
+ },
323
+ {
324
+ id: 'trough-width-factor',
325
+ parameter: 'trough width parameter K',
326
+ value: 0.5,
327
+ unit: '-',
328
+ basis: 'Typical preliminary value for screening only; soil type and construction method require engineering review.',
329
+ confidence: 'review',
330
+ reviewRequired: true,
331
+ },
332
+ {
333
+ id: 'groundwater-not-coupled',
334
+ parameter: 'groundwater',
335
+ value: 'not coupled',
336
+ basis: 'Tunnel preview excludes pore pressure, consolidation, face stability, lining interaction, and time effects.',
337
+ confidence: 'review',
338
+ reviewRequired: true,
339
+ },
340
+ ];
341
+ return {
342
+ schemaVersion: 'fem-analysis-case.v0',
343
+ caseId: 'tunnel-volume-loss-settlement-demo',
344
+ title: 'Experimental 3D tunnel volume-loss settlement preview',
345
+ createdBy: 'geotechcli-fem-demo',
346
+ createdAt: now.toISOString(),
347
+ experimental: true,
348
+ objective: 'tunnel_volume_loss_settlement',
349
+ analysisType: 'empirical_3d_settlement_surface',
350
+ units: DEFAULT_UNITS,
351
+ geometry: {
352
+ domain: {
353
+ type: 'box',
354
+ lengthM: 80,
355
+ widthM: 60,
356
+ depthM: 32,
357
+ },
358
+ tunnel: {
359
+ type: 'tunnel',
360
+ diameterM: 6,
361
+ axisDepthM: 18,
362
+ lengthM: 56,
363
+ centerXM: 0,
364
+ centerYM: 0,
365
+ volumeLossPercent: 1.2,
366
+ troughWidthParameterK: 0.5,
367
+ },
368
+ },
369
+ materials: [
370
+ {
371
+ id: 'overburden-equivalent',
372
+ name: 'Representative overburden equivalent elastic ground',
373
+ model: 'linear_elastic',
374
+ elasticModulusKpa: 45_000,
375
+ poissonRatio: 0.3,
376
+ unitWeightKnM3: 19,
377
+ evidenceRefs: [],
378
+ assumptions,
379
+ },
380
+ ],
381
+ loads: [],
382
+ boundaryConditions: [
383
+ {
384
+ id: 'base-fixed',
385
+ type: 'fixed_base',
386
+ description: 'Base nodes fixed for manifest compatibility; empirical tunnel surface is evaluated at ground surface.',
387
+ },
388
+ {
389
+ id: 'side-rollers',
390
+ type: 'side_rollers',
391
+ description: 'Side boundaries retained for case-contract compatibility and viewer context.',
392
+ },
393
+ ],
394
+ mesh: {
395
+ elementType: 'hex8',
396
+ divisionsX: 18,
397
+ divisionsY: 16,
398
+ divisionsZ: 4,
399
+ },
400
+ groundwater: {
401
+ condition: 'not_modelled',
402
+ note: 'Groundwater, pore pressure, consolidation, lining interaction, and face-stability checks are not included in this experimental tunnel preview.',
403
+ reviewRequired: true,
404
+ },
405
+ assumptions,
406
+ evidenceRefs: [],
407
+ limitations: [
408
+ 'Experimental empirical tunnel settlement preview only; not a production FEM solver or design model.',
409
+ 'Uses a Gaussian surface settlement trough from prescribed volume loss and trough-width factor.',
410
+ 'No face stability, lining design, staged excavation, consolidation, seepage, building damage assessment, or nonlinear soil response.',
411
+ 'Volume loss and trough-width assumptions must be justified from project evidence and reviewed by a qualified engineer.',
412
+ ],
413
+ };
414
+ }
304
415
  function buildVisualizationMesh(caseFile, maxSettlementMm) {
305
416
  const { domain, raft } = caseFile.geometry;
306
417
  if (!raft) {
@@ -471,6 +582,83 @@ function buildExcavationVisualizationMesh(caseFile, maxSurfaceSettlementMm, maxH
471
582
  frames,
472
583
  };
473
584
  }
585
+ function buildTunnelVisualizationMesh(caseFile, maxSettlementMm) {
586
+ const { domain, tunnel } = caseFile.geometry;
587
+ if (!tunnel) {
588
+ throw new Error('Tunnel visualization mesh requires tunnel geometry.');
589
+ }
590
+ const nx = caseFile.mesh.divisionsX;
591
+ const ny = caseFile.mesh.divisionsY;
592
+ const base = [];
593
+ const disp = [];
594
+ const color = [];
595
+ const tri = [];
596
+ const edge = [];
597
+ const troughWidthM = tunnel.axisDepthM * tunnel.troughWidthParameterK;
598
+ const halfTunnelLength = tunnel.lengthM / 2;
599
+ const endTaperWidth = Math.max(troughWidthM * 1.25, tunnel.diameterM);
600
+ for (let iy = 0; iy <= ny; iy += 1) {
601
+ const y = -domain.widthM / 2 + (domain.widthM * iy) / ny;
602
+ for (let ix = 0; ix <= nx; ix += 1) {
603
+ const x = -domain.lengthM / 2 + (domain.lengthM * ix) / nx;
604
+ const crossAxisOffset = y - tunnel.centerYM;
605
+ const beyondTunnel = Math.max(Math.abs(x - tunnel.centerXM) - halfTunnelLength, 0);
606
+ const crossAxisInfluence = Math.exp(-(crossAxisOffset * crossAxisOffset) / (2 * troughWidthM * troughWidthM));
607
+ const endInfluence = beyondTunnel === 0
608
+ ? 1
609
+ : Math.exp(-(beyondTunnel * beyondTunnel) / (2 * endTaperWidth * endTaperWidth));
610
+ const settlementMm = maxSettlementMm * crossAxisInfluence * endInfluence;
611
+ const normalized = settlementMm / Math.max(maxSettlementMm, 1e-6);
612
+ const [r, g, b] = settlementColor(normalized);
613
+ base.push(round(x), round(y), 0);
614
+ disp.push(0, 0, round(-settlementMm / 1000, 6));
615
+ color.push(r, g, b);
616
+ }
617
+ }
618
+ const idx = (ix, iy) => iy * (nx + 1) + ix;
619
+ for (let iy = 0; iy < ny; iy += 1) {
620
+ for (let ix = 0; ix < nx; ix += 1) {
621
+ const a = idx(ix, iy);
622
+ const b = idx(ix + 1, iy);
623
+ const c = idx(ix + 1, iy + 1);
624
+ const d = idx(ix, iy + 1);
625
+ tri.push(a, b, c, a, c, d);
626
+ }
627
+ }
628
+ for (let iy = 0; iy <= ny; iy += 1) {
629
+ for (let ix = 0; ix < nx; ix += 1) {
630
+ edge.push(idx(ix, iy), idx(ix + 1, iy));
631
+ }
632
+ }
633
+ for (let ix = 0; ix <= nx; ix += 1) {
634
+ for (let iy = 0; iy < ny; iy += 1) {
635
+ edge.push(idx(ix, iy), idx(ix, iy + 1));
636
+ }
637
+ }
638
+ const z = 0.05;
639
+ const halfInfluenceWidth = Math.min(domain.widthM / 2, troughWidthM * 3);
640
+ const x0 = tunnel.centerXM - halfTunnelLength;
641
+ const x1 = tunnel.centerXM + halfTunnelLength;
642
+ const y0 = tunnel.centerYM - halfInfluenceWidth;
643
+ const y1 = tunnel.centerYM + halfInfluenceWidth;
644
+ return {
645
+ base,
646
+ disp,
647
+ color,
648
+ tri,
649
+ edge,
650
+ outlineBase: [
651
+ x0, y0, z,
652
+ x1, y0, z,
653
+ x1, y1, z,
654
+ x0, y1, z,
655
+ x0, tunnel.centerYM, z + 0.04,
656
+ x1, tunnel.centerYM, z + 0.04,
657
+ ],
658
+ outlineDisp: new Array(18).fill(0),
659
+ outlineIdx: [0, 1, 1, 2, 2, 3, 3, 0, 4, 5],
660
+ };
661
+ }
474
662
  function buildRaftResultFields() {
475
663
  return [
476
664
  {
@@ -575,6 +763,40 @@ function buildExcavationResultDatasets(visualization, steps, supportReactionKn)
575
763
  },
576
764
  ];
577
765
  }
766
+ function buildTunnelResultFields() {
767
+ return [
768
+ {
769
+ id: 'surface_settlement',
770
+ label: 'Tunnel surface settlement',
771
+ unit: 'mm',
772
+ location: 'surface_nodes',
773
+ quantity: 'displacement',
774
+ component: 'z',
775
+ signConvention: 'Positive values represent downward settlement magnitude from the empirical volume-loss trough.',
776
+ },
777
+ ];
778
+ }
779
+ function buildTunnelResultSteps() {
780
+ return [
781
+ {
782
+ id: 'final',
783
+ label: 'Final volume-loss settlement surface',
784
+ index: 0,
785
+ },
786
+ ];
787
+ }
788
+ function buildTunnelResultDatasets(visualization) {
789
+ return [
790
+ {
791
+ id: 'surface_settlement-final',
792
+ fieldId: 'surface_settlement',
793
+ stepId: 'final',
794
+ values: visualization.disp,
795
+ stride: 3,
796
+ source: 'visualization.disp',
797
+ },
798
+ ];
799
+ }
578
800
  export function runBuiltinElasticRaftDemo(caseFile = buildRaftDemoAnalysisCase()) {
579
801
  const validation = validateFemAnalysisCase(caseFile);
580
802
  const material = caseFile.materials[0];
@@ -639,6 +861,70 @@ export function runBuiltinElasticRaftDemo(caseFile = buildRaftDemoAnalysisCase()
639
861
  limitations: caseFile.limitations,
640
862
  };
641
863
  }
864
+ export function runBuiltinTunnelVolumeLossDemo(caseFile = buildTunnelVolumeLossDemoAnalysisCase()) {
865
+ const validation = validateFemAnalysisCase(caseFile);
866
+ const tunnel = caseFile.geometry.tunnel;
867
+ if (!tunnel) {
868
+ throw new Error('Tunnel demo requires tunnel geometry.');
869
+ }
870
+ if (validation.status === 'blocked') {
871
+ throw new Error(`FEM case is blocked: ${validation.findings.map((item) => item.message).join('; ')}`);
872
+ }
873
+ const troughWidthM = tunnel.axisDepthM * tunnel.troughWidthParameterK;
874
+ const tunnelAreaM2 = Math.PI * (tunnel.diameterM / 2) ** 2;
875
+ const settlementVolumePerM = (tunnel.volumeLossPercent / 100) * tunnelAreaM2;
876
+ const maxSettlementMm = round((settlementVolumePerM / (Math.sqrt(2 * Math.PI) * troughWidthM)) * 1000, 3);
877
+ const visualization = buildTunnelVisualizationMesh(caseFile, maxSettlementMm);
878
+ const settlements = visualization.disp
879
+ .filter((_, index) => index % 3 === 2)
880
+ .map((value) => Math.abs(value * 1000));
881
+ const minSettlementMm = round(Math.min(...settlements), 3);
882
+ const totalSettlementVolumeM3 = round(settlementVolumePerM * tunnel.lengthM, 3);
883
+ return {
884
+ schemaVersion: 'fem-result-manifest.v0',
885
+ caseId: caseFile.caseId,
886
+ title: caseFile.title,
887
+ generatedAt: new Date().toISOString(),
888
+ backend: {
889
+ id: 'builtin-tunnel-volume-loss-demo',
890
+ label: 'Built-in experimental tunnel volume-loss settlement preview',
891
+ deterministic: true,
892
+ version: '0.1.0',
893
+ },
894
+ analysisCase: caseFile,
895
+ validation,
896
+ mesh: {
897
+ nodes: (caseFile.mesh.divisionsX + 1) * (caseFile.mesh.divisionsY + 1) * (caseFile.mesh.divisionsZ + 1),
898
+ elements: caseFile.mesh.divisionsX * caseFile.mesh.divisionsY * caseFile.mesh.divisionsZ,
899
+ elementType: caseFile.mesh.elementType,
900
+ divisions: [caseFile.mesh.divisionsX, caseFile.mesh.divisionsY, caseFile.mesh.divisionsZ],
901
+ visualizationNodes: visualization.base.length / 3,
902
+ visualizationTriangles: visualization.tri.length / 3,
903
+ visualizationEdges: visualization.edge.length / 2,
904
+ },
905
+ envelope: {
906
+ maxSettlementMm,
907
+ minSettlementMm,
908
+ totalLoadKn: 0,
909
+ reactionKn: 0,
910
+ reactionBalanceRatio: 1,
911
+ maxSurfaceSettlementMm: maxSettlementMm,
912
+ tunnelDiameterM: tunnel.diameterM,
913
+ tunnelAxisDepthM: tunnel.axisDepthM,
914
+ volumeLossPercent: tunnel.volumeLossPercent,
915
+ troughWidthM: round(troughWidthM, 3),
916
+ influenceWidthM: round(troughWidthM * 6, 3),
917
+ settlementVolumeM3: totalSettlementVolumeM3,
918
+ settlementVolumePerM: round(settlementVolumePerM, 5),
919
+ },
920
+ visualization,
921
+ resultFields: buildTunnelResultFields(),
922
+ steps: buildTunnelResultSteps(),
923
+ datasets: buildTunnelResultDatasets(visualization),
924
+ assumptions: caseFile.assumptions,
925
+ limitations: caseFile.limitations,
926
+ };
927
+ }
642
928
  export function runBuiltinElasticExcavationDemo(caseFile = buildExcavationDemoAnalysisCase()) {
643
929
  const validation = validateFemAnalysisCase(caseFile);
644
930
  const excavation = caseFile.geometry.excavation;
@@ -1 +1 @@
1
- {"version":3,"file":"demo.js","sourceRoot":"","sources":["../../src/fem/demo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"demo.js","sourceRoot":"","sources":["../../src/fem/demo.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export * from './types.js';
2
- export { buildExcavationDemoAnalysisCase, buildRaftDemoAnalysisCase, runBuiltinElasticExcavationDemo, runBuiltinElasticRaftDemo, } from './demo.js';
2
+ export { buildExcavationDemoAnalysisCase, buildRaftDemoAnalysisCase, buildTunnelVolumeLossDemoAnalysisCase, runBuiltinElasticExcavationDemo, runBuiltinElasticRaftDemo, runBuiltinTunnelVolumeLossDemo, } from './demo.js';
3
3
  export { getFemCapability, listFemCapabilities, prepareFemAnalysisCaseDraft, type FemAnalysisCaseDraft, type FemCapability, type FemCapabilityStatus, type FemRouteObjective, type PrepareFemAnalysisCaseDraftInput, } from './routing.js';
4
4
  export { buildFemDraftInputFromReadiness, mapGroundModelEvidenceRefs, stripPlaceholderFemValues, type FemGroundModelDraftBridge, } from './ground-model-draft.js';
5
5
  export { validateFemAnalysisCase, validateFemResultManifest } from './validation.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,+BAA+B,EAC/B,yBAAyB,GAC1B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,gCAAgC,GACtC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,EACzB,KAAK,yBAAyB,GAC/B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,qCAAqC,EACrC,+BAA+B,EAC/B,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,gCAAgC,GACtC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,EACzB,KAAK,yBAAyB,GAC/B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
package/dist/fem/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from './types.js';
2
- export { buildExcavationDemoAnalysisCase, buildRaftDemoAnalysisCase, runBuiltinElasticExcavationDemo, runBuiltinElasticRaftDemo, } from './demo.js';
2
+ export { buildExcavationDemoAnalysisCase, buildRaftDemoAnalysisCase, buildTunnelVolumeLossDemoAnalysisCase, runBuiltinElasticExcavationDemo, runBuiltinElasticRaftDemo, runBuiltinTunnelVolumeLossDemo, } from './demo.js';
3
3
  export { getFemCapability, listFemCapabilities, prepareFemAnalysisCaseDraft, } from './routing.js';
4
4
  export { buildFemDraftInputFromReadiness, mapGroundModelEvidenceRefs, stripPlaceholderFemValues, } from './ground-model-draft.js';
5
5
  export { validateFemAnalysisCase, validateFemResultManifest } from './validation.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,+BAA+B,EAC/B,yBAAyB,GAC1B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,GAM5B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,GAE1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,qCAAqC,EACrC,+BAA+B,EAC/B,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,GAM5B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,GAE1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -29,6 +29,13 @@ export interface PrepareFemAnalysisCaseDraftInput {
29
29
  excavationWidthM?: number;
30
30
  excavationFinalDepthM?: number;
31
31
  wallToeDepthM?: number;
32
+ tunnelDiameterM?: number;
33
+ tunnelAxisDepthM?: number;
34
+ tunnelLengthM?: number;
35
+ tunnelCenterXM?: number;
36
+ tunnelCenterYM?: number;
37
+ tunnelVolumeLossPercent?: number;
38
+ troughWidthParameterK?: number;
32
39
  };
33
40
  excavation?: {
34
41
  stageDepthsM?: number[];
@@ -1 +1 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/fem/routing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/fem/routing.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { buildExcavationDemoAnalysisCase, buildRaftDemoAnalysisCase, } from './demo.js';
1
+ import { buildExcavationDemoAnalysisCase, buildRaftDemoAnalysisCase, buildTunnelVolumeLossDemoAnalysisCase, } from './demo.js';
2
2
  import { validateFemAnalysisCase } from './validation.js';
3
3
  const CAPABILITIES = [
4
4
  {
@@ -45,15 +45,16 @@ const CAPABILITIES = [
45
45
  {
46
46
  objective: 'tunnel-volume-loss-settlement',
47
47
  label: 'Tunnel volume-loss settlement preview',
48
- status: 'planned',
48
+ status: 'implemented-demo',
49
49
  analysisType: 'empirical_3d_settlement_surface',
50
- deterministicBackend: null,
51
- description: 'Planned deterministic 3D settlement surface from prescribed tunnel volume loss.',
50
+ deterministicBackend: 'builtin-tunnel-volume-loss-demo',
51
+ description: 'Experimental deterministic 3D empirical settlement surface from prescribed tunnel volume loss.',
52
52
  requiredEvidence: ['tunnel geometry', 'cover depth', 'ground class', 'volume-loss assumption'],
53
53
  requiredUserInputs: ['diameter', 'axis depth', 'alignment', 'volume loss', 'trough width parameter'],
54
54
  visualizationFields: ['settlement trough', 'building influence corridor', 'alignment overlay'],
55
- reviewGates: ['planned-only', 'volume-loss-assumption-review', 'not-fem-solver'],
55
+ reviewGates: ['experimental-only', 'volume-loss-assumption-review', 'not-fem-solver', 'not-design-calculation'],
56
56
  limitations: ['Empirical preview only; not a tunnel lining or ground loss design model.'],
57
+ command: 'geotech fem demo tunnel --experimental',
57
58
  },
58
59
  {
59
60
  objective: 'pile-group-elastic-interaction',
@@ -115,7 +116,9 @@ export function prepareFemAnalysisCaseDraft(input) {
115
116
  evidenceRefs: input.evidenceRefs ?? [],
116
117
  };
117
118
  }
118
- if (capability.objective !== 'foundation-settlement' && capability.objective !== 'excavation-deformation') {
119
+ if (capability.objective !== 'foundation-settlement' &&
120
+ capability.objective !== 'excavation-deformation' &&
121
+ capability.objective !== 'tunnel-volume-loss-settlement') {
119
122
  return {
120
123
  schemaVersion: 'fem-analysis-case-draft.v1',
121
124
  objective: capability.objective,
@@ -129,6 +132,103 @@ export function prepareFemAnalysisCaseDraft(input) {
129
132
  evidenceRefs: input.evidenceRefs ?? [],
130
133
  };
131
134
  }
135
+ if (capability.objective === 'tunnel-volume-loss-settlement') {
136
+ const missing = [];
137
+ const useDemoDefaults = input.useDemoDefaults === true;
138
+ const diameterM = input.geometry?.tunnelDiameterM ?? (useDemoDefaults ? 6 : undefined);
139
+ const axisDepthM = input.geometry?.tunnelAxisDepthM ?? (useDemoDefaults ? 18 : undefined);
140
+ const lengthM = input.geometry?.tunnelLengthM ?? (useDemoDefaults ? 56 : undefined);
141
+ const volumeLossPercent = input.geometry?.tunnelVolumeLossPercent ?? (useDemoDefaults ? 1.2 : undefined);
142
+ const troughWidthParameterK = input.geometry?.troughWidthParameterK ?? (useDemoDefaults ? 0.5 : undefined);
143
+ const checkedDiameterM = requirePositive(diameterM, 'tunnel diameter', missing);
144
+ const checkedAxisDepthM = requirePositive(axisDepthM, 'tunnel axis depth', missing);
145
+ const checkedLengthM = requirePositive(lengthM, 'tunnel alignment length', missing);
146
+ const checkedVolumeLossPercent = requirePositive(volumeLossPercent, 'tunnel volume loss', missing);
147
+ const checkedTroughWidthParameterK = requirePositive(troughWidthParameterK, 'trough width parameter', missing);
148
+ if (!checkedDiameterM ||
149
+ !checkedAxisDepthM ||
150
+ !checkedLengthM ||
151
+ !checkedVolumeLossPercent ||
152
+ !checkedTroughWidthParameterK) {
153
+ return {
154
+ schemaVersion: 'fem-analysis-case-draft.v1',
155
+ objective: capability.objective,
156
+ capability,
157
+ implemented: true,
158
+ canAutoProceed: false,
159
+ recommendedAction: 'collect-inputs',
160
+ missingUserInputs: missing,
161
+ assumptions: [],
162
+ reviewGates: ['missing-user-inputs', ...capability.reviewGates],
163
+ evidenceRefs: input.evidenceRefs ?? [],
164
+ recommendedCommand: capability.command,
165
+ };
166
+ }
167
+ const analysisCase = buildTunnelVolumeLossDemoAnalysisCase();
168
+ analysisCase.caseId = 'tunnel-volume-loss-settlement-draft';
169
+ analysisCase.title = 'Experimental 3D tunnel volume-loss settlement draft';
170
+ analysisCase.createdBy = 'geotechcli-fem-routing';
171
+ analysisCase.evidenceRefs = input.evidenceRefs ?? [];
172
+ analysisCase.materials.forEach((material) => {
173
+ material.evidenceRefs = input.evidenceRefs ?? [];
174
+ });
175
+ if (analysisCase.geometry.tunnel) {
176
+ analysisCase.geometry.tunnel.diameterM = checkedDiameterM;
177
+ analysisCase.geometry.tunnel.axisDepthM = checkedAxisDepthM;
178
+ analysisCase.geometry.tunnel.lengthM = checkedLengthM;
179
+ analysisCase.geometry.tunnel.centerXM = input.geometry?.tunnelCenterXM ?? analysisCase.geometry.tunnel.centerXM;
180
+ analysisCase.geometry.tunnel.centerYM = input.geometry?.tunnelCenterYM ?? analysisCase.geometry.tunnel.centerYM;
181
+ analysisCase.geometry.tunnel.volumeLossPercent = checkedVolumeLossPercent;
182
+ analysisCase.geometry.tunnel.troughWidthParameterK = checkedTroughWidthParameterK;
183
+ }
184
+ const troughWidthM = checkedAxisDepthM * checkedTroughWidthParameterK;
185
+ analysisCase.geometry.domain.lengthM = input.geometry?.domainLengthM ?? Math.max(checkedLengthM * 1.4, analysisCase.geometry.domain.lengthM);
186
+ analysisCase.geometry.domain.widthM = input.geometry?.domainWidthM ?? Math.max(troughWidthM * 7, checkedDiameterM * 8, analysisCase.geometry.domain.widthM);
187
+ analysisCase.geometry.domain.depthM = input.geometry?.domainDepthM ?? Math.max(checkedAxisDepthM + checkedDiameterM * 2, analysisCase.geometry.domain.depthM);
188
+ if (finitePositive(input.material?.elasticModulusKpa))
189
+ analysisCase.materials[0].elasticModulusKpa = input.material.elasticModulusKpa;
190
+ if (typeof input.material?.poissonRatio === 'number')
191
+ analysisCase.materials[0].poissonRatio = input.material.poissonRatio;
192
+ if (finitePositive(input.material?.unitWeightKnM3))
193
+ analysisCase.materials[0].unitWeightKnM3 = input.material.unitWeightKnM3;
194
+ for (const assumption of analysisCase.assumptions) {
195
+ if (assumption.id === 'volume-loss-assumption')
196
+ assumption.value = checkedVolumeLossPercent;
197
+ if (assumption.id === 'trough-width-factor')
198
+ assumption.value = checkedTroughWidthParameterK;
199
+ }
200
+ if (input.groundwater?.condition) {
201
+ analysisCase.groundwater.condition = input.groundwater.condition;
202
+ }
203
+ if (typeof input.groundwater?.depthM === 'number') {
204
+ analysisCase.groundwater.depthM = input.groundwater.depthM;
205
+ }
206
+ if (input.groundwater?.note) {
207
+ analysisCase.groundwater.note = input.groundwater.note;
208
+ }
209
+ const validation = validateFemAnalysisCase(analysisCase);
210
+ const reviewGates = [
211
+ ...capability.reviewGates,
212
+ ...validation.findings
213
+ .filter((finding) => finding.severity !== 'info')
214
+ .map((finding) => finding.code),
215
+ ];
216
+ return {
217
+ schemaVersion: 'fem-analysis-case-draft.v1',
218
+ objective: capability.objective,
219
+ capability,
220
+ implemented: true,
221
+ canAutoProceed: false,
222
+ recommendedAction: 'run-experimental-demo',
223
+ missingUserInputs: [],
224
+ assumptions: analysisCase.assumptions,
225
+ reviewGates: [...new Set(reviewGates)],
226
+ evidenceRefs: analysisCase.evidenceRefs,
227
+ analysisCase,
228
+ validation,
229
+ recommendedCommand: capability.command,
230
+ };
231
+ }
132
232
  if (capability.objective === 'excavation-deformation') {
133
233
  const missing = [];
134
234
  const useDemoDefaults = input.useDemoDefaults === true;
@@ -1 +1 @@
1
- {"version":3,"file":"routing.js","sourceRoot":"","sources":["../../src/fem/routing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routing.js","sourceRoot":"","sources":["../../src/fem/routing.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- export type FemObjective = 'foundation_settlement' | 'excavation_deformation';
2
- export type FemAnalysisType = 'static_3d_small_strain' | 'static_3d_staged_elastic';
1
+ export type FemObjective = 'foundation_settlement' | 'excavation_deformation' | 'tunnel_volume_loss_settlement';
2
+ export type FemAnalysisType = 'static_3d_small_strain' | 'static_3d_staged_elastic' | 'empirical_3d_settlement_surface';
3
3
  export type FemAssumptionConfidence = 'measured' | 'inferred' | 'review';
4
4
  export type FemFindingSeverity = 'info' | 'review' | 'blocker';
5
5
  export interface FemUnits {
@@ -65,6 +65,16 @@ export interface FemExcavationGeometry {
65
65
  wallType: 'diaphragm_wall' | 'secant_pile_wall' | 'soldier_pile_lagging' | 'unsupported_screening';
66
66
  stages: FemExcavationStage[];
67
67
  }
68
+ export interface FemTunnelGeometry {
69
+ type: 'tunnel';
70
+ diameterM: number;
71
+ axisDepthM: number;
72
+ lengthM: number;
73
+ centerXM: number;
74
+ centerYM: number;
75
+ volumeLossPercent: number;
76
+ troughWidthParameterK: number;
77
+ }
68
78
  export interface FemPressureLoad {
69
79
  id: string;
70
80
  type: 'uniform_pressure';
@@ -104,6 +114,7 @@ export interface FemAnalysisCase {
104
114
  domain: FemBoxDomain;
105
115
  raft?: FemRaftGeometry;
106
116
  excavation?: FemExcavationGeometry;
117
+ tunnel?: FemTunnelGeometry;
107
118
  };
108
119
  materials: FemMaterial[];
109
120
  loads: FemPressureLoad[];
@@ -182,6 +193,13 @@ export interface FemResultEnvelope {
182
193
  supportReactionKn?: number;
183
194
  boundaryReactionKn?: number;
184
195
  stageCount?: number;
196
+ tunnelDiameterM?: number;
197
+ tunnelAxisDepthM?: number;
198
+ volumeLossPercent?: number;
199
+ troughWidthM?: number;
200
+ influenceWidthM?: number;
201
+ settlementVolumeM3?: number;
202
+ settlementVolumePerM?: number;
185
203
  }
186
204
  export interface FemResultManifest {
187
205
  schemaVersion: 'fem-result-manifest.v0';
@@ -189,7 +207,7 @@ export interface FemResultManifest {
189
207
  title: string;
190
208
  generatedAt: string;
191
209
  backend: {
192
- id: 'builtin-elastic3d-demo' | 'builtin-staged-excavation-demo';
210
+ id: 'builtin-elastic3d-demo' | 'builtin-staged-excavation-demo' | 'builtin-tunnel-volume-loss-demo';
193
211
  label: string;
194
212
  deterministic: true;
195
213
  version: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/fem/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/fem/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/fem/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAEjB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAsNpB,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,eAAe,GAAG,oBAAoB,CAiJvF;AAsDD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,oBAAoB,CAsE3F"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/fem/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAEjB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAsNpB,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,eAAe,GAAG,oBAAoB,CA0MvF;AAsDD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,oBAAoB,CAsE3F"}
@@ -25,7 +25,7 @@ function isFemAnalysisCaseShape(value) {
25
25
  const groundwater = value.groundwater;
26
26
  return (isRecord(geometry) &&
27
27
  isRecord(geometry.domain) &&
28
- (isRecord(geometry.raft) || isRecord(geometry.excavation)) &&
28
+ (isRecord(geometry.raft) || isRecord(geometry.excavation) || isRecord(geometry.tunnel)) &&
29
29
  isRecord(mesh) &&
30
30
  isRecord(groundwater) &&
31
31
  Array.isArray(value.materials) &&
@@ -187,7 +187,7 @@ export function validateFemAnalysisCase(caseFile) {
187
187
  finding('blocker', 'schema.shape-invalid', 'FEM analysis case is missing required geometry, mesh, groundwater, or array fields.'),
188
188
  ]);
189
189
  }
190
- const { domain, raft, excavation } = caseFile.geometry;
190
+ const { domain, raft, excavation, tunnel } = caseFile.geometry;
191
191
  const material = caseFile.materials[0];
192
192
  const load = caseFile.loads[0];
193
193
  if (caseFile.schemaVersion !== 'fem-analysis-case.v0') {
@@ -196,7 +196,7 @@ export function validateFemAnalysisCase(caseFile) {
196
196
  if (!caseFile.experimental) {
197
197
  findings.push(finding('blocker', 'mode.experimental-required', 'FEM cases must be explicitly marked experimental.'));
198
198
  }
199
- if (!['foundation_settlement', 'excavation_deformation'].includes(caseFile.objective)) {
199
+ if (!['foundation_settlement', 'excavation_deformation', 'tunnel_volume_loss_settlement'].includes(caseFile.objective)) {
200
200
  findings.push(finding('blocker', 'objective.unsupported', `Unsupported FEM objective: ${caseFile.objective}.`));
201
201
  }
202
202
  if (caseFile.objective === 'foundation_settlement' && caseFile.analysisType !== 'static_3d_small_strain') {
@@ -205,6 +205,9 @@ export function validateFemAnalysisCase(caseFile) {
205
205
  if (caseFile.objective === 'excavation_deformation' && caseFile.analysisType !== 'static_3d_staged_elastic') {
206
206
  findings.push(finding('blocker', 'analysis.unsupported', `Unsupported analysis type: ${caseFile.analysisType}.`));
207
207
  }
208
+ if (caseFile.objective === 'tunnel_volume_loss_settlement' && caseFile.analysisType !== 'empirical_3d_settlement_surface') {
209
+ findings.push(finding('blocker', 'analysis.unsupported', `Unsupported analysis type: ${caseFile.analysisType}.`));
210
+ }
208
211
  if (domain.lengthM <= 0 || domain.widthM <= 0 || domain.depthM <= 0) {
209
212
  findings.push(finding('blocker', 'geometry.domain-invalid', 'Domain dimensions must be positive.'));
210
213
  }
@@ -262,6 +265,37 @@ export function validateFemAnalysisCase(caseFile) {
262
265
  findings.push(finding('review', 'excavation.design-excluded', 'Excavation preview excludes retaining wall design, basal heave, seepage, consolidation, and nonlinear soil response.'));
263
266
  }
264
267
  }
268
+ if (caseFile.objective === 'tunnel_volume_loss_settlement') {
269
+ if (!tunnel) {
270
+ findings.push(finding('blocker', 'geometry.tunnel-missing', 'Tunnel volume-loss settlement cases require tunnel geometry.'));
271
+ }
272
+ else {
273
+ if (tunnel.diameterM <= 0 ||
274
+ tunnel.axisDepthM <= 0 ||
275
+ tunnel.lengthM <= 0 ||
276
+ tunnel.volumeLossPercent <= 0 ||
277
+ tunnel.troughWidthParameterK <= 0) {
278
+ findings.push(finding('blocker', 'geometry.tunnel-invalid', 'Tunnel diameter, depth, length, volume loss, and trough-width factor must be positive.'));
279
+ }
280
+ if (tunnel.axisDepthM <= tunnel.diameterM / 2) {
281
+ findings.push(finding('blocker', 'geometry.tunnel-cover-invalid', 'Tunnel axis depth must exceed the tunnel radius.'));
282
+ }
283
+ const troughWidthM = tunnel.axisDepthM * tunnel.troughWidthParameterK;
284
+ if (domain.widthM < Math.max(tunnel.diameterM * 5, troughWidthM * 5)) {
285
+ findings.push(finding('review', 'geometry.tunnel-domain-narrow', 'Domain width may truncate the tunnel settlement trough; influence width should be reviewed.'));
286
+ }
287
+ if (domain.lengthM < tunnel.lengthM * 1.15) {
288
+ findings.push(finding('review', 'geometry.tunnel-domain-short', 'Domain length is close to the modelled tunnel length; end effects and alignment extents should be reviewed.'));
289
+ }
290
+ if (domain.depthM < tunnel.axisDepthM + tunnel.diameterM) {
291
+ findings.push(finding('review', 'geometry.tunnel-depth-shallow', 'Domain depth is close to the tunnel invert; subsurface influence depth should be reviewed.'));
292
+ }
293
+ if (tunnel.volumeLossPercent > 3) {
294
+ findings.push(finding('review', 'tunnel.volume-loss-high', 'Tunnel volume loss exceeds 3%; this assumption should be justified from project evidence or sensitivity checks.'));
295
+ }
296
+ findings.push(finding('review', 'tunnel.empirical-preview', 'Tunnel preview uses an empirical Gaussian settlement surface from prescribed volume loss; it is not a tunnel lining, face-stability, or coupled FEM solver.'));
297
+ }
298
+ }
265
299
  if (!material) {
266
300
  findings.push(finding('blocker', 'material.missing', 'At least one material is required.'));
267
301
  }
@@ -277,7 +311,9 @@ export function validateFemAnalysisCase(caseFile) {
277
311
  }
278
312
  }
279
313
  if (!load) {
280
- findings.push(finding('blocker', 'load.missing', caseFile.objective === 'foundation_settlement' ? 'A raft pressure load is required.' : 'An excavation surcharge/load assumption is required.'));
314
+ if (caseFile.objective !== 'tunnel_volume_loss_settlement') {
315
+ findings.push(finding('blocker', 'load.missing', caseFile.objective === 'foundation_settlement' ? 'A raft pressure load is required.' : 'An excavation surcharge/load assumption is required.'));
316
+ }
281
317
  }
282
318
  else if (!Number.isFinite(load.pressureKpa) || load.pressureKpa <= 0) {
283
319
  findings.push(finding('blocker', 'load.pressure-invalid', 'Uniform pressure must be positive.'));
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/fem/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/fem/validation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"webgl.d.ts","sourceRoot":"","sources":["../../src/fem/webgl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAepD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAmItE"}
1
+ {"version":3,"file":"webgl.d.ts","sourceRoot":"","sources":["../../src/fem/webgl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAepD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CA4ItE"}
package/dist/fem/webgl.js CHANGED
@@ -29,6 +29,13 @@ export function renderFemWebglHtml(manifest) {
29
29
  <label for="stageSlider">Stage: <b id="stageLabel">Final</b></label>
30
30
  <input id="stageSlider" type="range" min="0" max="0" value="0" step="1">
31
31
  </div>` : '';
32
+ const primaryResultField = manifest.resultFields?.[0];
33
+ const legendTitle = escapeHtml(`${primaryResultField?.label ?? 'Vertical settlement'} color`);
34
+ const legendUnit = primaryResultField?.unit ? ` ${primaryResultField.unit}` : '';
35
+ const legendMin = escapeHtml(`low${legendUnit}`);
36
+ const legendMax = escapeHtml(`high${legendUnit}`);
37
+ const legendNote = escapeHtml(primaryResultField?.signConvention
38
+ ?? 'Warm colors show greater downward settlement. Displayed deformation is exaggerated by the slider.');
32
39
  return `<!doctype html>
33
40
  <html lang="en">
34
41
  <head>
@@ -77,7 +84,7 @@ ul{margin:0;padding-left:18px;color:#dbeafe;font-size:12.5px;line-height:1.45}li
77
84
  </div>
78
85
  <div class="card"><h2>Result envelope</h2><div class="kv" id="stats"></div></div>
79
86
  <div class="card"><h2>Validation status</h2><p class="sub"><strong class="${manifest.validation.status === 'blocked' ? 'warn' : ''}">${escapeHtml(status)}</strong> - ${manifest.validation.blockers} blockers, ${manifest.validation.reviewItems} review items</p><ul>${findingRows}</ul></div>
80
- <div class="card"><h2 id="legendTitle">Vertical settlement color</h2><div class="legend"><span id="legendMin">low</span><div class="bar"></div><span id="legendMax">high</span></div><p class="small" id="legendNote">Warm colors show greater downward settlement. Displayed deformation is exaggerated by the slider.</p></div>
87
+ <div class="card"><h2 id="legendTitle">${legendTitle}</h2><div class="legend"><span id="legendMin">${legendMin}</span><div class="bar"></div><span id="legendMax">${legendMax}</span></div><p class="small" id="legendNote">${legendNote}</p></div>
81
88
  <div class="card"><h2>Assumptions</h2><ul>${assumptionRows}</ul></div>
82
89
  <div class="card"><h2>Limitations</h2><ul>${limitationRows}</ul></div>
83
90
  </aside>
@@ -85,9 +92,11 @@ ul{margin:0;padding-left:18px;color:#dbeafe;font-size:12.5px;line-height:1.45}li
85
92
  <script>
86
93
  const MANIFEST = ${data};
87
94
  const DATA = MANIFEST.visualization;
88
- const FRAMES = Array.isArray(DATA.frames)&&DATA.frames.length?DATA.frames:[{field:'primary',fieldLabel:'Vertical displacement',stageIndex:0,stageLabel:'Final',disp:DATA.disp,color:DATA.color}];
89
95
  const FIELD_META = new Map((Array.isArray(MANIFEST.resultFields)?MANIFEST.resultFields:[]).map(f=>[f.id,f]));
90
96
  const STEP_META = new Map((Array.isArray(MANIFEST.steps)?MANIFEST.steps:[]).map(s=>[s.index,s]));
97
+ const PRIMARY_FIELD = Array.isArray(MANIFEST.resultFields)&&MANIFEST.resultFields.length?MANIFEST.resultFields[0]:null;
98
+ const PRIMARY_STEP = Array.isArray(MANIFEST.steps)&&MANIFEST.steps.length?MANIFEST.steps[MANIFEST.steps.length-1]:null;
99
+ const FRAMES = Array.isArray(DATA.frames)&&DATA.frames.length?DATA.frames:[{field:PRIMARY_FIELD?.id||'primary',fieldLabel:PRIMARY_FIELD?.label||'Vertical displacement',stageIndex:PRIMARY_STEP?.index??0,stageLabel:PRIMARY_STEP?.label||'Final',disp:DATA.disp,color:DATA.color}];
91
100
  const FIELD_OPTIONS = Array.from(new Map(FRAMES.map(f=>[f.field,FIELD_META.get(f.field)?.label||f.fieldLabel||f.field])).entries()).map(([field,label])=>({field,label}));
92
101
  const STAGE_OPTIONS = Array.from(new Map(FRAMES.filter(f=>Number.isFinite(f.stageIndex)).map(f=>[f.stageIndex,STEP_META.get(Number(f.stageIndex))?.label||f.stageLabel||('Stage '+(Number(f.stageIndex)+1))])).entries()).sort((a,b)=>a[0]-b[0]).map(([stageIndex,label])=>({stageIndex,label}));
93
102
  let activeField = FIELD_OPTIONS[0]?.field || 'primary';
@@ -134,7 +143,7 @@ document.getElementById('wire').addEventListener('change',draw);document.getElem
134
143
  function setupFrameControls(){const fieldBox=document.getElementById('fieldControls'),fieldSelect=document.getElementById('fieldSelect'),stageBox=document.getElementById('stageControls'),stageSlider=document.getElementById('stageSlider'),stageLabel=document.getElementById('stageLabel');if(fieldBox&&fieldSelect&&FIELD_OPTIONS.length>1){fieldBox.style.display='block';fieldSelect.innerHTML=FIELD_OPTIONS.map(f=>'<option value="'+f.field+'">'+f.label+'</option>').join('');fieldSelect.value=activeField;fieldSelect.addEventListener('change',e=>{activeField=e.target.value;updateLegend();draw();});}if(stageBox&&stageSlider&&stageLabel&&STAGE_OPTIONS.length>1){stageBox.style.display='block';stageSlider.max=String(STAGE_OPTIONS.length-1);stageSlider.value=String(STAGE_OPTIONS.findIndex(s=>s.stageIndex===activeStage));stageLabel.textContent=STAGE_OPTIONS.find(s=>s.stageIndex===activeStage)?.label||'Final';stageSlider.addEventListener('input',e=>{const selected=STAGE_OPTIONS[Number(e.target.value)]||STAGE_OPTIONS[0];activeStage=selected.stageIndex;stageLabel.textContent=selected.label;updateLegend();draw();});}}
135
144
  setupFrameControls();
136
145
  updateLegend();
137
- const statRows=[['Max settlement',MANIFEST.envelope.maxSettlementMm.toFixed(2)+' mm']];if(Number.isFinite(MANIFEST.envelope.maxHorizontalDisplacementMm)){statRows.push(['Max horizontal displacement',MANIFEST.envelope.maxHorizontalDisplacementMm.toFixed(2)+' mm']);}if(Number.isFinite(MANIFEST.envelope.maxWallDeflectionMm)){statRows.push(['Max wall deflection proxy',MANIFEST.envelope.maxWallDeflectionMm.toFixed(2)+' mm']);}if(Number.isFinite(MANIFEST.envelope.stageCount)){statRows.push(['Stages',String(MANIFEST.envelope.stageCount)]);}statRows.push(['Total load / excavated weight',MANIFEST.envelope.totalLoadKn.toFixed(0)+' kN'],['Reaction',MANIFEST.envelope.reactionKn.toFixed(0)+' kN'],['Balance',MANIFEST.envelope.reactionBalanceRatio.toFixed(3)],['Mesh',MANIFEST.mesh.divisions.join(' x ')+' hex8'],['Nodes / elements',MANIFEST.mesh.nodes+' / '+MANIFEST.mesh.elements]);document.getElementById('stats').innerHTML=statRows.map(r=>'<span>'+r[0]+'</span><span>'+r[1]+'</span>').join('');
146
+ const statRows=[['Max settlement',MANIFEST.envelope.maxSettlementMm.toFixed(2)+' mm']];if(Number.isFinite(MANIFEST.envelope.maxHorizontalDisplacementMm)){statRows.push(['Max horizontal displacement',MANIFEST.envelope.maxHorizontalDisplacementMm.toFixed(2)+' mm']);}if(Number.isFinite(MANIFEST.envelope.maxWallDeflectionMm)){statRows.push(['Max wall deflection proxy',MANIFEST.envelope.maxWallDeflectionMm.toFixed(2)+' mm']);}if(Number.isFinite(MANIFEST.envelope.stageCount)){statRows.push(['Stages',String(MANIFEST.envelope.stageCount)]);}if(Number.isFinite(MANIFEST.envelope.volumeLossPercent)){statRows.push(['Volume loss',MANIFEST.envelope.volumeLossPercent.toFixed(2)+'%']);}if(Number.isFinite(MANIFEST.envelope.tunnelAxisDepthM)){statRows.push(['Tunnel axis depth',MANIFEST.envelope.tunnelAxisDepthM.toFixed(2)+' m']);}if(Number.isFinite(MANIFEST.envelope.troughWidthM)){statRows.push(['Trough width i',MANIFEST.envelope.troughWidthM.toFixed(2)+' m']);}if(Number.isFinite(MANIFEST.envelope.settlementVolumeM3)){statRows.push(['Settlement volume',MANIFEST.envelope.settlementVolumeM3.toFixed(3)+' m3']);}if(MANIFEST.analysisCase?.objective!=='tunnel_volume_loss_settlement'||MANIFEST.envelope.totalLoadKn>0){statRows.push(['Total load / excavated weight',MANIFEST.envelope.totalLoadKn.toFixed(0)+' kN'],['Reaction',MANIFEST.envelope.reactionKn.toFixed(0)+' kN'],['Balance',MANIFEST.envelope.reactionBalanceRatio.toFixed(3)]);}statRows.push(['Mesh',MANIFEST.mesh.divisions.join(' x ')+' hex8'],['Nodes / elements',MANIFEST.mesh.nodes+' / '+MANIFEST.mesh.elements]);document.getElementById('stats').innerHTML=statRows.map(r=>'<span>'+r[0]+'</span><span>'+r[1]+'</span>').join('');
138
147
  requestAnimationFrame(draw);
139
148
  </script>
140
149
  </body>
@@ -1 +1 @@
1
- {"version":3,"file":"webgl.js","sourceRoot":"","sources":["../../src/fem/webgl.ts"],"names":[],"mappings":"AAEA,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK;SACT,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAA2B;IAC5D,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IACxD,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACzD,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;sBAC9B,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACvG,CAAC,CAAC,+EAA+E,CAAC;IACpF,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC;sBAC5C,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,cAAc,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnO,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnG,MAAM,kBAAkB,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;;;;;;;;aAQxD,CAAC,CAAC,CAAC,EAAE,CAAC;IAEjB,OAAO;;;;;SAKA,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA+BJ,KAAK;;;;;;QAMP,kBAAkB;;;;;gFAKsD,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,MAAM,CAAC,eAAe,QAAQ,CAAC,UAAU,CAAC,QAAQ,cAAc,QAAQ,CAAC,UAAU,CAAC,WAAW,wBAAwB,WAAW;;gDAExO,cAAc;gDACd,cAAc;;;;mBAI3C,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuDf,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"webgl.js","sourceRoot":"","sources":["../../src/fem/webgl.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.4.61",
2
+ "version": "0.4.63",
3
3
  "defaults": {
4
4
  "provider": "hosted-beta",
5
5
  "model": "glm-5.1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geotechcli/core",
3
- "version": "0.4.61",
3
+ "version": "0.4.63",
4
4
  "description": "Shared computation and LLM engine for geotechCLI",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",