SDT-base         Contents     Functions         Previous Next     PDF Index

1.8  Release notes for SDT and FEMLink 7.5

1.8.1  Key features

SDT 7.5 is compatible with MATLAB 9.4 (2018b) to 24.1 (2024a). In the base and FEMLink modules, key changes of this release are

SDTools also produces modules that are mostly integrated in custom industrial developments. The contour of these modules have been reshaped and tokenized. The associated developments are now listed here to ease tracking of our development efforts.

1.8.2  Notes by MATLAB release

1.8.3  Detail by function

demosdtStandardization of Garteur examples to illustrate main data types and docks. Execute help sdtdemos in the MATLAB console to see all DemoGartData* commands
fe2ssMany modifications related to state-animation using feplot and interactivity with iiplot.
fe_casegWork focused on step and parameter handling
  • Change[Set,Do] high level model changes, allows altering a model during a process. Changes include elements elt, element properties assignment elprop, material or integration rule properties mp, case entries, stack entries, and callback implementations for custom applications (cbk).
  • ConnectionSurfaceAuto automated surface set generation for volume selections based ConnectionSurface definition.
  • Par advanced model parameterization for SDT
    • ParInit defines parameters in a model (constitutive law, integration rule, case entry). Adds a field .param to the data structure.
    • ParSet applies a parameter combination in a parameterized model.
    • Par2Case transforms generic parameters to par entries in a model
    • Par[mat,pro,se] high level generation of par entries for constitutive laws, integration rules or superelements with associated parameter handling.
fe_coorcontinued extensions of null space generation for systems with structured constraints. This is in particular used for reduction of problems with periodicity [2].
fe_defUnderwent many minor extension of standard functionality
  • subchcurve handles transfers in the curve format with field dof (input/output pairs)
  • subdof handles wireframe and identification result data with fields tdof and Qual
  • curveclean verification of consistence for curves
  • curvejoin handles field dof, tdof,res and curve units
  • zCoefCompose, zCoefkcoefurn, zCoefStr2Fcn improved parameter interpretation capabilities for matrix coefficient generation in parametric studies.
  • Mode+Sens handles reduction basis for parametric models followed by enrichment with static loads at sensor locations
  • ViewEnerK allows to display model error after expansion as stiffness energy in elements, enery density (useful for uneven meshes) and energy fractions
  • MDRE (Minimum Dynamic Residual Expansion) related algorithms have been fully rewritten to allow calls from external loops (required for model updating using MDRE implemented in up_min) : mdre_solve, mdrewe_jsolve,mdre_sdtslave,mdre_LineSearch
fe_normprinc build basis with orthogonal principal shapes and rigid face, this is used to allow time domain resultant sensors in reduced models.
fe_qualitywhich supports mesh quality analysis was extended
  • added Radius quality criterion to some elements
  • handles pyra5 and pyra13 elements
  • CleanDegenRecast recasts degenerate element types to regular ones.
  • CleanNJStraight moves middle node of second order elements with negative Jacobian to obtain straight edges (iteratively) to help resolve mesh quality.
fe_rangeis the entry function to DOE handling through SDT and was notably extended.
  • BuildUrn integrated sequential DoE generation from a URN input. This allows combining different stratgies for sub-DoE using base strategies grid for factorial builds, vect for coupled builds, simple for simplex builds.
  • Build[randperm,randi] supports generation of random sampling implementing Latin Hypercube Sampling strategies.
  • DisplayPar displays parameter value distributions for DoE samples, allows searching patterns in parameters combinations resulting in meeting specific conditions. This supports box plots for large DoE and random sampling.
  • Gene[Loop,Post] implements a genetic algorithm scheme for optimization (based on NSGA-II). The post-treatment provides robustness analysis by assessing the effect of each parameter optimal value on the overall cost function.
  • struct2ConstVar.Range detects constant parameters in a DoE and moves them to field info.
  • Major revision of sensor definition, see section 4.6 :
    tdofResolveDirSpec Resolution of sensor direction using FEM has been rewritten.
    Sensor definition from structure of cells defining tdof,Node, Elt.
    TDofDefine build tdof interpreting measurement channel names (used mainly to read mat files from Siemens TestLab).
  • TestBas tab for mesh superposition in dock CoTopo was extended :
    splitsensdof and mergesensdof allow to move parts of the slave mesh individually.
    mastersel and slavesel customize the display of master and slave meshes.
    nodelistmaster and nodelistslave allow to provide paired nodes in both meshes without automatic selection of top most surface nodes from the camera point of view.
    busyWindow is displayed when ICP is running.
    BandNumber, Cmin, Cmax and ColorMap customize the matching distance view.
    Clean Word report generation.
  • MeshSensAsMPC implements sensors using multiple point constraints based observations. This allows exports to other software of SDT sensor based strategies.
