Hi everyone,

I hope that all of your Christmas shopping is going well, and that
you're not quite sick of Christmas carols just yet.  ;-)

As is typical, I've been slugging away at xmds, and have added a few
more bits and pieces to it.  The important most recent changes are: an
xsil2graphics bug was fixed; simulation compile options can now be
specified via preferences; and binary input is now in and seems to be
working.

Here are the details:

xsil2graphics bug:
  * In the previous release of xmds I updated xsil2graphics to use a
    more logical file naming scheme (specifically to use
    x.dat instead of temp.dat).  However, I
    didn't change one of the references to temp.dat and hence the
    files wouldn't load into matlab (I didn't test the problem in
    scilab, although, it's quite likely the problem was there as
    well).  This bug has been fixed, and has been part of the
    development core since development build
    xmds-1.3-1_20031216.tar.gz.  Anyone using xsil2graphics should
    download and use this build so that this problem is fixed.

Preferences
  * It's now possible for people to specify the simulation build
    options in a preferences file.  Previously, if one wanted to
    change how the simulations were built, one had to recompile xmds
    with the relevant compile flags etc.  Now, all one has to do is
    specify the compilation flags in a preferences file.  xmds looks
    for a file called xmds.prefs in $HOME/.xmds/ and (if not found
    there) in the directory local to the xmds script you are trying to
    compile.  The format of the preferences file is:
         = 
	e.g.  XMDS_CC = gcc
    Comments can be added by using a hash character (#).  Any thing
    after (and including) the hash are ignored.  As another example of
    a preferences file, here is my xmds.prefs:

# xmds preferences file
XMDS_CC=gcc  # this, here, is a comment
XMDS_CFLAGS = -pthread -O3 -ffast-math -funroll-all-loops -fomit-frame-pointer
XMDS_LIBS=-lstdc++ -lm -lxmds -L/home/cochrane/bin
XMDS_INCLUDES = -I/home/cochrane/bin
THREADLIBS = -lfftw_threads

    The use of preferences can be switched on and off with the use of
    the  tag (which should be located after the
     element, near  and friends live).  This
    is a boolean option, so to switch preferences off one should use
    no.  The default is "yes", but if you don't
    have any preferences, or you haven't specified them all, then the
    default values (that were decided when xmds was built) are used
    for anything not specified.

Binary input
  * One can now use binary data as input to xmds.  Previously, within
    the  element the optional  tag expected to see a
    list of ascii values, but can now read binary data by adding the
    format="binary" attribute to the  tag i.e.:
          moo.dat 
    The default is still ascii, but if you want to, you can specify
    ascii input by using format="ascii".

Other things that I've forgotten to mention:
  
xmds works in Cygwin environment
  * For all of those people who use Windows, or have colleagues who
    use Windows who may want to use xmds, help is at hand!  The Cygwin
    environment is a way for Windows users to run Unix/Linux
    applications and have a Unix/Linux environment.  I haven't added
    any help as how to install xmds under this environment, however, I
    do know that xmds works within Cygwin (I've tested it myself, and
    I've heard from someone in the UK who has started to use xmds in
    Cygwin).  So, if you have mates/friends/colleagues/relations/pets
    who may be interested in using xmds, but don't have access to
    Unix, then point them in the direction of Cygwin.  A handy way to
    make sure that xmds works is to try to install Octave for Windows
    under Cygwin.  The Octave website http://www.octave.org has
    instructions for how one should do this, so this is the first stop
    to install xmds on Windows until I get some help docs up and
    going.

loadxsil.m doesn't work in Matlab 4.2c
  * I know this doesn't apply to many people anymore, but I've found
    that loadxsil.m doesn't work on Matlab 4.2c.  So, if you want to
    use this version of Matlab, you'll have to use xsil2graphics (and
    the latest build!!) to use xmds output properly.

Right.  I think that's it for the moment.  Questions, comments and
ideas welcome.  And if I don't do anything more spectacular before the
25th, Merry Christmas everyone and best wishes for the New Year!

Later

Paul


 



Introduction | Examples | Downloads | Documentation | Archives | Script Repository | FAQ | News | Links | Contacts