Contents  
Functions  
 ![]() ![]() |
Observation of stress and resultant fields is an application that requires specific tools for performance. A number of commands are thus available for this purpose. The two main commands are fe_caseg('StressCut') and 'StressObserve'.
This functionality has been significantly stabilized for SDT 6.5 but improvements and minor format changes are still likely for future releases.
Stresses can be observed at nodes of arbitrary meshes (view meshes that are very much related to test wireframes). You should look-up feutil('object') commands for ways to build simple shapes. A few alternate model generation calls are provided in fe_caseg('StressCut') as illustrated below and in the example for resultant sensors.
% Build straight line by weighting of two nodes VIEW=fe_caseg('stresscut', ... struct('Origin',[0 0 0;0 0 1], ... % [n1,n2] 'steps',linspace(0,1,10))) % Automated build of a cut (works on convex cuts) model=demosdt('demoubeam-pro');cf=feplot; RO=struct('Origin',[0 0 .5],'axis',[0 0 1]); VIEW=fe_caseg('StressCut',RO,cf); feplot(VIEW) % note problem due to non convex cut %View at Gauss points model=demosdt('demoubeam-pro');cf=feplot; cut=fe_caseg('StressCut-SelOut',struct('type','Gauss'),model); % Observe beam strains at Gauss points [model,def]=beam1t('testeig') mo1=fe_caseg('StressCut',struct('type','BeamGauss'),model); cut=fe_caseg('stresscut -radius 10 -SelOut',mo1,model); cut.StressObs.CritFcn=''; % Observe all components C1=fe_caseg('stressobserve',cut,def)
The first use of StressCut is to build a feplot selection to be used to view/animate stress fields on the view mesh.
A basic example
% build model model=demosdt('volbeam');cf=feplot(model); % build view mesh VIEW=fe_caseg('stresscut', ... struct('Origin',[0 .05 .05;1 .05 .05], ... % [n1,n2] 'steps',linspace(1,0,10))) % build stress cut view selection sel=fe_caseg('stresscut -selout',VIEW,cf);cla;feplot % generation observation cf.def=fe_eig(model,[5 10 0]); fe_caseg('stresscut',sel,cf) % Overlay view and nominal mesh fecom('scc2') % Force equal scaling
StressCut sensors provide stress post-treatments in model cutoffs. The command interpets a data structure with fields
.EltSel | FindElt command that gives the elements concerned by the resultant. |
.SurfSel | FindNode command that gives the selection where the resultant is computed. |
.type | contains the string 'resultant'. |
Following example defines a StressCut call to show modal stresses in an internal surface of a volumic model
demosdt('demoubeam') cf=feplot;fecom('showpatch') cf.mdl=feutil('lin2quad',cf.mdl); % better stress interpolation def=fe_eig(cf.mdl,[5 10 1e3]); cf.def=def; r1=struct('EltSel','withnode {z<2}', ... 'SurfSel','inelt{innode{z==2}}', ... 'type','Resultant'); fe_caseg('stresscut',r1,cf); % adapt transparencies fecom(cf,'SetProp sel(1).fsProp','FaceAlpha',0.01,'EdgeAlpha',0.2);
The observation in feplot is performed on the fly, with data stored in cf.sel(2).StressObs (for the latter example).
Command option -SelOut allows recovering the observation data. Field .cta is here compatible with general sensors, for customized obervation.
cta=fe_caseg('StressCut-SelOut',r1,cf);