fe_simulnow includes report generation of mode computations (button in Mode tab). Underwent many performance/robustness extensions associated with direct frequency and state-space building methods.


  • animmovie movie generation upgrades
  • Update of interactions with feplot window ; camera orbit, zoom, pan, animation step,...
  • Cleaned initialization with a wireframe instead of a model (build an empty model containing the wireframe)
  • initdef deals with the now clear separation between DOF (typically model computation result) and .tdof (typically test result).
  • fio high level assembly and combination of input/output fields on an SE for FRF computation.
  • SeConnSplit procedure to split superelements into minimal decoupled matrices.
  • SENLSel implements a partial reduction strategy to keep non-linearity supporting elements in a model.
  • SEFromTrace procedure for selection+interface reduction using a given modal basis.
  • SEInitCoef generation of p_supercoefficients to enable matrix parameterization.
  • SensPlace high level sensor observation matrix generation on a model with superelement.
  • SeFmax condense high frequency part of superelements.
id_polyLSCF used to build stabilization diagrams has been improved to support unevenly spaced frequency samples. Mode residues are now computed together with mode poles to use shape stabilization criterion (in addition to frequency and damping criteria).
  • Quality table updated to deal with identification by blocks results, see qual
  • Build Cluster table to semi-automatically group modes identified from parametric transfers into clusters (using frequency, damping, shapes similarities)
  • Add Quality table to the automatic report of identification results
  • Major rewriting of IDRC algorithm to increase speed and improve handling of out of bands poles in LocalPole and LocalBand identification modes.
 Removed inconsistencies between id_rcand id_rcopt(this is first step toward merging the two algorithms)
  • GetCluster guesses mode clustering from parametric identification (By mode) and MainModes extracts cluster indicators (mean and standard deviation of frequencies and damping, average shape)
  • JoinBatch concatenates shapes from several batches using common reference (typically use after reading Polytec FastScan files)
  • NodeIdRem, which removes dof from transfers and identification results, now deals with identification By block
  • IdCluster table and methods used in identification mode By to extract shape clusters (main shapes, associated frequency and damping statistics)
  • Ident Major rewriting of Ident tab.
    • Former buttons have been renamed for clarity
    • Identification by bands is now possible from GUI (mode LocalBand in addition to LocalPole and FullBand)
    • Mode indicator functions open in a separate figure place below the main iiplot in the dockId
    • LSCF pole initialization using stabilization diagram has been merged with Ident tab
    • By buttons have been created to deal with identification by blocks of transfers interactively
  • By methods for identification by blocks of transfers
    • ByInit : initialization of block definition. For instance batches of transfers with common references, coherent transfers with varying environment parameter (temperature, preload,...) ...
    • BySel : Extract one block of transfers and identification results from the whole DoE (bySplitXf)
    • ByStore : Assign back one block of transfers and identification results to the whole DoE (byStoreXf)
    • ByOpt : Pole optimization strategy to automatically track modes between subsequent blocks of transfers
    • ByView : Several post-treatment plots to analyze identification by blocks results (ByViewTrack, ByViewMAC, ByViewCluster, ByViewMainModes, ByViewTestAll)
    • ByExport : Export identification by blocks results to Excel
    • ByQual : Quality table compatible with By mode
  • ChCurve tab proposes an alternative way to navigate between channels in a curve.
  • Channel tab interactivity upgrades
