CodeIgor

A simple script to serialize files

What is CodeIgor?

Jun 15, 2010 by cesla

CodeIgor is a simple (yet quite powerful), free (GPLv3) Python script, which makes copies of given files, substituting user-defined patterns for given values. Every copy is related to a scpecific 'solution', so that you may define 'solutions' having the same patterns but with different values. This allows you to serialize the same code for a different set of parameters, with each of them put in a specific subdirectory ('solution').

Intended audience: scientists with the need to write the same code (for simulations) with a set of many different values for specific parameter (see example below).

Hey, if you find my script useful for any other purposes, let me know!

Current version: 1.03 (2010-06-24)

A (very) simple example

Jun 19, 2010 by cesla

A simple example would be preparing the same simulation code (for example the Ising model) for ten different temperatures, ready to compile and run parallelly on a computer cluster. You only need to write your code once, and from this directory structure:

./ising/ main.cpp functions.h functions.cpp Makefile

CodeIgor can produce many copies - each one with different set of parameters for every file:

./output_dir/ compile.sh temperature0.2/ main.cpp functions.h functions.cpp Makefile temperature0.4/ main.cpp functions.h functions.cpp Makefile temperature0.6/ main.cpp functions.h functions.cpp Makefile (and so on)

There are also many useful features, like regular expressions or summary file generation. See other sections for better explanations and more ideas.