September 2024
Main publications concerning the method are:
Until June 2004 the installation did consist in a zip file which
had to be extracted in the directory of your choice. But with version
0.98d and above IMaCh we are using a windows installer (Inno setup 5.5.5).
In order to facilitate the use of IMaCh we associated the .imach
extension to two features: editing and running. Thus by right clicking
on a foo.imach file you can either 'edit'the file (default) with
the notepad editor or 'run' it with gnuplot (you need a recent version).
You need to have the Administrator privileges to install the
software. We don't propose anymore an installation which does not
alter registry because we think that you all have access, even
temporarly, to Administrator privileges (usally by right clicking the
.exe you can choose "Install with Administrators privileges".
Very old (historical) Windows versions are accessible here.
You need to click on imach application and IMaCh will be
launched in a Terminal window, asking you to enter the name of
a parameter file. A parameter file is a text file with an
extension .imach (but you can use a .txt extension
if you want). Among the parameters required, a data file name has to
be entered. It can be a relative file name
like ../../data/data1.txt.
If you open a new finder you
can drag an IMaCh parameter file into the terminal IMaCh Window that
you just created.
At the end of the run the terminal window will not disappear, the
program will invite you to enter "e" for editing/viewing the
results (with your browser). You can also enter "q" for
quit, or g to rebuild the graphs (.svg and .png) with gnuplot
(in the case that you modified the .gp file.
You can use your finder or browser (there is no more difference
between both) and click on the main
.html (or .htm) file created. The name of this main
html file is the same name as your parameter file, only the
extension .imach is changed to .html. If you slightly change the
parameters, you just have to give another name and the new
results will not override the former.
IMaCh can be easily compiled with Apple LLVM on a Mac as soon as XCode (free download from Apple) is intalled on your Mac.
Currently graphs are output as svg because the svg format is scalable and thus figures can be improved and inserted in other documents. Sometimes the svg file is too big and is replaced by a png binary file.
Therefore, you need to have gnuplot with possibilities to output both
png file as well as svg to produce the graphs. Tables are created by
imach but you will see icons instead of graph the .htm file produced
by imach (my_imach_parameter.htm
). Gnuplot for OS/X was
distributed within the DMG of IMaCh (until version 0.99r43) but with
the recent move to the M1 processor of MacBook, the former
application, which was compiled, as well as the libraries, for Intel
processor did not work anymore.
So we decided to the suppress the Gnuplot app from the IMaCh app and to let you install gnuplot on your own. But this can be done easily with homebrew. If you are hesitating to install homebrew, do not hesitate and install it on your laptop on OS/X. Once installed a simple command from the Terminal:
$ brew install gnuplot
will install it. And you will be able to produce the graphs by just
typing $ gnuplot my_imach_parameter.gp
.
If, before installing gnuplot, you were stucked without graphs, just reload (command_shift_R) the .htm file from you browser and you will see the graphs.
The advantage of having gnuplot installed resides in the fact that,
after having read a short tutorial on Gnuplot, you can pick up some lines
of the gnuplot code produced by
imach (my_imach_parameter.gp
) and mix them in order to
produce new graphs (for example for different values of the covariates).
If you have a good text editor (like Emacs which has a gnuplot-mode
loaded automatically when opening a .gp file), you just have to send
the first "cd " line to change to current directory, move to
corresponding line of the plot, send the plot line to gnuplot and
visualize the grap on the screen. Then if you change the terminal type
(with set terminal pdf
for example) as well as the name
of the output file name (set output "my_new_graph.pdf"
)
you will get a pdf file that you can include into your publication.
So you can have a look at the history of the sources. We moved from CVS to GIT in 2024 and the git version is not fully working yet. But you can
$ git clone git://henry.ined.fr:/imach/.git imach
and compile with
$ make _linux=1 imach
or on OSX
$ make _macosx=1 imach
The IMaCh program consists in nearly one single big file of currently 13,000 lines of C code and the main is at the very end. This wasn't an accurate way of programming when memory was short and CPU slow; at that time softwares were supposed to be splitted into subroutines belonging to different physical files but linked together by the load step. But today, I appreciate having all subroutines and functions within the same imach.c software. Also there are a lot ifdefs in order to reproduce the various versions of IMaCh thus look at the Makefile and, on Linux, compile with make _linux=1 imach and you should be able to get the binary.
Remarks concerning the Linux versions are similar to the Mac OS/X version. You will get a desktop Icon which will open the imach program in a Terminal window.
An IMaCh GUI is planned after we moved the old CVS tree from INED to a more modern git site.
You can download a binary rpm file for a 64 bits Linux, for example: imach-0.99s12-1.x86-64.rpm . It is much quicker (4 times quicker) to compile on Linux with clang and no more gcc.
Remark: The Windows binaries have been compiled with native Intel Compiler from an OS/X Virtual Box and a Windows 7 64bit. Each binary contains two directories bin, html/doc and now a third directory tests with more complex examples. In the bin subdirectory you will find the imach executable and in html/doc the biaspar.imach test parameter file and its corresponding data file data1.txt. In order to run the test the command is ./bin/imach ./html/doc/biaspar.imach
gnuplot should be installed otherwise at the end of the run (optimization and calculations last at least 7 minutes on today most efficient hardwares) the command gnuplot biaspar.gp will fail. If successful, typing e will open biaspar.htm with your browser and all the results including graphs generated by gnuplot will appear.
Differences between efficiency of binary versions, related to former errors in the likelihood optimizations algorithms, have be discussed at REVES 2015 meeting in Singapore.
Download (Old download) and bugs reported
Click here to access to the detailed documentation
In addition to INED, this software have been partly granted
Our work is copyrighted as a GNU software product, i.e. program and software can be distributed freely for non commercial use. We used some codes from the first book "Numerical Recipes in C" (Press et al, 1992) which is copyrighted. Today, the code of the optimization programme has been so altered and many bugs have been fixed, see communication at the 2015 REVES meeting in Singapore) that we consider that we are only in debt of the algorithm which has been published. mailto:imach-dev@listes.ined.fr
Latest documentation can be accessed on the wiki at http://euroreves.ined.fr/imach/wiki/index.php/Documentation
There is a public mailing list of IMaCh's users. You can subscribe by sending a mail to imach-users-subscribe@listes.ined.fr (and unsubscribe with imach-users-unsubscribe@listes.ined.fr) for help, comments and reports on the performance (see the Performance section of the wiki). Archives can be accessed at https://listes.ined.fr/arc/imach-users
If you ask for help, it is usually easier to send the parameter file, the .log file as well as some records of the datafile.
Wikis are a promising way to give information closer to your expectations. It also a very dynamic movement if you consider the first International Wikimedia Conference in Francfurt (August 2005), where most Wikis were represented and in particular Wikipedia.
. Please ask for a username and password.