ii_macMajor rewriting of GUI associated to dockCoShape
  • Update MAC tab (va, vb, PairA, PairB, MACCombine through GroupA and GroupB, CoMac, MacCo mean and by mode, frequency and damping error between paired modes, link with iiplot, Word report generation)
  • CoExp tab used to build reduction of (parametric) models before expansion
  • MDRE tab to navigate through MDRE expansion results
    • Choose channel : gamma, shape number, model parameter, ...
    • Select view : Expansion shape, test shape, model error, test error,...
  • Fdac implementation of Frequency domain assurance criterion.
  • Upgrade interaction between Ident tab and transfer display : vertical line at mode frequencies, blue line at selected freqeuncies, grey background to show bands
  • Horizontal and vertical harmonic lines (PlpHarmH, PlpHarmV)
  • BFill fills surface contained between two curves to highlight envelope.
  • ColorMapMinBand colormap with white band below the minimum value. Handle clim, color map selection and colorbar display.
ii_poestPole estimation from mode indicator figure computes identification quality to select transfer with highest contribution. Estimated mode shape is displayed in feplot if a wireframe is defined.
  • Update handling of ODS display
  • Update movie generation strategy
  • Update Ident table combining former buttons, LSCF buttons and By mode buttons
  • Common dock saving strategy (CoTopo, CoShape, Id)
  • Clean dock opening with busy window and input arguments (model, wireframe, transfers,...) provided through option structure.
  • interactURN eases implementation of interactions. This is enabled by major work on low level functions rewritten to link interactivity events (key pressed, mouse click, mouse scrolling) to action callbacks (camera motion, object highlighting,...)
  • Cursor handling upgrade on iiplot figure, feplot (FEM, SensDof)
  • db sub-tables definition for each type of data possibly stored in a DataBase (Model, Def, Wire, Transfer, Id, TDef,...)
  • interactURN definition for iiplot, stabilization diagram, tabs (Channel, Ident, CoTopo), ...
nor2ssnor2se command supports transformation from normal nor to superelement format SE.
  • ReadInfo command provides a structure summarizing the file content : measurement type (Time, FFT,...), acquisition settings, number of measured points, generator settings,...
  • ReadFastScan command reads Polytec measurements in FastScan mode. It allows a custom handling of auto-spectra and cross-spectra to consider references all together and combine sequential measurements
  • option TimeScan stores sequential time measurements as a process_r sigEvt CurveModel


underwent major performance and interactivity changes
  • questdlg (same as MATLAB with specific SDT options)
  • RunScript from file (in MATLAB desktop and deployed mode)
  • getfile,putfile and getdir (same as MATLAB with specific SDT options)
  • dlg dialog window with style (error, warning, info,...), closing countdown,...


  • SiteReq is the new standard to generate license request
  • Top check MATLAB status by pid allowing memory tracking.
  • ClearSDTClasses
  • Mcc and DefaultBrowserCom updates to handle deployed mode
  • Rlm updates that gather licensing utilities
  • Pyenv python environment setup check
  • SysPathMex sets up proper library paths for mex usage.
  • PatchUpgrade Download an SDT update
ufreadProvides a more consistent support of test files in universal and other formats
  • .xls files assuming SDT model in tabs Nodes, Elements, Sensors, ...
  • .mat files that may contain
    • Data exported from SDT
    • Data exported from Siemens Testlab : subfunction lms, channel parsing (lmsChannelParse), unit handling (quantity_lab)
    • Data exported from Vibes
ufwriteexport of SensDof entries to .xlsx format, to match the reading capability
SDT handle
  • .GetData integrates use of GetData methods SDT objects with robustness for non-objects. Dedicated method -mdl for feplot stored models, possibility to realize GetData for specific classes only.
  • .fileutil file handling methods
    • integrates a zip call allowing use of 7-Zip instead of the builtin zip if present.
    • .fileutil.fsafe integrates a series of commands for safe manipulation (with lock file strategy) and PC compatible implementations of some Unix tools. save, SaveKeep renames old file if existing, move, movenoe fail safe move, load, delete, printw direct print in w mode, tail, whos, whosl quick whos with first level variables only.


initial introduction of a database/graph object to formalize relation between project data and processes.
vhandle.nmapcontinued development of maps used for DOE handling, node and sensor naming, FEMLink import of names (abaqus, nasread initial support of reading of ANSA-META comments)
vhandle.tabnew object for support of tables displayed as tabs in java tabbed panes. This gives a unique entry point for methods implemented in cinguj, comstr, ...
vhandle.uoadded a full compatibility layer to allow synchronization between EditT java objects used in GUI and a MATLAB handle. This object supports display of a tooltip associated with each field and handling of formats for display. This was used for code revision of sensor in fe_sens and spectrogram generation.

1.8.4  Developer notes

This section lists developments that can be of interest but are not sufficiently documented, robust or stable enough to be considered as supported.

  • nmap handling of sensor names. Map:TestLab is used for renaming between raw measurements and import within SDT.
FEMLinkStandardized Read commands. This will be documented in relation to the sdtm.nodeLoad commands which correspond to the standardization processes associated with de development of database operations.
  • ColorElt option -Frac3 or -Frac4 to display the energy map in elements at a cumulative sum by increasing energy density (Frac3 = positive energy, Frac4 = signed energy)
  • ColorNodeSet show node sets as color
  • CutSpectro show max on left/right axes for spectrogram
  • obsEnerAtNode operator to observe energy in elements at nodes
  • multiCursor multiobject cursor to track properties in multiple figures.
  • Other new subfunctions ViewIOMatrix, SaveSel uniform checks to allow selection saving, MergeSel supports combinations of standard feplot selections.
  • SetSensDof button to toggle sensor name display
  • infoSens and infoMatch gives information on sensor content and match quality
  • MeshGrid project a grid onto a mesh from a facing normal
  • TdofTable.urn interprets sensors string definitions tdofCheckTable is use for robust definition checks
    TdofFixOrient is initial work on automated sensor orientation verification.
  • AddFluid adds a fluid SE to a solid model/or gen fluid SE from fluid selection
  • AddCoupling adds or generates a fsc SE to a solid model containing a fluid SE
  • SolveMVR[,Direct] generates a reduced FSC model optionally ready for FRFZr
  • SolveEig computes modes from a FSC model
  • AcTL acoustic transmission loss computation
  • AcRayleigh acoustic Rayleigh integral computation
ii_macSubTdof, BadSensId give a first implementation of sensor sets and sensor elimination.
  • Polar plot upgrades to handle better using different data as x axis.
  • Listeners handled by listenIdMainAlt and idcomPoleLines to update vertical lines highlighting poles in transfers.
sdt_en-us.csvcontains updated definitions of many tabs
  • Report for report generation,DB for database ,GMSH GUI interface to the open source mesher GMSH. MDRE for minimum dynamic residual expansion, IdCluster shape clustering, UpMin model optimization, ChCurve alternate navigation in curve. CoExp tab.
  • Ident tab major update : merge LSCF and add identification By blocks buttons
  • Daq subtables for the unsupported driver to NI / data acquisition toolbox : Main, AcqSet, queueSrc, trigStart, trigStop, procSig (FRFEstimation, HarmEst, TimeRecord)
sdt_localeTable management with sub-tables definition (TableFamily) and table merging strategy (TableMerge)
  • .range is the entry point for DOE handling utilities. See d_doe for initial examples.
  • .busyWindow open modal window always on top to prevent interaction with GUI during heavy processes (dock opening, data loading, mode computation...)
  • many new methods provide support for base SDT GUI operations.
sdtsysimplementation of virtual and physical testing that will be gradually documented.
up_minMajor update of this utility function for model updating through MDRE expansion method
  • SolveMDREInit initializes everything required to perform MDRE expansion with models that may contain parameters. This is done using numerical and experimental data stored in a VectCor handle
  • SolveExploop computes expansion for a list of γ parameters and model design points
vhandle.chandleintroduced ioDoStep method allowing integration of non-linearities (used for debugging/post-processing in SDT/nlsim). hsig method supports a number of commands for harmonic signal generation/estimation. cleanNL is used to verify format of non-linearities before storage in the mkl_utils mex file for optimized time integration.
vhandle.matrixextended support of diagonal sparse matrices, introduced initial support of compound matrices (by block or product), started formal field Jacobian implementations. Method rsvd implements real subspace singular value decomposition of complex time series. Method dfr supports strategy selection for full matrix direct frequency response.

xxx move Extension of model parametrization capabilities, with high level calls, and more matrix types support, now including shell thickness.

©1991-2024 by SDTools
Previous Up Next