Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
551 commits
Select commit Hold shift + click to select a range
9300b2d
Merge branch 'OpenSees:master' into equationConstraint
yulee Jul 25, 2025
cdf5dd9
add adaptive convergence to Itpack
gaaraujo Aug 1, 2025
7fb4b7f
fixed dereferencing of optionally empty Vectors in HystereticSMMateri…
adeb-deg Aug 6, 2025
1c2262d
Merge pull request #1643 from alec0498/asd-steel-1d
fmckenna Aug 8, 2025
3e2391a
Merge pull request #1648 from angshuman311/master
fmckenna Aug 8, 2025
b0cd24e
Merge pull request #1641 from MassimoPetracca/mpco-improve
fmckenna Aug 8, 2025
ab61c58
Merge pull request #1645 from gaaraujo/transient-sublevel
fmckenna Aug 8, 2025
018598b
Merge pull request #1640 from MassimoPetracca/new-parameters
mhscott Aug 8, 2025
203d7c7
Merge pull request #1629 from gaaraujo/fix-quad-mesh
mhscott Aug 8, 2025
983305d
Update SingleFPSimple3d.cpp
mhscott Aug 8, 2025
8a8cd7d
Update SingleFPSimple2d.cpp
mhscott Aug 8, 2025
c165973
Merge branch 'OpenSees:master' into master
yulee Aug 9, 2025
18ad198
Merge branch 'OpenSees:master' into equationConstraint
yulee Aug 9, 2025
622aaa6
Merge pull request #53 from OpenSees/master
parduino Aug 11, 2025
02d3354
Adding class for beam uniform moment as eleLoad
mhscott Aug 13, 2025
30cc727
Adding class tag for uniform moment
mhscott Aug 15, 2025
3359b32
Adding OPS command for beamUniformMoment
mhscott Aug 15, 2025
cfa8a78
Adding BeamUniformMoment to make/cmake
mhscott Aug 15, 2025
8d64955
Adding beam uniform moment
mhscott Aug 15, 2025
7386c14
Adding beam uniform moment
mhscott Aug 15, 2025
7551cc8
Adding beam uniform moment
mhscott Aug 15, 2025
eebb4c4
Adding uniform moment to object broker
mhscott Aug 15, 2025
908e04e
Add check to skip nodes with more than 6 DOF in node_matching_BruteForce
amnp95 Aug 16, 2025
0a5daa4
Add support for custom starting tag in TclCommand_GenerateInterfacePo…
amnp95 Aug 16, 2025
bbde8fe
Updating VS projects for uniform moment
mhscott Aug 17, 2025
5d62408
Merge branch 'distributed-moments' of ssh://github.com/mhscott/OpenSe…
mhscott Aug 17, 2025
d0749cc
Merge pull request #1650 from mhscott/distributed-moments
mhscott Aug 17, 2025
cf1ec87
Merge branch 'OpenSees:master' into master
yulee Aug 18, 2025
44db080
Merge branch 'OpenSees:master' into equationConstraint
yulee Aug 18, 2025
e5c60c6
Update Makefile
mhscott Aug 18, 2025
19a6f8b
Update Makefile
mhscott Aug 18, 2025
8bc9b08
Fixing sign error on internal shear for point load in local z
mhscott Aug 28, 2025
48f77fa
Merge pull request #22 from OpenSees/master
claudioperez Aug 29, 2025
f67c37c
merge runtime updates
claudioperez Aug 29, 2025
5ba61c4
update banners
claudioperez Aug 29, 2025
179e0fb
clean unused files
claudioperez Aug 29, 2025
44780ca
clean up
claudioperez Aug 29, 2025
9db679e
clean up
claudioperez Aug 29, 2025
7f44327
Adding tests/ directory for pytest
mhscott Aug 30, 2025
7a2efff
Updating import statement
mhscott Aug 30, 2025
815c916
Merge pull request #1654 from mhscott/pytest
mhscott Aug 30, 2025
e31af6a
Merge pull request #23 from OpenSees/master
claudioperez Aug 31, 2025
c757e80
update from xara
claudioperez Aug 31, 2025
618e916
Merge branch 'runtime' of gh-claudio:claudioperez/OpenSees-Upstream i…
claudioperez Aug 31, 2025
0dbea85
clean if 0s
claudioperez Aug 31, 2025
6b46137
clean up
claudioperez Aug 31, 2025
55e9745
clean up
claudioperez Aug 31, 2025
818ef4c
add logging and executables
claudioperez Aug 31, 2025
a30b30f
more banners
claudioperez Aug 31, 2025
2565346
add copyright in banners
claudioperez Aug 31, 2025
d211dc7
clean up
claudioperez Aug 31, 2025
6177e5b
remote database
claudioperez Aug 31, 2025
94941a2
more copyright
claudioperez Sep 1, 2025
9fafa57
clean
claudioperez Sep 1, 2025
1a94c9c
cleaning
claudioperez Sep 1, 2025
aacc1a3
Update build_cmake.yml
mhscott Sep 1, 2025
9fcba83
Update build_cmake.yml
mhscott Sep 1, 2025
a081cb0
Update build_cmake.yml
mhscott Sep 1, 2025
1239961
Update InitStressMaterial.cpp
mhscott Sep 2, 2025
57c6985
Adding CreepShrinkageACI209 uniaxial material
Esmaeelpour Sep 5, 2025
c18d95d
Adding CreepShrinkageACI209 to Makefiles
mhscott Sep 11, 2025
7f4ce6d
Adding CreepShrinkageACI209 to VS project
mhscott Sep 11, 2025
ae9fe98
Merge pull request #1656 from Esmaeelpour/master
fmckenna Sep 12, 2025
9f3ea58
Merge pull request #1657 from mhscott/Esmaeelpour-master
fmckenna Sep 12, 2025
97271e2
Merge pull request #1651 from amnp95/master
fmckenna Sep 12, 2025
83cd6af
Merge pull request #1642 from MassimoPetracca/FB-lch
fmckenna Sep 12, 2025
f35717d
Merge pull request #5 from gaaraujo/itpack
mhscott Sep 12, 2025
b1ef7fd
Merge branch 'itpack' of github.com:mhscott/OpenSees into itpack
mhscott Sep 12, 2025
d5c85b1
Merge branch 'master' of github.com:OpenSees/OpenSees into itpack
mhscott Sep 12, 2025
1d06117
Putting #ifdefs around ItpackSolver()
mhscott Sep 12, 2025
f9033e0
Merge pull request #1623 from mhscott/itpack
fmckenna Sep 12, 2025
8a2663d
Editing makefile for Ubuntu and adding HOME directory
shahram10715 Sep 13, 2025
8f4116f
Merge pull request #1658 from shahram10715/master
fmckenna Sep 19, 2025
561e44e
Merge pull request #1613 from zwaezi84/zwaezi84-patch-1
fmckenna Sep 19, 2025
b75b7a1
Merge branch 'OpenSees:master' into master
yulee Sep 20, 2025
5bd56b1
Merge branch 'OpenSees:master' into equationConstraint
yulee Sep 20, 2025
6920dc1
Merge branch 'master' of github.com:OpenSees/OpenSees into lapack-dsygvx
mhscott Sep 23, 2025
3265044
Merge branch 'master' of github.com:OpenSees/OpenSees into lapack-dsygvx
mhscott Sep 24, 2025
ce09775
Adding LAPACK files for dsygvx
mhscott Sep 24, 2025
aa9560b
Linking dsygvx with openseespy
mhscott Sep 24, 2025
bb2255d
Merge branch 'lapack-dsygvx' of ssh://github.com/mhscott/OpenSees int…
mhscott Sep 24, 2025
0831445
Merge branch 'lapack-dsygvx' of github.com:mhscott/OpenSees into lapa…
mhscott Sep 25, 2025
7e0811e
Passing OpenSees K and M to dsygvx routine
mhscott Sep 25, 2025
585bd49
Merge branch 'lapack-dsygvx' of ssh://github.com/mhscott/OpenSees int…
mhscott Sep 25, 2025
472ac43
Adding small mass if zero on diagonal of M
mhscott Sep 25, 2025
f284463
Merge branch 'lapack-dsygvx' of ssh://github.com/mhscott/OpenSees int…
mhscott Sep 26, 2025
76e4141
Updating CMake
mhscott Sep 26, 2025
c57a2e7
Merge pull request #1660 from mhscott/lapack-dsygvx
fmckenna Sep 26, 2025
845c6a4
Merge pull request #1655 from claudioperez/runtime
fmckenna Sep 26, 2025
61de63e
Merge branch 'OpenSees:master' into master
yulee Sep 26, 2025
1f10955
Merge branch 'OpenSees:master' into equationConstraint
yulee Sep 26, 2025
e4a4bf8
Update PointsSpectrum.cpp
mhscott Sep 27, 2025
f56befb
Adding optional input for analysis end time
mhscott Sep 29, 2025
a2def61
Merge pull request #1661 from mhscott/sdfResponse
mhscott Sep 29, 2025
0289dfb
Using user-specified end analysis time
mhscott Sep 29, 2025
298e62b
Merge pull request #1662 from mhscott/sdfResponse
mhscott Sep 29, 2025
6f71a7d
Update PressureIndependMultiYield.cpp
mhscott Oct 10, 2025
58164b5
Update RigidDiaphragm.cpp
mhscott Oct 16, 2025
386deb1
Merge branch 'OpenSees:master' into master
yulee Oct 17, 2025
643c5b3
Merge branch 'OpenSees:master' into equationConstraint
yulee Oct 17, 2025
e0c1824
Merge pull request #54 from OpenSees/master
parduino Oct 20, 2025
69a3439
Adding gmsh recorder to Python interpreter
mhscott Oct 21, 2025
34b74e1
adding equivalent linear constitutive model
parduino Oct 27, 2025
fec6d09
Merge branch 'OpenSees:master' into master
parduino Oct 27, 2025
b7e1cef
Merge pull request #1667 from parduino/master
parduino Oct 27, 2025
c2b0c0e
Merge pull request #55 from OpenSees/master
parduino Oct 27, 2025
2869ac9
Adding the missing cpp and h file
parduino Oct 28, 2025
711ba87
Merge pull request #1668 from parduino/master
fmckenna Oct 28, 2025
cb315e2
Merge pull request #56 from OpenSees/master
parduino Oct 28, 2025
3abbe5a
Merge branch 'OpenSees:master' into master
yulee Nov 7, 2025
b759cbf
Merge branch 'OpenSees:master' into equationConstraint
yulee Nov 7, 2025
de54d7a
Update OpenSeesCommands.cpp
mhscott Nov 7, 2025
3edc62a
Adding changes to LinearElasticGGmax model
parduino Nov 12, 2025
e41098f
Merge pull request #57 from OpenSees/master
parduino Nov 12, 2025
357b3cc
Update TclPatternCommand.cpp
mhscott Nov 18, 2025
f6ded79
Update PeerNGAMotion.cpp
mhscott Nov 20, 2025
b985dda
Removing VTKHDF5 from Visual Studio project. Add it back when it's if…
mhscott Nov 20, 2025
d8f29fe
Using c++20 standard for domain project
mhscott Nov 20, 2025
37a6918
Merge pull request #1672 from mhscott/vstudio
mhscott Nov 20, 2025
441a239
Initial implementation of RC wall section integration
mhscott Nov 20, 2025
bdf4870
Changing class name and some clean up
mhscott Nov 20, 2025
15529cf
Adding SFI_MVLEM section integration
mhscott Nov 20, 2025
a581fbc
Merge pull request #1674 from mhscott/wall-section-integration
fmckenna Nov 21, 2025
1eec347
Merge pull request #1671 from parduino/master
fmckenna Nov 21, 2025
fa9a66e
Update Windows runner version to 2022
fmckenna Nov 21, 2025
dbcfa90
fmk - updating build_cmake.yml for VS2022 .. attempt 2
fmckenna Nov 21, 2025
9c06ab9
Adding concentrated curvature and concentrated plasticity to old Tcl …
mhscott Nov 23, 2025
d68ad23
Merge pull request #1675 from mhscott/Tcl-concentrated-beam-integrations
mhscott Nov 23, 2025
89c151f
Update material.vcxproj
mhscott Nov 25, 2025
8fdd3fd
Update material.vcxproj.filters
mhscott Nov 25, 2025
2ce179c
Add PythonSparse interface for Python-based linear and eigen solvers
gaaraujo Nov 26, 2025
026f798
refined examples
gaaraujo Nov 26, 2025
178f09a
minor tweaks
gaaraujo Nov 26, 2025
3dfb5ea
Restore file to state before previous commit
gaaraujo Nov 26, 2025
d962213
example - plot benchmark
gaaraujo Nov 26, 2025
e71e123
Latest modifications to LinearElasticGGmax model
parduino Dec 5, 2025
a36b39c
Merge pull request #58 from OpenSees/master
parduino Dec 5, 2025
622cbe4
Merge branch 'master' of https://github.com/parduino/OpenSees
parduino Dec 5, 2025
414fc38
Changes toLinearElasticGGmax including viscous damping
parduino Dec 12, 2025
2f15548
fmk - initial amport of a conanfile for version > 2
fmckenna Dec 12, 2025
da9a127
Merge branch 'master' of https://github.com/OpenSees/OpenSees
fmckenna Dec 12, 2025
8352f79
feat: support querying section response type
yexiang92 Dec 13, 2025
d7addb9
fmk - update to CMakeLsists for new Intel oneAPI 2025 placement of li…
fmckenna Dec 13, 2025
88e6120
Merge branch 'master' of github.com:OpenSees/OpenSees
fmckenna Dec 13, 2025
5ad4a1d
fmk/chatGPT - cmake config file for Intel oneAPI 23 and ifx issue
fmckenna Dec 13, 2025
b83b322
Fix bug in CreepShrinkageACI209
Esmaeelpour Dec 15, 2025
732124d
Merge pull request #1681 from Esmaeelpour/master
mhscott Dec 15, 2025
89b4c97
Merge branch 'OpenSees:master' into master
yulee Dec 17, 2025
0e0f186
Merge branch 'OpenSees:master' into equationConstraint
yulee Dec 17, 2025
abc2528
improving the drendeli curve
amnp95 Dec 18, 2025
d92f9ae
feat: Add lumped mass option to brick element
amnp95 Dec 18, 2025
1a08f92
feat: Add lumped mass option to bbarbrick element
amnp95 Dec 18, 2025
c5843aa
feat: Add lumped mass option to brickUP elements
amnp95 Dec 18, 2025
2933e94
feat: Add lumped mass option to SSPbrick elements
amnp95 Dec 18, 2025
8ffbfec
Merge pull request #59 from amnp95/pedro
parduino Dec 18, 2025
5d6880e
Updated LinearElasticGGmax with viscous damping
parduino Dec 19, 2025
1570e73
Merge pull request #60 from OpenSees/master
parduino Dec 19, 2025
86f5c71
Merge pull request #1683 from parduino/master
fmckenna Dec 19, 2025
d1b65da
Merge pull request #1680 from yexiang92/master
mhscott Dec 19, 2025
c1bfb6c
Use MPI_Comm_c2f for MUMPS Fortran communicator
jaabell Dec 20, 2025
7582bb0
Adds the option for mass lumping in the MPIDiagonal SOE and Solver
jaabell Dec 20, 2025
fa48144
Fix memory leak on ElementStateParameter.cpp
jaabell Dec 29, 2025
c047684
* typedefs.h - Improves computation of lode angle.
jaabell Dec 29, 2025
cce8356
Adding command that's not tied to 2d or 3d in the keyword
mhscott Jan 7, 2026
f920443
Merge branch 'OpenSees:master' into master
yulee Jan 9, 2026
474fb0b
Merge branch 'OpenSees:master' into equationConstraint
yulee Jan 9, 2026
bd6bb8f
Merge pull request #1688 from jaabell/fromfree-fix
fmckenna Jan 9, 2026
ac2c963
Merge pull request #1691 from mhscott/mod-elastic-beam
fmckenna Jan 9, 2026
3bad93b
Merge pull request #1684 from jaabell/fix-mumps-interface
fmckenna Jan 9, 2026
d56e8d2
Update MultiaxialCyclicPlasticity.cpp
mhscott Jan 12, 2026
0e32736
Merge branch 'OpenSees:master' into equationConstraint
yulee Jan 14, 2026
0008a56
Merge branch 'OpenSees:master' into master
yulee Jan 14, 2026
e3eaa02
Adds new ExplicitBathe and ExplicitDifferenceStatic integrators.
jaabell Jan 15, 2026
8087518
Merge branch 'master' of https://github.com/OpenSees/OpenSees
fmckenna Jan 17, 2026
db1b39c
remove wrong check and fix print
MassimoPetracca Jan 19, 2026
f1ccd0b
ref PR #1694: LagrangeMP_FE - remove wrong check
yulee Jan 20, 2026
6f9d041
fmk - updates for conan2
fmckenna Jan 20, 2026
c6a92a2
Adding set/updateParameter to ElasticMultilinear
mhscott Jan 20, 2026
d5f897b
Merge pull request #1695 from mhscott/elastic-multilinear-parameters
mhscott Jan 20, 2026
aaaed4d
Merge branch 'OpenSees:master' into master
yulee Jan 21, 2026
8b7cab7
Merge branch 'OpenSees:master' into equationConstraint
yulee Jan 21, 2026
a551355
Merge branch 'master' into ExplicitDiffStatic
jaabell Jan 21, 2026
c5d77aa
Adds new ExplicitBathe and ExplicitDifferenceStatic integrators
jaabell Jan 21, 2026
6644542
Merge branch 'master' into ExplicitDiffStatic
jaabell Jan 21, 2026
dbf0d1e
Merge branch 'master' of https://github.com/OpenSees/OpenSees
fmckenna Jan 22, 2026
d057bee
Merge pull request #1696 from jaabell/ExplicitDiffStatic
fmckenna Jan 23, 2026
056413e
Merge pull request #1694 from MassimoPetracca/bugfix-lagrange-mp-fe
fmckenna Jan 23, 2026
279bce0
Merge pull request #1689 from jaabell/ASDP
fmckenna Jan 23, 2026
c7e742e
Merge branch 'master' into MPIDIAGONAL
fmckenna Jan 23, 2026
c631732
Merge pull request #1557 from yulee/master
fmckenna Jan 23, 2026
eb03669
Merge branch 'OpenSees:master' into equationConstraint
yulee Jan 23, 2026
7dc2024
minor, very minor, let's say irrelevant, edits to HystereticSM
silviamazzoni Jan 27, 2026
50d0f02
Merge pull request #1698 from silviamazzoni/master
fmckenna Jan 27, 2026
b88ecc8
1. added -rotY option. 2. removed the requirement for positive secont…
silviamazzoni Feb 3, 2026
5208c55
introduced a new input parameter: rotY. this value is added to eps1 i…
silviamazzoni Feb 4, 2026
6e3ed45
Merge pull request #1699 from silviamazzoni/master
fmckenna Feb 6, 2026
66a134a
Merge pull request #1676 from gaaraujo/python-solver-pr
fmckenna Feb 6, 2026
1d2021b
Adding ExplicitDifferenceStatic to Makefile
mhscott Feb 11, 2026
96b1f4a
Adding sparsePython to Makefile and Makefile.incl
mhscott Feb 11, 2026
00253b6
Fixing path to Makefile.def
mhscott Feb 11, 2026
000d66c
Adding SparsePythonCommon to Makefile
mhscott Feb 11, 2026
04f4204
Merge pull request #1700 from mhscott/update-makefiles
mhscott Feb 11, 2026
39b83b4
fmk - fixing Mac and Linux github actions builds for conan2, Windows …
fmckenna Feb 11, 2026
b3c6711
Merge branch 'OpenSees:master' into equationConstraint
yulee Feb 11, 2026
02dc7b1
Update UniformDamping Initialization
yulee Feb 11, 2026
cb35fc5
fmk - adding #ifdef for M_PI as not defined in standard
fmckenna Feb 12, 2026
33846f5
fmk - some int casts for opserr as Py_ssize types causing issues with…
fmckenna Feb 12, 2026
9519f0d
Merge pull request #1685 from jaabell/MPIDIAGONAL
fmckenna Feb 12, 2026
71e6e3d
Update UniformDamping Initialization
yulee Feb 12, 2026
45c75af
Merge branch 'OpenSees:master' into damping
yulee Feb 12, 2026
168a5a1
Merge branch 'OpenSees:master' into equationConstraint
yulee Feb 12, 2026
f2700bf
fmk - updating gothub workflows to include windows vs2022
fmckenna Feb 13, 2026
1bdc467
Merge branch 'master' of github.com:OpenSees/OpenSees
fmckenna Feb 13, 2026
37728f3
Merge branch 'OpenSees:master' into damping
yulee Feb 13, 2026
90f4ed6
Merge branch 'OpenSees:master' into equationConstraint
yulee Feb 13, 2026
741ee8e
Merge pull request #1609 from yulee/equationConstraint
fmckenna Feb 13, 2026
5cc0547
Merge pull request #1702 from yulee/damping
fmckenna Feb 13, 2026
90073af
Fixing constructor call for equation constraints
mhscott Feb 13, 2026
646cdf1
Merge pull request #1703 from mhscott/partitioned-domain-eq-constraint
mhscott Feb 13, 2026
acdd497
Updating SRC/Makefile for equation constraint
mhscott Feb 14, 2026
5cb697c
Merge pull request #1705 from mhscott/partitioned-domain-eq-constraint
mhscott Feb 14, 2026
9fb8a35
significant update to energy calcs for hystereticsm. almost done
silviamazzoni Feb 15, 2026
fa1ee63
final version of update
silviamazzoni Feb 15, 2026
1c82cd3
update to hystereticsm
silviamazzoni Feb 15, 2026
e7cf7d6
Merge branch 'OpenSees:master' into master
silviamazzoni Feb 15, 2026
56e1476
Merge pull request #1706 from silviamazzoni/master
fmckenna Feb 16, 2026
febc34f
Adding ExplicitDiff and EQ stuff to projects
mhscott Feb 17, 2026
2f58ace
Adding EQ constatint to domain project
mhscott Feb 17, 2026
c61d754
Merge pull request #1707 from mhscott/vstudio
mhscott Feb 17, 2026
9e86753
fmk - remving python solvers from SysOfEqn lib in CMakeLists and crea…
fmckenna Feb 17, 2026
16de609
Merge branch 'master' of github.com:OpenSees/OpenSees
fmckenna Feb 17, 2026
e7e2d19
fmk - fixing CMakeLists.txt for WIndows
fmckenna Feb 17, 2026
5ad0b54
Update PetscSOE.cpp
mhscott Feb 17, 2026
fcb035f
Update DistributedDiagonalSOE.cpp
mhscott Feb 17, 2026
cb14913
Update MumpsParallelSOE.cpp
mhscott Feb 17, 2026
b3d0238
Update DistributedSparseGenColLinSOE.cpp
mhscott Feb 17, 2026
60be041
Update DistributedSparseGenRowLinSOE.cpp
mhscott Feb 17, 2026
39bf6e7
Update DistributedProfileSPDLinSOE.cpp
mhscott Feb 17, 2026
f0e4c4f
Update DistributedBandSPDLinSOE.cpp
mhscott Feb 17, 2026
d33acc6
fmk - adding latest git hash to output when tcl interpreter starts
fmckenna Feb 17, 2026
b80d87b
Merge branch 'master' of github.com:OpenSees/OpenSees
fmckenna Feb 17, 2026
8e8a1da
fmk - updating to version 3.8.0
fmckenna Feb 17, 2026
9a64ed8
fmk - updating CmakeLists in sparsePython so Python lib not added to …
fmckenna Feb 18, 2026
7d92af8
fmk - adding makeWIN.bat
fmckenna Feb 18, 2026
a8add1a
fmk - addiong makeMac.sh
fmckenna Feb 18, 2026
6e55293
Merge branch 'master' of github.com:OpenSees/OpenSees
fmckenna Feb 18, 2026
b9f2a31
Enable PythonSparse system and eigen solver in OpenSeesCommands
gaaraujo Feb 18, 2026
d674f9d
updated solverbenchmark example to find both conan2 and conan1 build …
gaaraujo Feb 18, 2026
a13b13f
Updating project files for sparsePython
mhscott Feb 19, 2026
9eb2dea
Merge pull request #1710 from mhscott/gaaraujo-feature/enable-python-…
mhscott Feb 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
188 changes: 88 additions & 100 deletions .github/workflows/build_cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,75 +10,51 @@ on:
workflow_dispatch:

