|
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
|