how to get joint displacement as step-by-step in sap2000 by using SM toolbox
19 views (last 30 days)
Show older comments
I run sap2000 model using pushover analysis so I want to get displacement as step-by-step displacement what i got only as envelopes not step-by-step.
so I need code for SM toolbox to be used to get step-by-step displacement.
1 Comment
William Rose
on 18 Dec 2024
@Ali,
I recommend you post your request on the dicussion board for SAP + Matlab Toolbox, here, or at SM Toolbox Instructions in the File Exchange. Maybe you will get a response from the author or from others who uses that toolbox.
Answers (1)
UDAYA PEDDIRAJU
on 27 Dec 2024
Hi Ali,
To obtain step-by-step joint displacements in SAP2000 using the SM Toolbox, you can use the following MATLAB code snippet. I assume you have already set up your SAP2000 model and performed the pushover analysis.
SapObject = actxserver('SAP2000.SapObject');
% Start Sap2000 application
SapObject.ApplicationStart;
Sap = SapObject.SapModel;
Sap.File.OpenFile([FilePath,'.sdb']); % Open your model
Sap.Analyze.RunAnalysis();
% Get the number of steps in the pushover analysis
numSteps = Sap.Results.NumberOfSteps;
% Initialize arrays to store displacements
jointDisplacements = zeros(numSteps, 1);
% Loop through each step to get joint displacements
for step = 1:numSteps
% Get joint displacement for a specific joint (e.g., joint 1)
[displacement, ~] = Sap.Results.JointDispl('Joint1', step);
jointDisplacements(step) = displacement;
end
% close Sap2000
SapObject.ApplicationExit(false());
SapModel = 0;
SapObject = 0;
This should give you a workaround otherwise you can reach out to https://web.wiki.csiamerica.com/wiki/spaces/kb/overview?homepageId=1998862.
0 Comments
See Also
Categories
Find more on Run on Android Device in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!