jobs:
build-win:
name: Build Windows10
runs-on: windows-2019
build-ubuntu:
name: Build Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: 2.1. Obtaining OpenSees Source Code
uses: actions/checkout@v4
with:
fetch-depth: 0
# - name: CMake is already installed
# - name: Git is already installed
- name: Microsoft Visual Studio
uses: ilammy/msvc-dev-cmd@v1
with:
vsversion: 2019
- name: Intel oneAPI Basic & HPC Toolkits
shell: pwsh
env:
WINDOWS_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/7dff44ba-e3af-4448-841c-0d616c8da6e7/w_BaseKit_p_2024.1.0.595_offline.exe
WINDOWS_BASEKIT_COMPONENTS: intel.oneapi.win.mkl.devel
WINDOWS_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/c95a3b26-fc45-496c-833b-df08b10297b9/w_HPCKit_p_2024.1.0.561_offline.exe
WINDOWS_HPCKIT_COMPONENTS: "intel.oneapi.win.mpi.devel:intel.oneapi.win.ifort-compiler"
working-directory: D:\a\OpenSees\OpenSees\.github\workflows
run: |
./install_fortran.bat $env:WINDOWS_BASEKIT_URL $env:WINDOWS_BASEKIT_COMPONENTS
./install_fortran.bat $env:WINDOWS_HPCKIT_URL $env:WINDOWS_HPCKIT_COMPONENTS
- name: Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Conan 1.x
run: pip install conan<2.0
- name: MUMPS
shell: cmd
- name: Install conan
run: |
git clone https://github.com/OpenSees/mumps.git
cd mumps
mkdir build
cd build
call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" intel64 mod
cmake .. -Darith=d -DCMAKE_MSVC_RUNTIME_LIBRARY="MultiThreaded" -G Ninja
cmake --build . --config Release --parallel 4
- name: 2.2.2. Building the OpenSees Applications and Python module
shell: cmd
pip install conan
conan profile detect --force
- name: build OpenSees & OpenSeesPy
run: |
mkdir build
cd build
conan install .. --build missing --settings compiler="Visual Studio" --settings compiler.runtime="MT" --settings compiler.version=16
call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" intel64 mod
cmake .. -DBLA_STATIC=ON -DMKL_LINK=static -DMKL_INTERFACE_FULL=intel_lp64 -DMUMPS_DIR="..\..\mumps\build"
cmake --build . --config Release --target OpenSees -j8
cmake --build . --config Release --target OpenSeesPy -j8
- name: Verification OpenSeesPySP
shell: pwsh
conan install . --build=missing
cmake -S . -B build/Release -DCMAKE_TOOLCHAIN_FILE=build/Release/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$HOME/bin
cd build/Release
cmake --build . --target OpenSees -j8
cmake --build . --target OpenSeesPy -j8
mv OpenSeesPy.so opensees.so
- name: Verification OpenSeesPy # Simple Sanity Test
run: |
mv ./build/bin/OpenSeesPy.dll ./build/bin/opensees.pyd
cp "C:\Program Files (x86)\Intel\oneAPI\compiler\2024.1\bin\libiomp5md.dll" ./build/bin/
$env:PYTHONPATH = "./build/bin/"
python -c "import sys; print(sys.path)"
python ./EXAMPLES/ExamplePython/example_variable_analysis.py
export PYTHONPATH="./build/Release"
python3 -c "import sys; print(sys.path)"
python3 ./EXAMPLES/ExamplePython/example_variable_analysis.py
- name: Run pytest in tests/ folder
run: |
python3 -m pip install pytest
cp build/Release/opensees.so tests/
cd tests
pytest -v
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: OpenSees_Windows
name: OpenSees_Ubuntu
path: |
./build/bin/OpenSees.exe
./build/bin/opensees.pyd
./build/bin/libiomp5md.dll
./build/Release/OpenSees
./build/Release/opensees.so

