the open-source approach for computational …...the open-source approach for computational modeling...
TRANSCRIPT
The Open-Source Approach for Computational Modeling and Simulation
for Earthquake Engineering: History, Accomplishments, and Future Needs
Gregory L. Fenves
Cockrell School of EngineeringThe University of Texas at Austin
National Autonomous University of MexicoMexico City, Feb. 5, 2015
Fundamentals Are Timeless
Ray Clough, UC Berkeley, 1960s
But Software Evolves Slowly
Compute Technology
Base Code
Elements
Input Language
User Interface
Simulation State-of-the-Art
• “The Good”
– Linear structural analysis routine
– Good commercial software widelyused and integrated with BIM
– Nonlinear static analysis becoming important
– Performance methods becoming more widelyused, e.g. ATC 58
• “The Bad”
– Linear analysis with equivalent lateral loads is not simulation
– Nonlinear static analysis uses very simplified models;it is not simulation
– “Performance criteria” not thoroughly investigated, e.g. FEMA 356, nor models adequately developed
– Long way to go in including uncertainty quantification
... and the Ugly
• Many nonlinear analysis methods basedon concepts from 1980s at often softwarearchitecture from 1970-1980s
• Underinvestment in research in simulation,and what is done is not well organized
• Poor linkages between fundamental experimental studies and modeling; insufficient validation and verification of models
• Simulation models, methods, and computational procedures in earthquake engineering have not kept up with rapid advances in computing hardware, software engineering, databases, network communications
– Limited interaction with computer science
– Inadequate education of students in computing
Observations on Historical Situationwith Simulation Software
• Tight binding of models in research and commercial codes
is an impediment to new research and implementation of
models for professional practice.
• Embedding of computational procedures in codes makes it
difficult to experiment and take advantage of computing
technology:
– Parallel and distributed computers
– Computational grids
– Now, cloud computing
• “Closed-source” is the norm, whereas other fields have
adopted “open-source” software for communities
users.
Simulation Needs inEarthquake Engineering
• Performance-based engineering depends on evaluation of damage and estimate of consequences
• Rational, validated models of behavior of structural and geotechnical materials, components and systems are needed for simulating performance
• Simulation applications:
– Assessment of performance
– Design using parameterized models, including optimization with performance constraints
– Reliability-based design
– Regional loss estimation and disaster planning
• Additional applications include structural and system health monitoring for control and operations
Simulation Has TransformedOther Engineering and Science Fields
• Computational chemistry,computational biology
• Material science, particularly atnano-scale
• Computational fluid dynamics
– Aerodynamics
– Building interior environment
– Virtual wind tunnels
• Aircraft design
• Automotive design
• U.S. nuclear weapons stewardship (ASCI, PSAAP)
Vision for Earthquake Engineering Simulation (2007)
Computational modeling and simulation is central to the vision of NEES to transform the development of new earthquake engineering solutions from being primarily based on experiments to a balanced use of simulation and experimentation using computational models validated by experimental data.
A close integration of modern computational models and simulation software with other NEES applicationsand services will provide the earthquake engineering community, and broad engineering users, new capabilities for developing innovative and cost-effective solutions.
Software Framework
• A framework is a set of cooperating software components
for building applications in a specific domain
• A framework dictates the architecture of the application – it
represents the design decisions common to the application
domain
• A frameworks is based on the assumption that an
architecture will work for most applications within the
domain
• Loose-coupling of components within the framework is
essential for extensibility and re-usability for applications
• Examples: Visualization (GLUT), Hadoop, Google Apps, …
• A framework is not a “code”
http://opensees.berkeley.edu• OpenSees has been under
development by PEER since 1998. NEES supported 2005-2014. PEER since then.
• Windows application downloaded over 10,000 times a year.
• Parallel Applications utilize over 1,000,000 CPU hours on NSF XSEDE compute resources yearly.
• Open-source and royalty free license for non-commercial use and and internal commercial use.
• License must be obtained for software developers including OpenSees code in their applications.
• Written in C++, C and Fortran
(C++ being the main language)
OpenSees Worldwide Usage (2014)
OpenSees Approach to Simulation
• Basic approach:
– Modular software design for implementing and integrating modeling, numerical methods, and IT for scalable, robust simulation
– Focus on capabilities needed for performance-based engineering
– Programmable interfaces
• Most users: a “code” for nonlinearanalysis. Fully scriptable.
• Generally: a software framework for developing simulation applications.
Structural Modeling and Simulation
Joints with both bond-slip springs and shear springs
Column base bond-slip springs
s
s
s
e
e
e
Non-ductile RC frames and calibration of
building code provisions
C. Haselton, G. Deierlein, Stanford
Corotational geometric
transformations
Bilinear
Soil-Structure Modeling
Ahmed Elgamal
UC San Diego, 2008
Examples of OpenSees Applications
• Parametric studies to examine relationship
between intensity and damage for PBEE and
design procedures
• Computational reliability for PBEE
• Soil-structure-foundation interaction
• Spatial distribution of damage
• Simulation of bridge performance
Open-Source CommunitySimulation Framework
Conceptual Approach for Simulation
InformationTechnology Software framework,
Databases, Visualization,Internet/grid computation
ComputationAlgorithms,Solvers,Parallel/distributedcomputing
Models
Material, component, system models
Simulation models,Performance models,Limit state models
Simulation Software Architecture
Compute Technology
Base Code
Elements
Input Language
User Interface
Traditional Code
Model Domain
Materials
Framework of Components
Solvers
Compute Technology
Elements
Databases
Solution Procedures
Other
Vis
ual
izat
ion
Application Program Interface (API)
Software Depends on Expressiveness of Language and Power of Processor(s)
What is Object-OrientedProgramming?
• Object-oriented programs are composed of objects that bind data and operators on data
• Objects are operated upon by sending messages to it. The public interface defines the operations on an object
• Object’s internal state is encapsulated in the object. The implementation is private
• Classes define the software behavior of objects.
• Classes and their objects are designed to represent key abstractions
• A programmer should be able to use a class through the interface independently of the implementation
Object-Oriented Finite Element Framework
1997
Structural Models as Aggregation Pattern
AnalysisModelBuilder
Builder - separate representationFrom construction
Domain
LoadPattern ElementNodeConstraints
Aggregation
Analysis Class for Simulation
DO_Numberer AnalysisModel
SolutionAlgSystemofEqs
ConstraintHandler Integrator
Analysis DomainAnalysis class is responsiblefor performing an analysis on adomain and is formed byAggregation.
Example of Analysis Class
Analysis
analyze(n)
StaticAnalysis
analyze(n)
theModel
theAlgorithm
theIntegrator
EquiSolAlgo
solveCurrentStep()
StaticIntegrator
newStep()
commitDomain()
AnalysisModel
for i=1:n
theIntegrator->newStep()
theAlgorithm->solveCurrentStep()
theModel->commitDomain()
Strategy Pattern
Beam-Column Models I
Element
Basic System
GeometricTran
LinearLinearPDCorotational
Sectione, s
Material
e s
No assumptions are made on section or material behavior; each level in the hierarchy can be defined independently of other levels
s
e
Beam-Column Models II
Basic System
Displacement Force
Material
ForceDeformationUniaxialMaterial
BeamWithHinges
2
FiberSectionFiber
UniaxialFiber
Concrete01 Steel01
s
e s
e
as = [1 –y z]
Form Follows Mechanics
Types of Behavior
• Ductile and brittle
modes represented
• Solution method
converges rapidly
even with strong
softening
PH
PElastic
Concentrated
Plasticity
A A
Domain decomposition implemented with Actors–distributed computational objects with a communication protocol.
OpenSees Parallel Processing
Large-Scale Computing and Visualization
Ahmed Elgamal
UC San Diego, 2008
• 30,237 nodes
• 1,140/280 linear/nonlinear BC elements
• 81 linear shell elements
• 23,556 solid brick elements
• 1,806 zero-length elements
OpenSees as Open-Source Software
• Roadmap
• Architecture
• Program Interfaces
(API’s)
• Code repository
– Checkout/in
– Branch/merge
– Versioning
• Release engineering
• Testing
• Validation & Verification
Open Source is…
# set some variables set gMotion el_centroset scale 1.set roofWeight [expr 80*120.*72./1000.]; #kips; set floorWeight [expr 95*120.*72./1000.];set numFrameResisting 2.0; #load resisting frames set percentLoadFrame [expr 15./120.]set dampRatio 0.03set mode1 1set mode2 3set Fy 60.set E 30000.set b 0.03
# set up my lists set floorOffsets {216. 150. 150. 150. 150. 150.}; # inchesset colOffsets {288. 288. 288.}; #inchesset colSizes {W30X173 W30X173 W27X146 W27X146 W24X104 W24X104};set colExtSizes {W14X193 W14X193 W14X159 W14X159 W14X109 W14X109};set beamSizes {W30X99 W30X99 W27X94 W27X94 W24X76 W24X76};# build and run the model using standard template filesource SteelMomentFrame2d_UniformExcitation.tcl
2D Steel Moment FrameLoad: 95psf typical, roof 80psf
E=29,000, Fy=50.0, b =0.003
3% Rayleigh Damping 1st and 3rd Modes
18 ft
12.5 ft
24 ft
Concrete Building Study113 records, 4 intensities
3 hour a record, 1356
hours or 56.5 days.
Ran on 452 processors
On XSEDE in less than 5
hours.
How Does OpenSees Compare With Commercial Software?
Prof. Xin-Zheng LuTsinghua University
Similar Results -(Results with commercial applications the same iff model and analysis are the same)
Lessons and Observations
• Many see the benefits of exchanging research and ideas through software
• Success depends on ability of developers to understand abstractions in the software design
• “Not invented here” is sometimes an issue
• Computing education and experience of civil engineers makes the learning curve look steep
• Many users just want the code and are not interested in open-source
• Documentation is never good enough
• Long-term support of an organization is necessary
• Innovation is possible, but it takes long-term commitment
Using the Internet for Simulation (2001)
Model Domain
Materials
Solvers
Compute Technology
Elements
Databases
Solution Procedures
Other
Vis
ual
izat
ion
InternetAPI’s
Schematic of Simulation in the Future (2002)myCompany.building.com
modelBuilders.com
EngineeringTeam
aci.models.org
usgs.gov
PERFORMANCECODE
buildingcode.org computation.com
Experiments
Cloud as Deployed Services
Key Question for the Future
• How will nonlinear simulation models based on fundamentals be developed for use in performance-based design?
• How will validation, verification, and uncertainty quantification (VVUQ) be incorporated in earthquake engineering simulation?
• How will the earthquake engineering industry use transformational cloud-based services?