Last active
May 28, 2026 17:39
-
-
Save wd15/a1c167efa0ce001476d7b9744bc53843 to your computer and use it in GitHub Desktop.
Simplified Digital Twin Workflow
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Simplified Digital Twin Workflow - Brief</title> | |
| <style> | |
| body { | |
| font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; | |
| background-color: #ffffff; | |
| display: flex; | |
| justify-content: center; | |
| align-items: center; | |
| height: 100vh; | |
| margin: 0; | |
| } | |
| .diagram-wrapper { | |
| position: relative; | |
| width: 800px; | |
| height: 520px; | |
| background: #ffffff; | |
| border-radius: 12px; | |
| box-shadow: 0 10px 40px rgba(0,0,0,0.08); | |
| border: 1px solid #e1e4e8; | |
| overflow: hidden; | |
| } | |
| /* Base Box Style */ | |
| .box { | |
| position: absolute; | |
| display: flex; | |
| flex-direction: column; | |
| justify-content: center; | |
| width: 220px; | |
| padding: 15px; | |
| border-radius: 8px; | |
| z-index: 2; | |
| box-shadow: 0 4px 15px rgba(0,0,0,0.05); | |
| background: white; | |
| border-left: 6px solid; | |
| } | |
| .box-title { | |
| font-size: 16px; | |
| font-weight: 700; | |
| margin-bottom: 4px; | |
| color: #24292f; | |
| } | |
| .box-subtext { | |
| font-size: 13px; | |
| color: #57606a; | |
| line-height: 1.3; | |
| } | |
| /* Specific Box Themes & Positions */ | |
| .box-hifi { | |
| top: 40px; left: 50px; | |
| border-color: #34495e; /* Dark Blue/Gray */ | |
| } | |
| .box-surrogate { | |
| top: 200px; left: 50px; | |
| border-color: #2980b9; /* Bright Blue */ | |
| } | |
| .box-dt { | |
| top: 380px; left: 50px; | |
| border-color: #27ae60; /* Emerald Green */ | |
| } | |
| .box-da { | |
| top: 200px; left: 500px; | |
| border-color: #8e44ad; /* Purple */ | |
| } | |
| .box-physical { | |
| top: 380px; left: 500px; | |
| border-color: #c0392b; /* Red */ | |
| } | |
| /* SVG Layer for Connecting Lines */ | |
| .line-layer { | |
| position: absolute; | |
| top: 0; left: 0; | |
| width: 100%; height: 100%; | |
| z-index: 1; | |
| pointer-events: none; | |
| } | |
| .flow-line { | |
| fill: none; | |
| stroke: #95a5a6; | |
| stroke-width: 3; | |
| marker-end: url(#arrowhead); | |
| } | |
| .flow-line-dashed { | |
| fill: none; | |
| stroke: #95a5a6; | |
| stroke-width: 3; | |
| stroke-dasharray: 6, 6; | |
| marker-end: url(#arrowhead); | |
| } | |
| .label-text { | |
| font-size: 13px; | |
| font-weight: 600; | |
| fill: #57606a; | |
| font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <div class="diagram-wrapper"> | |
| <div class="box box-hifi"> | |
| <div class="box-title">High-Fidelity Models</div> | |
| <div class="box-subtext">Physics-based ground truth (e.g., AdditiveFOAM).</div> | |
| </div> | |
| <div class="box box-surrogate"> | |
| <div class="box-title">Ensembles & Surrogates</div> | |
| <div class="box-subtext">Fast-executing AI (FNOs) generating prior states.</div> | |
| </div> | |
| <div class="box box-dt"> | |
| <div class="box-title">Digital Twin</div> | |
| <div class="box-subtext">Continuously updated digital shadow.</div> | |
| </div> | |
| <div class="box box-da"> | |
| <div class="box-title">Data Assimilation</div> | |
| <div class="box-subtext">EnKF framework for state correction.</div> | |
| </div> | |
| <div class="box box-physical"> | |
| <div class="box-title">Experimental Data</div> | |
| <div class="box-subtext"></div> | |
| </div> | |
| <svg class="line-layer"> | |
| <defs> | |
| <marker id="arrowhead" markerWidth="10" markerHeight="7" refX="9" refY="3.5" orient="auto"> | |
| <polygon points="0 0, 10 3.5, 0 7" fill="#95a5a6" /> | |
| </marker> | |
| </defs> | |
| <path d="M 160 110 L 160 190" class="flow-line" /> | |
| <text x="175" y="155" class="label-text">Training</text> | |
| <path d="M 160 270 L 160 370" class="flow-line" /> | |
| <text x="175" y="325" class="label-text">Prior</text> | |
| <path d="M 610 380 L 610 270" class="flow-line" /> | |
| <text x="625" y="330" class="label-text">Observations</text> | |
| <path d="M 300 235 L 490 235" class="flow-line" /> | |
| <text x="345" y="225" class="label-text">Predictions</text> | |
| <path d="M 500 255 C 400 255, 400 410, 300 410" class="flow-line-dashed" /> | |
| <text x="360" y="325" class="label-text" fill="#8e44ad">Correction</text> | |
| </svg> | |
| </div> | |
| </body> | |
| </html> | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment