In nonlinear structural analysis, loads add together, just not their effects. So, the total mechanical load applied to a structural model can be expressed as the sum of time-varying load vectors. $latex {\bf P}(t)={\displaystyle \sum_{i=1}^N} \lambda_i(t){\bf P}_{ref,i}$ Each load vector is the product of a time-varying scalar function, $latex \lambda(t)$, and a non-time-varying reference load … Continue reading Load Patterns and Time Series
Tag: OpenSees
Sensitivity Training
Sensitivity of structural response with respect to modeling parameters provides search directions for gradient-based algorithms in reliability analysis, optimization, and system identification. In addition to these applications, stand-alone sensitivity analysis gives useful information about the effect of parameters on the structural response. There are three methods to compute response sensitivity for nonlinear, path-dependent analysis of … Continue reading Sensitivity Training
Every Ending Is a New Beginning
Simulation of structural response to sequential hazards, e.g., fire following earthquake or tsunami following earthquake, is something OpenSees can handle. But suppose you want to look at different tsunami scenarios after a single earthquake. Tsunami loading occurs over a few seconds where the preceding earthquake lasted a minute or two. Do you want to repeat … Continue reading Every Ending Is a New Beginning
Uniaxial Multi-Tool
UniaxialMaterial models are the work horses of OpenSees. Originally developed for the truss element, these models have proliferated thanks to fiber section models. However, because they are simply scalar functions, UniaxialMaterial models can be used in several other contexts. The calling function knows the context, not the UniaxialMaterial model--it only provides an output for a … Continue reading Uniaxial Multi-Tool
OpenSees Fire v2.0
OpenSees modules for thermal loading and thermo-mechanical behavior were developed by Usmani et al in the early 2010s. This was the first foray for OpenSees outside its earthquake engineering comfort zone and highlighted the benefits of an open, collaborative software framework--an opportunity for the research community to share modeling methodologies, develop new applications, and ensure … Continue reading OpenSees Fire v2.0
A Little Secret About OpenSees Tcl
Putting load and fiber commands inside braces {} preceded by pattern and section commands, respectively, was a conscious choice in the early days of G3/OpenSees. The intent was to enforce the same scoping rules that Tcl uses for procedures, loops, and conditional statements; however, the braces and scoping were totally unnecessary. We scrapped the scoping … Continue reading A Little Secret About OpenSees Tcl
Make Room for Storage
In a previous post, I showed how equation numberers can reduce the bandwidth of the tangent stiffness matrix. In addition to reducing the solution time for linear systems of equations, a smaller bandwidth reduces the data required to store the tangent stiffness matrix. To discuss matrix storage in this post, I'll use the frame model … Continue reading Make Room for Storage
OpenSees Thanksgiving
Happy Thanksgiving everyone! Even if you don't celebrate Thanksgiving, I'm thankful that you're here reading the blog. Last year's Thanksgiving post was a little preachy. This year, I simply want to reiterate that I'm thankful to have been a part of OpenSees from the beginning. Some exciting things are happening with OpenSees right now and … Continue reading OpenSees Thanksgiving
OpenSees Facebook Group
I've been answering questions on the OpenSees message board lately. Mostly responding with quick answers, nothing that requires me to download or copy/paste scripts to run locally. A friend suggested I drop in on the OpenSees Facebook group to answer some questions. The group has been around since 2008 and has over 3,000 members (not … Continue reading OpenSees Facebook Group
Compiling OpenSees
In the early days of G3/OpenSees, I was in change of compiling the Windows version using Visual C++, part of Visual Studio. Frank maintained the Linux version. Pretty soon after arriving in Eastchester, I switched to compiling OpenSees on Linux and periodically compiled in Visual Studio--only when I absolutely had to do so. Visual Studio … Continue reading Compiling OpenSees