[Top] [Contents] [Index] [ ? ]

Libdext Matlab Wrapper (matdpp)

This document describes the Matlab Wrapper (matdpp) for the Data Extraction Library (libdext). matdpp allows libdext scripts to be used to create data structures that are accessable from within Matlab. This edition documents version 1.0.

1. Notices  
2. Introduction  
3. Installation  
4. Using the readdext() Function  
5. The Library Files  
6. Examples  
7. Troubleshooting  
Concept Index  

 -- The Detailed Node Listing ---

Introduction

2.1 Companion Software  
2.2 Obtaining  
2.3 Other Documentation  

Installation

3.1 Dependencies  
3.2 Platforms  
3.3 Required Build Tools  
3.4 Building  
3.5 Environment  


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1. Notices

The Libdext Matlab Wrapper (matdpp)

Copyright (C) 1997 - 2003 Mike Arnold, Altjira Software

Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.

Matlab is a trademark of The Mathworks Inc.

This software and documentation is provided "as is" without express or implied warranty. All questions should be addressed to mikea@altjira.com.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2. Introduction

matdpp allows libdext scripts to be used to create data structures that are accessable from within Matlab. It it is comprised of two components. The main component is a single C-MEX function called readdext(). As a C-MEX function, readdext() is available within the Matlab environment.

readdext() takes exactly one input array, being a string containing the libdext script, and returns exactly one output array, containing the requested data structures. No data structures, other than those returned in the output array, are preserved across multiple calls to readdext().

The second component are a set of optional matlab library files built around readdext() to facilitate its use.

2.1 Companion Software  
2.2 Obtaining  
2.3 Other Documentation  


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1 Companion Software

For a list of software that works with libdext (and matdpp) refer to the libdext website.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.2 Obtaining

matdpp may be downloaded from http://www.altjira.com/distrib/matdpp. See also 3.1 Dependencies, and 2.1 Companion Software, for other software that may need to be downloaded and installed.

The latest version of this documentation may be found at http://www.altjira.com/support/matdpp/matdpp.html.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.3 Other Documentation

Further information regarding the interoperability of NMI components and supporting frameworks, their development and use, and all associated support and post-processing packages, is available in the NMI Simulation Resources documentation.

This documentation is also installed to ${prefix}/doc/matdpp, where `${prefix}' is the installation directory specified during the build configuration.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3. Installation

3.1 Dependencies  
3.2 Platforms  
3.3 Required Build Tools  
3.4 Building  
3.5 Environment  


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.1 Dependencies

matdpp requires both the Network Model Interface library libnmi and the xutil library libxutil, as well as the Data Extraction library libdext. It also requires matlab including the Matlab mex compiler.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.2 Platforms

matdpp has been successfully tested on the following systems:


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.3 Required Build Tools

The following software is suggested. Other versions may work but have not been tested.

Package maintenance requires:


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.4 Building

Refer to the README and INSTALL files in the distribution.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.5 Environment

readdext() is installed to `$prefix/libexec/matdpp' and the matlab library files are installed to `$prefix/share/matdpp', where `$prefix' is the installation prefix given to the configure script during building. These directories should be included in the Matlab path, for example by modifying the user's Matlab startup file, which is usually `/home/user/matlab/startup.m'. For example, for the default prefix `/usr/local', the following lines would be added:

addpath('/usr/local/libexec/matdpp') addpath('/usr/local/share/matdpp')


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

4. Using the readdext() Function

readdext() takes a single input array, being a string containing the libdext script. Note that this means the script itself, not the name of the file containing the script. For details of the script syntax refer to the libdext libdext documentation.

A single 1 by 1 output array is returned containing the following structure:


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

5. The Library Files

The library files fall in to the following categories:


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

6. Examples

For examples on writing libdext scripts refer to the libdext documentation.

The following is an example from the TENNS cerebellum package that utilises the matlab library files built on top of readdext(). It extracts a data set to the measured activities of the inferior olive cells in a cerebellar simulation. This data set is then broken up in to 10 windows, and the mean, standard deviation, minimum and maximum values are calculated for each inferior olive cell in each window. The resulting values are then plotted over time.

 
dext_load_linespec;
ps = dext_default_plotspec;

hold off;
script = dext_script('^Io<','N-build-Net-Probe.asc');
data = dext_extract(script);
windows = dext_window_divided(data,10);
ps.filename = 'io.eps';
ps.legend = 'raw';
dext_plot_percol_minmaxmsd(data,windows,gLineSpecColour,gLineSpecColourDash,gLineSpecColourDot,ps);


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

7. Troubleshooting

  1. problems with MEX files

    If the function does not compile or does not load refer to the Matlab documentation for debugging C-MEX files. The Matlab mex compiler may be incorrectly configured for the user's environment. First verify that the mex compiler is working for both C files and C++ files. Note that C++ files are not officially supported by Matlab, though example and test files do exist within most distributions. Refer to the Matlab documents regarding the use of C++ files with the mex compiler.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

Concept Index


[Top] [Contents] [Index] [ ? ]

Table of Contents


[Top] [Contents] [Index] [ ? ]

Short Table of Contents

1. Notices
2. Introduction
3. Installation
4. Using the readdext() Function
5. The Library Files
6. Examples
7. Troubleshooting
Concept Index

[Top] [Contents] [Index] [ ? ]

About this document

This document was generated by Mike Arnold on June, 19 2003 using texi2html

The buttons in the navigation panels have the following meaning:

Button Name Go to From 1.2.3 go to
[ < ] Back previous section in reading order 1.2.2
[ > ] Forward next section in reading order 1.2.4
[ << ] FastBack previous or up-and-previous section 1.1
[ Up ] Up up section 1.2
[ >> ] FastForward next or up-and-next section 1.3
[Top] Top cover (top) of document  
[Contents] Contents table of contents  
[Index] Index concept index  
[ ? ] About this page  

where the Example assumes that the current position is at Subsubsection One-Two-Three of a document of the following structure:

This document was generated by Mike Arnold on June, 19 2003 using texi2html