build-mac:
build-mac-conan:
name: Build Mac OS
runs-on: macos-latest
timeout-minutes: 30
Expand All @@ -91,83 +67,95 @@ jobs:
uses: actions/setup-python@v5
with:
python-version: "3.11"
# - name: XCode Command Line Tools is already installed.
- name: Install other dependencies via Homebrew
- name: conan install
run: |
ln -s /opt/homebrew/bin/gcc-13 /usr/local/bin/gcc
ln -s /opt/homebrew/bin/gfortran-13 /usr/local/bin/gfortran
brew install eigen
brew install hdf5
brew install open-mpi
brew install scalapack
sudo ln -sf /opt/homebrew/include/eigen3/Eigen /opt/homebrew/include/Eigen
- name: MUMPS
run: |
git clone https://github.com/OpenSees/mumps.git
cd mumps
mkdir build
cd build
cmake .. -Darith=d
cmake --build . --config Release --parallel 4
pip install conan
conan profile detect --force
- name: 2.3.2. Building the OpenSees Applications and Python module
run: |
mkdir build
cd build
cmake .. -DMUMPS_DIR=$PWD/../../mumps/build
export FC=/opt/homebrew/bin/gfortran-13
export LDFLAGS="-L/opt/homebrew/lib/gcc/current -lgfortran"
conan install . --build=missing
cmake -S . -B build/Release -DCMAKE_TOOLCHAIN_FILE=build/Release/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$HOME/bin
cd build/Release
cmake --build . --target OpenSees -j8
cmake --build . --target OpenSeesPy -j8
mv ./OpenSeesPy.dylib ./opensees.so
- name: Verification OpenSeesPySP
run: |
export PYTHONPATH="./build/"
export PYTHONPATH="./build/Release"
python3 -c "import sys; print(sys.path)"
python3 ./EXAMPLES/ExamplePython/example_variable_analysis.py
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: OpenSees_Mac
path: |
./build/OpenSees
./build/opensees.so
./build/Release/OpenSees
./build/Release/opensees.so

