sdtcheck#

Purpose

Installation handling and troubleshooting.

Description

For SDT to run in MATLAB  the path to SDT functions must be added to the MATLAB search path. Additional libraries are also required that sometimes need an explicit declaration in MATLAB. sdtcheck then packages manual input to alter the user MATLAB settings if needed.

Commands

path#

This command properly defines the MATLAB search path to run SDT. It has to be used at startup if the search path was not saved in your MATLAB session with SDT installed.

% Initialization of SDT in MATLAB path
pw0=pwd;
cd('path_to_my_sdt')
sdtcheck path
cd(pw0)

patchJavaPath[,set]#

SDT GUI utilities are based on Java and require additional Java libraries to be loaded by MATLAB. To ensure proper SDT GUI running the user needs to alter the default MATLAB classpath.txt.

  • Command patchJavaPath checks whether the Java classpath contains the libraries needed by SDT. If not a warning will be issued along with an executable link to modify the Java classpath.
  • Command patchJavaPathSet generates a custom Java classpath for the user MATLAB configuration to add the libraries required by SDT. Note that you will need to restart MATLAB for the modification to be effective.

This setup is highly depending on the MATLAB version

  • For MATLAB versions greater or equal to 8.0 (from R2012b). There is no known issue for the Java path setup.
  • For MATLAB versions up to 7.14 (up to R2012a). The setup strategy allows local customization but using a file that will impact all MATLAB versions. By default this function thus attemps to alter the base MATLAB file. For certain users, this operation can be not permitted, and it is then advised to run the following command
    sdtcheck('PatchJavaPathSet-forceStartupDir')
    
    Be aware that this command will add a file in your startup directory. Make sure to delete it before launching other MATLAB versions from the same startup directory. Corruption and failed Desktop launches can otherwise occur.

patchFile[,set]#

To distribute more intricate examples, SDTools uses patches in the form of zip files downloaded to the fullfile(sdtdef('tempdir'),'sdtdemos') directory and possibly extracted in the same directory. For example

 fname=sdtcheck('PatchFile',struct('fname','DbTest.unv','in','DrumBrake.zip'));

will search a DbTest.unv file and if not found will download the DrumBrake.zip set of files where DbTest.unv is expected to be located.

patchMkl[,path,_rt]#

The new ofact solver based on MKL Pardiso requires additional libraries to run. patchMkl packages its installation.

  • patchMkl downloads and installs the libraries.
  • patchMklPath verifies the search path and library path.
  • patchMkl_rt provides troubleshooting information regarding library installation.

SdtRootDir#

Provides the SDT root directory.

wd=sdtcheck('SdtRootDir')