Skip to content
Open

Dev #89

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
161 commits
Select commit Hold shift + click to select a range
0a900f2
Fix memory corruption when getTangent(k=...) is used without prior tr…
claudioperez Jan 7, 2026
f14a6da
Create FrameTraceSection3d.h
claudioperez Jan 7, 2026
3b5bd3f
Create FrameTraceSection3d.cpp
claudioperez Jan 7, 2026
6320511
Update CMakeLists.txt
claudioperez Jan 7, 2026
63fe273
Refactor AnalysisModel to use VectorOfTaggedObjects
claudioperez Jan 9, 2026
a6d93fc
Update IGAKLShell.cpp
claudioperez Jan 9, 2026
0d59274
Update MatrixND.h
claudioperez Jan 9, 2026
adc4b5e
Update MatrixND.tpp
claudioperez Jan 9, 2026
f4e0cca
Update MapOfTaggedObjectsIter.h
claudioperez Jan 13, 2026
69ca653
Update MapOfTaggedObjectsIter.cpp
claudioperez Jan 13, 2026
e51e7f3
Update ArrayOfTaggedObjects.h
claudioperez Jan 13, 2026
4e6ad26
Update ArrayOfTaggedObjectsIter.cpp
claudioperez Jan 13, 2026
5804878
Refactor FrameSolidSection3d for shear alignment and Poisson effects
claudioperez Jan 13, 2026
cfdef47
Delete Makefile
claudioperez Jan 13, 2026
f5846d5
Delete Makefile
claudioperez Jan 13, 2026
c6a1bf8
Delete Makefile
claudioperez Jan 13, 2026
7dbc2f7
Delete Makefile
claudioperez Jan 13, 2026
b202f2a
Update ElasticBeam2d.cpp
claudioperez Jan 13, 2026
d3089e8
Update RankinIsometry.h
claudioperez Jan 13, 2026
1e71a95
silence some compiler warnings
claudioperez Jan 13, 2026
d9907fb
remove/consolidate LoadPatternIter class
claudioperez Jan 13, 2026
4917989
remove/consolidate LoadPatternIter class
claudioperez Jan 13, 2026
5c5528d
remove/consolidate LoadPatternIter class
claudioperez Jan 13, 2026
4d22a38
remove/consolidate LoadPatternIter class
claudioperez Jan 13, 2026
77873b8
clean up
claudioperez Jan 13, 2026
b4ead57
add static asserts
claudioperez Jan 13, 2026
4c87516
Refactor domain pattern iteration and cleanup
claudioperez Jan 13, 2026
ba7f5ea
Create LoadCase.h
claudioperez Jan 13, 2026
f4f5b87
Create LoadCase.cpp
claudioperez Jan 13, 2026
45a1a23
Update CMakeLists.txt
claudioperez Jan 13, 2026
5b20090
Create StaticPattern.h
claudioperez Jan 13, 2026
cc32941
Create StaticPattern.cpp
claudioperez Jan 13, 2026
183e100
Update LoadCase.h
claudioperez Jan 13, 2026
7cb343f
Remove unused iterators and simple model files
claudioperez Jan 16, 2026
d1cce6b
Refactor LoadControl argument parsing logic
claudioperez Jan 16, 2026
482279e
Update plane.cpp
claudioperez Jan 16, 2026
f8571b6
Update Field.h
claudioperez Jan 16, 2026
eb56d79
Update LoadPattern.h
claudioperez Jan 16, 2026
1303dce
Update EulerFrame3d.cpp
claudioperez Jan 16, 2026
647a14d
Update linalg.hh
claudioperez Jan 16, 2026
9b1b98f
Update frames.cpp
claudioperez Jan 16, 2026
229c048
Remove redundant semicolons after return statements
claudioperez Jan 16, 2026
24923dd
Update FrameTransformBuilder.hpp
claudioperez Jan 16, 2026
a37cda2
Update ArrayOfTaggedObjects.cpp
claudioperez Jan 16, 2026
5e8743c
Refactor pattern and constraint handling in loading commands
claudioperez Jan 18, 2026
bb67d05
Create EigenSolve.h
claudioperez Jan 18, 2026
8dd0bb7
Create EigenSolve.cpp
claudioperez Jan 18, 2026
71e5f26
Update CMakeLists.txt
claudioperez Jan 18, 2026
538c285
Update FE_EleIter.h
claudioperez Jan 18, 2026
5860667
Update DOF_GrpIter.h
claudioperez Jan 18, 2026
90b80f0
Delete Makefile
claudioperez Jan 18, 2026
7703532
Delete Makefile
claudioperez Jan 18, 2026
d0658ac
Update MP_Constraint.cpp
claudioperez Jan 18, 2026
f738ec1
Remove displaySelf methods and clean up element interfaces
claudioperez Jan 18, 2026
173d706
Update constraint.cpp
claudioperez Jan 18, 2026
42ee10e
Update constraint.cpp
claudioperez Jan 18, 2026
afcc78d
Remove displaySelf from N4BiaxialTruss and fix rigid_links
claudioperez Jan 19, 2026
1b889b4
Delete Makefile
claudioperez Jan 19, 2026
bf815b9
Update LoadPattern.cpp
claudioperez Jan 19, 2026
c3231f5
Update MixedFrame3d.cpp
claudioperez Jan 19, 2026
90526a2
Update MP_Joint3D.h
claudioperez Jan 19, 2026
44b603f
Update SP_Constraint.h
claudioperez Jan 19, 2026
40f8eb5
Update MP_Constraint.h
claudioperez Jan 19, 2026
8bbe304
Update Prism.h
claudioperez Jan 21, 2026
c277c88
Update ForceBeamColumn3d.cpp
claudioperez Jan 21, 2026
647bfbc
Update ZeroLength.cpp
claudioperez Jan 21, 2026
27a53fb
Update UVCmultiaxial.cpp
claudioperez Jan 21, 2026
296a8eb
Update J2PlateFibre.cpp
claudioperez Jan 21, 2026
a55ba83
Update TclPackageClassBroker.h
claudioperez Jan 21, 2026
5f78e8a
Update TclPackageClassBroker.cpp
claudioperez Jan 21, 2026
a39fd28
Update analysis.cpp
claudioperez Jan 21, 2026
399caa2
Update BeamIntegration.h
claudioperez Jan 21, 2026
f21b38a
Delete Makefile
claudioperez Jan 21, 2026
d28b968
Delete Makefile
claudioperez Jan 21, 2026
818dd8b
Delete Makefile
claudioperez Jan 21, 2026
1801d88
Create ElementFE.h
claudioperez Jan 21, 2026
f05e57f
Delete Makefile
claudioperez Jan 21, 2026
f12734b
Update ExactFrame3d.tpp
claudioperez Jan 23, 2026
aca002f
Create ElementFE.cpp
claudioperez Jan 23, 2026
fff5ce4
Update ElementFE.h
claudioperez Jan 23, 2026
bc1931c
Create SubdomainFE.h
claudioperez Jan 23, 2026
08968a1
Create SubdomainFE.cpp
claudioperez Jan 23, 2026
1edce8c
Update CrdTransf.h
claudioperez Jan 23, 2026
eb335f9
Remove unused transpose matrices in MixedFrame3d
claudioperez Jan 23, 2026
5848d10
Refactor ZeroLength element command error messages
claudioperez Jan 23, 2026
6902d27
Update numberer.cpp
claudioperez Jan 23, 2026
91ddb46
Update commands.cpp
claudioperez Jan 23, 2026
16741aa
Update element_load.cpp
claudioperez Jan 23, 2026
6da9266
Update element.cpp
claudioperez Jan 23, 2026
ae85964
Delete Makefile
claudioperez Jan 23, 2026
4f44e35
Update analysis.cpp
claudioperez Jan 23, 2026
6784648
Update Bilin02.cpp
claudioperez Jan 23, 2026
da2dbd4
Create ShearFrame3d.tpp
claudioperez Jan 23, 2026
3b2172e
Create ShearFrame3d.h
claudioperez Jan 23, 2026
e440d7e
Update PrismFrame3d.cpp
claudioperez Jan 23, 2026
fde3047
Update FrameLoad.h
claudioperez Jan 23, 2026
ba59e4a
Update frames.cpp
claudioperez Jan 23, 2026
f4d6ab7
Update EuclidFrameTransf.h
claudioperez Jan 23, 2026
3961ae8
Update EuclidFrameTransf.tpp
claudioperez Jan 23, 2026
30d3cad
Update FrameTransform.h
claudioperez Jan 23, 2026
ba6dce0
Update CrisfieldIsometry.h
claudioperez Jan 23, 2026
a885198
Update EuclidIsometry.h
claudioperez Jan 23, 2026
a3e36af
Update LinearIsometry.h
claudioperez Jan 23, 2026
0ca4f4c
Update RankinIsometry.h
claudioperez Jan 23, 2026
da88181
Update SphericalIsometry.h
claudioperez Jan 23, 2026
f40ad69
Update LinearFrameTransf.tpp
claudioperez Jan 23, 2026
edb6316
Update LinearFrameTransf.h
claudioperez Jan 23, 2026
086f2e3
Update PDeltaFrameTransf3d.h
claudioperez Jan 23, 2026
fb87904
Update PDeltaFrameTransf3d.tpp
claudioperez Jan 23, 2026
b4c9bad
Update SouzaFrameTransf.h
claudioperez Jan 23, 2026
182a72e
Update SouzaFrameTransf.tpp
claudioperez Jan 23, 2026
83d515d
warning fixes
claudioperez Jan 23, 2026
61faf50
Update HHTHSIncrReduct.cpp
claudioperez Jan 23, 2026
ac6dba9
Update ZeroLength.cpp
claudioperez Jan 23, 2026
7c251f5
Refactor Node coordinate and inertia handling
claudioperez Jan 23, 2026
02631a2
Update modal.cpp
claudioperez Jan 23, 2026
7b0ba2e
Update ViscousDamper.cpp
claudioperez Jan 23, 2026
2fca14b
Fix local frame loads and mass, explore state determination
claudioperez Jan 23, 2026
6236703
Update NodalLoad.h
claudioperez Jan 23, 2026
3c7ee15
Update NodalLoad.cpp
claudioperez Jan 23, 2026
7ab7bab
Refactor AnalysisModel to require Domain reference
claudioperez Jan 23, 2026
7b7621b
Update boucwen.cpp
claudioperez Jan 23, 2026
3bde602
Update boucwen.cpp
claudioperez Jan 23, 2026
3033bbd
Update BasicAnalysisBuilder.cpp
claudioperez Jan 23, 2026
e21f911
Update BasicAnalysisBuilder.h
claudioperez Jan 23, 2026
c13be37
Remove PartitionedModelBuilder references from FEM_ObjectBroker
claudioperez Jan 23, 2026
3e6be7b
Update J2ThreeDimensional.h
claudioperez Jan 24, 2026
220999a
Refactor ForceFrame3d for clarity and efficiency
claudioperez Jan 25, 2026
efce819
Update J2Plasticity.h
claudioperez Jan 27, 2026
54cba98
Create FlowStress.h
claudioperez Jan 27, 2026
1a0d43d
Update J2ThreeDimensional.cpp
claudioperez Jan 27, 2026
c7219e4
Update J2Plasticity.cpp
claudioperez Jan 27, 2026
ff89903
Refactor frame transformation operations to use bitmask enums
claudioperez Jan 27, 2026
12dec34
Update ExactFrame3d.tpp
claudioperez Jan 27, 2026
cfea94f
Update ForceFrame3d.tpp
claudioperez Jan 27, 2026
ad45a49
Update ForceFrame3d.tpp
claudioperez Jan 27, 2026
73826b4
Update ForceFrame3d.tpp
claudioperez Jan 27, 2026
2593cc7
Update AnalysisModel.h
claudioperez Jan 27, 2026
f002741
Update ExponReducing.cpp
claudioperez Jan 27, 2026
e467bf1
Update TclPackageClassBroker.cpp
claudioperez Jan 28, 2026
0930141
formatting
claudioperez Jan 28, 2026
ca39b7b
Update NodeND.h
claudioperez Jan 28, 2026
2bf14c5
Update ctest.cpp
claudioperez Jan 28, 2026
ef77710
Update algorithm.cpp
claudioperez Jan 28, 2026
7c381a9
Update linalg.hh
claudioperez Jan 28, 2026
3d3995f
Update TclPackageClassBroker.cpp
claudioperez Jan 28, 2026
e918603
Update FrameTraceSection3d.cpp
claudioperez Jan 28, 2026
58f2a5b
Update FrameTraceSection3d.cpp
claudioperez Jan 30, 2026
f22edb4
Refactor ArpackSolver memory management and API
claudioperez Feb 1, 2026
8986724
Update EigenSolver.h
claudioperez Feb 1, 2026
8564286
Update ArpackSolver.h
claudioperez Feb 1, 2026
85b7d74
implement new getEigenvector
claudioperez Feb 1, 2026
3ea2503
Refactor ElementFE to use Element reference instead of pointer
claudioperez Feb 1, 2026
3775e75
Refactor FE_Element to use abstract base and remove static storage. R…
claudioperez Feb 1, 2026
d1b12d2
Update FullGenEigenSolver.cpp
claudioperez Feb 1, 2026
1a9c396
formatting
claudioperez Feb 1, 2026
5da9aaa
Update LinearSOE.h
claudioperez Feb 1, 2026
fcdb9a9
Update FE_Element.cpp
claudioperez Feb 1, 2026
e998c03
Update FrameTransformBuilder.hpp
claudioperez Feb 1, 2026
d95105d
Update SubdomainFE.cpp
claudioperez Feb 1, 2026
7e8a619
Update FE_Element.cpp
claudioperez Feb 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,10 @@ elseif (WIN32) # NOTE: this will execute for both 32-bit and 64-bit builds.
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>DLL")
endif()

