SkillAgentSearch skills...

StructuralDynamicsODESolvers.jl

Numerical integration methods for structural dynamics problems

Install / Use

/learn @ONSAS/StructuralDynamicsODESolvers.jl
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

StructuralDynamicsODESolvers.jl

Build Status Documentation license

This package contains pure Julia implementations of ordinary differential equations (ODE) solvers for structural dynamics problems.

Features

The following solvers for linear dynamic equations are available:

  • Bathe (equal size sub-steps) [BAT07]
  • Central difference
  • Houbolt [HOU50]
  • Newmark [NEW509]
  • Backward Euler (for first order systems)

Example

The following example is explained in this notebook.

For further examples see the Examples section of the documentation.

using StructuralDynamicsODESolvers

k  = 2 ; m  = .5 ;  c = .1 
u0 = 1 ; v0 = 0 

alg = Bathe(Δt = 0.1)

M = m*ones(1, 1)
C = c*ones(1, 1)
K = k*ones(1, 1)
R = zeros(1)

sys = SecondOrderAffineContinuousSystem(M, C, K, R)

U₀ = u0 * ones(1)
V₀ = v0 * ones(1)

prob = InitialValueProblem(sys, (U₀, V₀))

sol = solve(prob, alg, NSTEPS=300);
using Plots

plot(sol, vars=(0, 1), xlab="time", ylab="displacement")

Related libraries

This package has been created for research purposes. If you are new to numerically solving differential equations in Julia, we suggest that you use the DifferentialEquations.jl suite.

References

View on GitHub
GitHub Stars13
CategoryDevelopment
Updated1y ago
Forks1

Languages

Julia

Security Score

80/100

Audited on Jun 29, 2024

No findings