a collection of strand7 api utilities and templates
run the init.m script from anywhere to add all files to the matlab search path
To get the Stran7 API working you need Stran7 installed (with the license configured) and a 32-bit version of Matlab.
-
Matlab - Newer versions of Matlab don't require any setup, but older versions (circa 2011) need a default compiler to be selected (done with
mex -setup). -
Strand7 - The path to the Strand7 executable need to be in your namespace. For Windows machines, copy/paste the full path into your environmental variables. The path is usually located here:
C:\Program Files (x86)\Strand7 R24\Bin
The Strand7/Matlab API needs some boiler plate code to run and handle errors correctly. Typically this takes the form of a try/catch statement which calls a main function:
function apiCalls()
try
apiInit();
results = main(input);
apiClose();
catch
apiForceClose();
rethrow(lasterror);
end
end
function results = main(input)
% do some things...
end
apish.m handles this boiler plate code and acts as a self-contained wrapper for executing your main function.
Refactoring the above code using apish becomes:
fcn = @main; % create a function handle
results = apish(fcn,inputs);
A compiled PDF of the published example files can be found here
(in no particular order) 5. assign nodal restraints - apply nodal restraints to beam boundary conditions.
-
linear transient solver - nodal load - use the linear transient solver to pull nodal displacements due to a 1kip point load at DOF3.
-
natural frequency analysis - assign fixed-fixed boundary conditions and perform a natural frequency analysis. frequencies, mode shapes, and mass participation are extracted.
-
assign discrete springs to the beam - assign discrete springs to the beams boundary nodes
-
spring stiffness sensitivity study - perform a sensitivity study of a rotational spring applied at the pinned end of the simply-supported beam. track and plot the changes in the natural frequencies.
-
update spring values based on natural frequencies - a random spring stiffness is generated and assigned to the pinned end of a simply-supported beam. a natural frequency analysis is performed and used as the 'experimental' data. particle swarm optimization is then used to update the spring value based on the first three natural frequencies obtained by the 'experiment'
-
[Property mass sensitivity study] - perform a sensitivity study on density of material assigned to beam property. Track and plot the changes in the natural frequencies.
-
[Nodal Mass Sensitivity Study] - perform a sensitivity study on adding non-structural mass to select nodes. Track and plot the changes in the natural frequencies.
-
[Beam property section sensitivity study] - perform a sensitivity study of the beam's moment of inertia (I11). Track and plot the changes in the natural frequencies.
-
[Plate density sensitivity study] - perform a sensitivity study of the density of a plate property.
-
[Plate thickness sensitivity study] - perform a sensitivity study of the plate property thickness.
- [Update Parameters based on natural frequency results] - perform an updating run of select parameters so as to match the model natural frequency results with experimental frequencies and mode shapes.