build-ubuntu:
name: Build Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
build-win:
name: Build Windows VS2022
runs-on: windows-2022
steps:
- name: 2.1. Obtaining OpenSees Source Code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Microsoft Visual Studio
uses: ilammy/msvc-dev-cmd@v1
with:
vsversion: 2022
- name: Intel oneAPI Basic & HPC Toolkits
shell: pwsh
env:
WINDOWS_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/7dff44ba-e3af-4448-841c-0d616c8da6e7/w_BaseKit_p_2024.1.0.595_offline.exe
WINDOWS_BASEKIT_COMPONENTS: intel.oneapi.win.mkl.devel
WINDOWS_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/c95a3b26-fc45-496c-833b-df08b10297b9/w_HPCKit_p_2024.1.0.561_offline.exe
WINDOWS_HPCKIT_COMPONENTS: "intel.oneapi.win.mpi.devel:intel.oneapi.win.ifort-compiler"
working-directory: D:\a\OpenSees\OpenSees\.github\workflows
run: |
./install_fortran.bat $env:WINDOWS_BASEKIT_URL $env:WINDOWS_BASEKIT_COMPONENTS
./install_fortran.bat $env:WINDOWS_HPCKIT_URL $env:WINDOWS_HPCKIT_COMPONENTS
- name: Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"
# - name: Needed Applications and Libraries are already satisfied.
- name: Conan 1.x
run: pip install "conan<2.0"
- name: 2.4.2. Building the OpenSees Applications and Python module
- name: Install conan
run: |
mkdir build
pip install conan
conan profile detect --force
- name: MUMPS
shell: cmd
run: |
git clone https://github.com/OpenSees/mumps.git
cd mumps
call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" intel64 mod
cmake -S . -B build -G Ninja -Darith=d -DCMAKE_MSVC_RUNTIME_LIBRARY="MultiThreaded" -DCMAKE_EXE_LINKER_FLAGS="/link /FORCE:MULTIPLE" -DCMAKE_SHARED_LINKER_FLAGS="/link /FORCE:MULTIPLE"
cd build
conan install .. --build missing # conan executables location is different.
cmake ..
cmake --build . --target OpenSees -j8
cmake --build . --target OpenSeesPy -j8
mv lib/OpenSeesPy.so lib/opensees.so
- name: Verification OpenSeesPySP # Simple Sanity Test
cmake --build . --config Release
- name: 2.2.2. Building the OpenSees Applications and Python module
shell: cmd
run: |
export PYTHONPATH="./build/lib/"
python3 -c "import sys; print(sys.path)"
python3 ./EXAMPLES/ExamplePython/example_variable_analysis.py
conan install . -s arch=x86_64 -s compiler.runtime=static --build=missing -c tools.cmake.cmaketoolchain:generator=Ninja
call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" intel64 mod
cmake.exe -S . -B build/Release -G "Ninja" -DCMAKE_TOOLCHAIN_FILE=build/Release/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_MSVC_RUNTIME_LIBRARY="MultiThreaded" -DCMAKE_Fortran_COMPILER="ifx" -DBLA_STATIC=ON -DMKL_LINK=static -DMKL_INTERFACE_FULL=intel_lp64 -DMUMPS_DIR="..\..\mumps\build" -DCMAKE_EXE_LINKER_FLAGS="/FORCE:MULTIPLE" -DCMAKE_SHARED_LINKER_FLAGS="/FORCE:MULTIPLE" -DCMAKE_NINJA_FORCE_RESPONSE_FILE=ON
cd build/Release
cmake --build . --config Release --target OpenSees -j8
cmake --build . --config Release --target OpenSeesPy -j8
- name: Verification OpenSeesPySP
shell: pwsh
run: |
mv ./build/Release/OpenSeesPy.dll ./build/Release/opensees.pyd
cp "C:\Program Files (x86)\Intel\oneAPI\compiler\2024.1\bin\libiomp5md.dll" ./build/Release/
$env:PYTHONPATH = "./build/Release/"
python -c "import sys; print(sys.path)"
python ./EXAMPLES/ExamplePython/example_variable_analysis.py
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: OpenSees_Ubuntu
name: OpenSees_Windows
path: |
./build/bin/OpenSees
./build/lib/opensees.so
# # Simple MP sanity test
# - name: Verification OpenSeesPyMP
# run: |
# mpiexec -np 2 python ../EXAMPLES/ExamplePython/example_mpi_paralleltruss_explicit.py
./build/Release/OpenSees.exe
./build/Release/opensees.pyd
./build/Release/libiomp5md.dll
Loading