Download presentation
Presentation is loading. Please wait.
Published byElfrieda Blankenship Modified over 9 years ago
1
Interoperable Geometry and Mesh Components for SciDAC ApplicationsTerascaleSimulation Tools and Technologies The TSTT Interfaces TSTTB: “Base” Tags Error class Sets TSTTG: Geometry BREP-type topological model Sub-interfaces for: Topology Parametric evaluations Shape Modify TSTTM: Mesh FE “zoo” + polygons, polyhedra Entity- & array-based access (picture of mesh…) TSTTR: Relations Relates entities, sets between geometry, mesh interfaces Dynamic mapping based on application-defined criteria Extensible to other (e.g. hierarchical) relations depends on MUST be both simple AND flexible 4 Basic Types: Entity: topological entities in a geometry or mesh ([g]vertex, [g]edge, [g]face, [g]region) Entity set: Arbitrary combinations of entities and of other sets; supports parent/child relations between sets (!= “contains”) Tag: arbitrary piece of data which can be written to any of the other items; created with specified name, size, optional type; individual values assigned to any of the other items Interface instance: instance of a component inside which entities are assumed to be related to one another, and which serves as the overall “container” of a component’s data and as the point of reference for those data The TSTT Data Model “implements-all” depends on SLAC/TOPS/TSTT Accelerator Shape Optimization Collaboration Purpose: Create a new generation of accelerator modeling & optimization capability from SciDAC computational components, which can be applied directly for near-term design decisions (e.g. International Linear Collider Low-Loss cavity) and to future accelerator designs (RIA, LCLS). TSTT Role: Provide advanced services for geometry (TSTTG/CGM) and mesh (TSTTM/MOAB, MESQUITE), linked to accelerator physics and optimization using core TSTT data model concepts. GoGo CUBIT Generate mesh MoMo Iteration 0: Iteration k: Mesh Projection/Smoothing SNL Geometry, Mesh Tools Supporting Shape Optimization Restore, evaluate data relations between interacting components Why not bundle components together? Because smaller components: –Promote re-usability –Reduce complexity –Give applications options/flexibility Then why is TSTTR necessary? Because advanced applications require interactions between components –Geometry-mesh –Geometry-materials –Fields-mesh Match, in TSTTG:To, in TSTTM: EntityEntity Set ->dimension() GEOM_DIMENSION::value LASSO (TSTTR) TSTTM/ MOAB Shape Optimization TSTTR/ LASSO Shape Optimization TSTTG/ CGM VizDesign Common Geometry Module (CGM) CGM is the basis for SNL’s CUBIT mesh generation tool LGPL release summer ’05 (http://cubit.sandia.gov/MOAB) Vertex Edge Face Volume Non-manifold topology (e.g. shared face) Virtual geometry/topology CAD-, facet- based engines Full TSTTG Interface NLC Damped De-tuned Structure (SLAC) ITER “Simplified” Benchmark Model ARIES Compact Stellerator Geometry ACISFacetGranite Virtual Topology Non-manifold TSTTG Others… Enabling shape optimization for future accelerator designs Enabling access to advanced geometry & mesh representations, tools through common interfaces MOAB (SNL): Structured/unstructured FE mesh FMDB (RPI): Tri/tet mesh, adaptive mesh refinement NWGrid (PNNL): Mesh generation for biological models GRUMMP (UBC, Canada): Tri/tet mesh, mesh improvement Mesquite (SNL): Optimization-based mesh smoothing Frontier (BNL, SUNY-SB): (See X. Li’s poster) Future: extension of approach to: New components/instances of current interfaces New domains (e.g. discretization, fields, materials, etc.) New applications TSTTG implementation: representation, modification of solid model-based geometry Layered implementation for applicability across engines } Mesh-Oriented datABase (MOAB) Structured & unstructured mesh – FE “zoo” + polygons, polyhedra Reads and/or writes CUBIT.cub files (w/metadata), ExoII, vtk, etc. – Geom topology as sets w/parent-child relations Various other tools – Converter (ExoII, vtk,.cub, Ansys, …) – Viz (Qt-, VTK-based) Available under LGPL license (http://cubit.sandia.gov/MOAB) C-based TSTTM interface implementation available too TSTTM/C TSTTM/SIDL MOAB/C++, CUBIT MOAB/C++-Scd MOAB/C++, TSTTM/C-Indiv TSTTM/SIDL, TSTTM/C-Block High-efficiency, low memory cost implementation of full TSTTM interface Memory efficient: 25MB/10 6 hex elements (structured) 55MB/10 6 hex elements (unstructured”) Access times comparable to object-based C++ Mesh Quality Improvement Toolkit (MESQUITE) Optimization-based mesh smoothing software library Structured, unstructured, hybrid meshes (most element types) Multiple state-of-the-art algorithms and solvers Multiple application domains: –Deforming domains/meshes, –r-type adaptivity –Heterogeneous, anisotropic mesh smoothing –Arbitrary-Lagrange-Eulerian mesh smoothing –Mesh fixup (untangle, shape, smoothness) Released under LGPL license (http://www.cs.sandia.gov/~web9200/) Overall Optimization Cycle: Optimization (TOPS) Omega3P Sensitivity (AST/TOPS) δpδp ω(p), E(d) (p), g(p) Mesh Projection/ Smoothing ILC Parameterized Geometry Procedural Geometry Generation DDRIV (TSTT) m Ώ (p) m Ώ (p’) (p’) Omega3P (AST) Design Velocities ∂v Γ /∂p i Impact: Superior accelerator cavities, yielding better accelerator performance at a lower cost TSTTG/CGM MkILC G(p i ) (M k ) ( ∂v Γ /∂p i ) pipi Procedural Geometry Generation Design parameters Device-specific function constructs geometric model from design parameter vector Generates new geometry based on optimization-driven design parameter changes Application of shape optimization to new device XYZ requires only new MkXYZ function Geometry construction function Geometric model Store model to disk Basis for mesh projection Compute design velocities Uses in Ddriv: p1p1 p2p2 p3p3 p4p4 Damped De-tuned Structure 15 params, 786 lines C++ G p2p2 p3p3 p4p4 p5p5 International Linear Collider (ILC) 20 params, 525 lines C++ Shape optimization iterations project same mesh to new geometric models Fixed mesh topology gives continuity in optimization & allows reuse of matrix factorization in Omega3P DDRIV Geom/mesh/smooth driver TSTTR relate geom to mesh Mesquite smooth mesh TSTTG/MkILC construct new geom TSTTM store mesh, derivs G(p i ) k MkMk MoMo pipi “Design Velocity” Calculation Procecure: –Write original vertex positions as tag on M k –Generate new model G(p δ ) from perturbation p δ –Project/smooth mesh onto affected surfaces in G(p δ ) –Compute ∂x Γ /∂p i using differencing –Store as tags on mesh vertices Design velocity = ∂x Γ /∂p i (last term in chain-rule expansion of ∂f/∂p i ) Computed AUTOMATICALLY using geometry generation function Communicated to Omega3P as tags on surface mesh vertices ILC Parameterized Geometry zcc zcb bll all a1l b1l ra1 ra0 zcll bll all a1l b1l ra1 ra0 zcll bll all a1l b1l ra1 ra0 zcll QVDual viz tool Set parent-child relations show geometric model topology ∂x Γ /∂r 2 Qualitative derivative verification using Paraview r2r2 The Terascale Simulation Tools & Technologies (TSTT) Center Sets & tags used to store processor partition Tags on vertices used to communicate surface normals to Mesquite, Omega3P
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.