if (CMAKE_BUILD_TYPE STREQUAL "RELEASE")
add_compile_definitions(XARA_RELEASE)
endif()

# Check for IPO and maybe use it; this can significantly slow down linking
# and can be problematic on slow or memory constrained machines (e.g., my laptop)
include(CheckIPOSupported)
Expand Down
5 changes: 0 additions & 5 deletions SRC/Field.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,6 @@ enum class Field {
DensityZZ,
DensityXY,
DensityXZ,
DensityCentroidXX,
DensityCentroidYY,
DensityCentroidZZ,
DensityCentroidXY,
DensityCentroidXZ,

PolarInertia, // NOTE: not J0; this includes density

Expand Down
8 changes: 0 additions & 8 deletions SRC/actor/objectBroker/FEM_ObjectBroker.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -56,14 +56,6 @@ FEM_ObjectBroker::getNewActor(int classTag, Channel *theChannel)
}


PartitionedModelBuilder *
FEM_ObjectBroker::getPtrNewPartitionedModelBuilder(Subdomain &theSubdomain,
int classTag)
{
return 0;
}


GraphNumberer *
FEM_ObjectBroker::getPtrNewGraphNumberer(int classTag)
{
Expand Down
7 changes: 1 addition & 6 deletions SRC/actor/objectBroker/FEM_ObjectBroker.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@ class LinearSOE;
class EigenSOE;
class DomainSolver;
class DomainDecompositionAnalysis;
class PartitionedModelBuilder;

class CrdTransf;
class Damping;
Expand Down Expand Up @@ -101,11 +100,7 @@ class FEM_ObjectBroker
FEM_ObjectBroker();
virtual ~FEM_ObjectBroker();

virtual Actor*getNewActor(int classTag, Channel *theChannel);

virtual PartitionedModelBuilder *
getPtrNewPartitionedModelBuilder(Subdomain &theSub,
int classTag);
virtual Actor*getNewActor(int classTag, Channel *);

virtual GraphNumberer *getPtrNewGraphNumberer(int classTag);

Expand Down
48 changes: 23 additions & 25 deletions SRC/analysis/analysis/StaticDomainDecompositionAnalysis.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,6 @@

#include <FE_Element.h>
#include <DOF_Group.h>
#include <FE_EleIter.h>
#include <DOF_GrpIter.h>
#include <Matrix.h>
#include <ID.h>
#include <Graph.h>
Expand Down Expand Up @@ -258,7 +256,7 @@ StaticDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool fin
// form K
//

FE_EleIter &theEles = theAnalysisModel->getFEs();
auto &theEles = theAnalysisModel->getFEs();
FE_Element *elePtr;

while((elePtr = theEles()) != 0) {
Expand All @@ -276,7 +274,7 @@ StaticDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool fin
//

if (generalized == true) {
FE_EleIter &theEles2 = theAnalysisModel->getFEs();
auto &theEles2 = theAnalysisModel->getFEs();
while((elePtr = theEles2()) != 0) {
elePtr->zeroTangent();
elePtr->addMtoTang(1.0);
Expand All @@ -288,7 +286,7 @@ StaticDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool fin
}

DOF_Group *dofPtr;
DOF_GrpIter &theDofs = theAnalysisModel->getDOFs();
auto &theDofs = theAnalysisModel->getDOFs();
while((dofPtr = theDofs()) != 0) {
dofPtr->zeroTangent();
dofPtr->addMtoTang(1.0);
Expand All @@ -305,8 +303,8 @@ StaticDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool fin
//

if (theEigenSOE->solve(numMode, generalized, findSmallest) < 0) {
opserr << "WARNING StaticAnalysis::eigen() - EigenSOE failed in solve()\n";
return -4;
opserr << "WARNING StaticAnalysis::eigen() - EigenSOE failed in solve()\n";
return -4;
}

//
Expand All @@ -328,24 +326,24 @@ StaticDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool fin
int
StaticDomainDecompositionAnalysis::initialize()
{
Domain *the_Domain = this->getDomainPtr();
// check if domain has undergone change
int stamp = the_Domain->hasDomainChanged();
if (stamp != domainStamp) {
domainStamp = stamp;
if (this->domainChanged() < 0) {
opserr << "DirectIntegrationAnalysis::initialize() - domainChanged() failed\n";
return -1;
}
}
if (theIntegrator->initialize() < 0) {
opserr << "DirectIntegrationAnalysis::initialize() - integrator initialize() failed\n";
return -2;
} else
theIntegrator->commit();
return 0;
Domain *the_Domain = this->getDomainPtr();

// check if domain has undergone change
int stamp = the_Domain->hasDomainChanged();
if (stamp != domainStamp) {
domainStamp = stamp;
if (this->domainChanged() < 0) {
opserr << "DirectIntegrationAnalysis::initialize() - domainChanged() failed\n";
return -1;
}
}
if (theIntegrator->initialize() < 0) {
opserr << "DirectIntegrationAnalysis::initialize() - integrator initialize() failed\n";
return -2;
} else
theIntegrator->commit();

return 0;
}

int
Expand Down
14 changes: 6 additions & 8 deletions SRC/analysis/analysis/TransientDomainDecompositionAnalysis.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,6 @@

#include <FE_Element.h>
#include <DOF_Group.h>
#include <FE_EleIter.h>
#include <DOF_GrpIter.h>
#include <Matrix.h>
#include <ID.h>
#include <Graph.h>
Expand Down Expand Up @@ -261,7 +259,7 @@ TransientDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool
// form K
//

FE_EleIter &theEles = theAnalysisModel->getFEs();
auto &theEles = theAnalysisModel->getFEs();
FE_Element *elePtr;

while((elePtr = theEles()) != 0) {
Expand All @@ -279,7 +277,7 @@ TransientDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool
//

if (generalized == true) {
FE_EleIter &theEles2 = theAnalysisModel->getFEs();
auto &theEles2 = theAnalysisModel->getFEs();
while((elePtr = theEles2()) != 0) {
elePtr->zeroTangent();
elePtr->addMtoTang(1.0);
Expand All @@ -289,9 +287,9 @@ TransientDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool
result = -2;
}
}

DOF_Group *dofPtr;
DOF_GrpIter &theDofs = theAnalysisModel->getDOFs();
auto &theDofs = theAnalysisModel->getDOFs();
while((dofPtr = theDofs()) != 0) {
dofPtr->zeroTangent();
dofPtr->addMtoTang(1.0);
Expand All @@ -307,8 +305,8 @@ TransientDomainDecompositionAnalysis::eigen(int numMode, bool generalized, bool
// solve for the eigen values & vectors
//
if (theEigenSOE->solve(numMode, generalized, findSmallest) < 0) {
opserr << "WARNING TransientDomainDecomposition::eigen() - EigenSOE failed in solve()\n";
return -4;
opserr << "WARNING TransientDomainDecomposition::eigen() - EigenSOE failed in solve()\n";
return -4;
}

//
Expand Down
Loading
Loading