Introduction to OpenSees: Difference between revisions

From OpenSeesWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 13: Line 13:
==Simulation Framework==
==Simulation Framework==
;Computation
;Computation
:Algorithms
**Algorithms
:Solvers
**Solvers
:Parallel/distributed computing
**Parallel/distributed computing
;Information Technology
;Information Technology
:Software framework
**Software framework
:Databases
**Databases
:Visualization
**Visualization
:Internet/grid computation
**Internet/grid computation
;Models
;Models
:Simulation models
**Simulation models
:Performance models
**Performance models
:Limit state models
**Limit state models
:Material
**Material
:component
**component
:system models
**system models


==OpenSees Approach to Simulation==
==OpenSees Approach to Simulation==
Line 51: Line 51:
*Each object is of a particular type or Class. The class defines the data and methods of an object.  
*Each object is of a particular type or Class. The class defines the data and methods of an object.  
*3 basic relationships between classes
*3 basic relationships between classes
:1. IS-A (Truss is an Element)  
**IS-A (Truss is an Element)  
:2. KNOWS-A (Truss knows a Node)  
**KNOWS-A (Truss knows a Node)  
:3. HAS-A (Truss has a Material)
**HAS-A (Truss has a Material)

Revision as of 19:20, 28 November 2009

Context for Simulation in Earthquake Engineering

  • Research and practice is moving towards Performance-Based Seismic Engineering, which depends on high-fidelity models and simulation to assess performance.
  • Simulation models capture knowledge from tests to leverage investment in limited experimentation.
  • Community-based, open-source software for simulation promotes innovation in research and advanced applications for practice.
  • NEES infrastructure is supporting OpenSees to provide simulation capability and integration with NEESit services for NEES research.

What is OpenSees?

  • A software framework for simulation applications in earthquake engineering using finite element methods. OpenSees is not a code.
  • A communication mechanism for exchanging and building upon research accomplishments.
  • As open-source software, it has the potential for a community code for earthquake engineering.

Simulation Framework

Computation
    • Algorithms
    • Solvers
    • Parallel/distributed computing
Information Technology
    • Software framework
    • Databases
    • Visualization
    • Internet/grid computation
Models
    • Simulation models
    • Performance models
    • Limit state models
    • Material
    • component
    • system models

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 nonlinear analysis
Fully scriptable.
Generally
a software framework for developing simulation applications

Remember OpenSees is a Software Framework

  • A framework is NOT an executable.
  • A framework IS a set of cooperating software components for building applications in a specific domain.
  • The OpenSees framework is written primarily in the objectoriented language C++; though other languages namely C and Fortran are also used.
  • The abstract classes in the OpenSees framework define the interface. The concrete subclasses that exist the implementations. Other classes can be provided to extend the capabilities of the framework
  • Most users, however, will use OpenSees.exe which is, indeed, an executable.

Basics of Object-Oriented Programming

  • In object-oriented programming, the program is seen as a collection of objects. Each object is capable of receiving messages, processing data, and sending messages to other objects.
  • Each object is of a particular type or Class. The class defines the data and methods of an object.
  • 3 basic relationships between classes
    • IS-A (Truss is an Element)
    • KNOWS-A (Truss knows a Node)
    • HAS-A (Truss has a Material)