Mastrave is a free software library written to perform vectorized scientific computing and to be as compatible as possible with both GNU Octave and Matlab computing frameworks, offering general purpose, portable and freely available features for the scientific community. Mastrave is mostly oriented to ease complex modeling tasks such as those typically needed within environmental models, even when involving irregular and heterogeneous data series.
Semantic array programming
The Mastrave project attempts to allow a more effective, quick interoperability between GNU Octave and Matlab users by using a reasonably well documented wrap around the main incompatibilities between those computing environments and by promoting a reasonably general idiom based on their common, stable syntagms. It also promotes the systematic adoption of data-transformation abstractions and lightweight semantic constraints to enable concise and reliable implementations of models following the paradigm of semantic array programming.
There are a couple of underlying ideas: library design is language design and vice versa (Bell labs); language notation is definitely a "tool of thought" (version), in the sense that there is a feedback between programming/mathematical notation and the ability to think new scientific insights. And perhaps ethic ones.
Science and society
Mastrave is free software, which is software respecting your freedom. As many other free scientific software packages, it is offered to the scientific community to also promote the development of a free society more concerned about cooperation rather than competitiveness, heading toward knowledge and culture freedom.
Such a vision implies the possibility for motivated individuals to freely access, review and contribute even to the cutting-edge academic culture. This possibility relies on the development of tools and methodologies helping to overcome economic, organizational and institutional barriers (i.e. knowledge oligopolies) while systematically promoting reproducible research. This is a long-term goal to which the free software paradigm can and has been able to actively cooperate.
DocumentationThe core of Mastrave is based on the essential intersection of the GNU Octave and Matlab languages. As a consequence, each module/function of the Mastrave library can be documented directly within the source code, using comments. The documentation can be accessed - as with each GNU Octave/Matlab function - by typing help within either GNU Octave or Matlab computing environment.
|License||Verified by||Verified on||Notes|
Leaders and contributors
|Daniele de Rigo||Project leader|
Resources and communication
|Expert users, Developers of derived packages||VCS Repository Webview||http://cvs.savannah.gnu.org/viewvc/mastrave/?root=mastrave|
|Users (e.g. environmental scientists, computational science modelers,...)||Forum||http://identi.ca/group/mastrave|
|Scientists, Research teams interested in the Mastrave research program||Support||http://mastrave.org/research.html|
|Users (e.g. environmental scientists, computational science modelers,...)||Support||https://savannah.nongnu.org/support/?func=additem&group=mastrave|
|Required to use||BASH shell version 4.x|
|Required to use||GNU Sed version 4.2.x|
|Weak prerequisite||GNU Compiler Collection version 4.4.x|
|Weak prerequisite||PHP version 5 (only development branch)|
|Weak prerequisite||GNU Prolog version 1.3.x or SWI-Prolog version 5.8.x (only development branch)|
|Required to use||GNU Octave version 3.2.x|
This entry (in part or in whole) was last reviewed on 23 October 2011.
License: GNU GPLv3+
License note: For PHP files:
Additional permission under GNU GPL version 3 section 7
If you modify this Program, or any covered work, by linking or combining it with PHP (or a modified version of PHP), containing parts covered by the terms of PHP's license, the licensors of this Program grant you additional permission to convey the resulting work. Corresponding Source for a non-source form of such a combination shall include the source code for the parts of PHP used as well as that of the covered work.