Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.

Topic: Project proposal: a scilab (or matlab) code to LaTeX converter
Replies: 9   Last Post: Oct 29, 2001 8:49 AM

 Messages: [ Previous | Next ]
 Joe Sababa Posts: 963 Registered: 12/7/04
Re: Project proposal: a scilab (or matlab) code to LaTeX converter
Posted: Oct 12, 2001 9:01 PM

Jan Meyer <janm@mit.edu> wrote in message news:<vrwv21ki91.fsf@mit.edu>...
> Hi,
>
> IMHO one of the greatest short comings of scilab and matlab is that
> they don't automatically generate documentation of the code as well as
> the results (e.g. compared to MathCad where building the model and
> showing which calculations were done in a presentable manner is one
> and the same step). Another problem with a pure text presentation (may
> it be fontified/colorized) is that one can easily overlook mistakes -
> which really reduces productivity.
>
> Since it is especially tedious to copy results that come in matrices
> or vectors into LaTeX, I have written a small scilab script that
> allows the user to automatically generate a LaTeX table from a couple
> of vectors for example with each run of the user's script.
>
> Now I am wondering if there are any packages / any software out there
> that converts scilab code into LaTeX code. Sure it would not look
> perfect but would be enough for proof reading or form a foundation for
> a polished LaTeX document. For example the scilab code:
>
> Cp = F*cos(alpha)/((1+r)^(n-1)-1);
>
> could be translated into:
>
> Cp = F \cdot\cos(alpha) / ((1+r)^{n-1}-1)
>
> ... just picture in your head what LaTeX would make of this (e.g. use
> different sized parethesies and make the power n-1 much more readable)
>
> if the translation code was a little fancier (i.e. the code could
> parse parenthesies and one would use substitution tables for variable
> names):
>
> C_p = \frac{F \cdot\cos(\alpha)}{(1+r)^{n-1}-1}
>
> One could even include the result right away if one starts with a
> comment that indicates the number format:
>
> Cp = F*cos(alpha)/((1+r)^(n-1)-1) \\F:US\$%4.2f > > resulting in: > > C_p = \frac{F \cdot\cos(\alpha)}{(1+r)^{n-1}-1} = US\$ 12.34
>
> [This would probably require the documentation package run as a
> preprocessor to the scilab interpreter]
>
> Other statements that contain less math, one could treat with a really
> pretty print scheme.
>
> Finally one could display data in automatically generated tables from
> the following code:
>
> ------------------------
> data = yourFunction(parameters); // spits out a 10x4 matrix
>
> //TBegin <--- marks the beginning of a documentation block and is not interpreted
> like the rest of the code but simply executed
>
> headings = ["coefficient" "dimensional value" "non-dim. value" "non-dim. factor"];
> data = list(data(1), data(2), data(3), data(4));
> // The list() keyword creates something like a matrix that can contain
> // different data types (one of the nice function of scilab)
> formatStr = ["$%s$" "%6.4e" "%6.4e" "%6.4e" "%6.4e"];
>
> // generate a LaTeX table in a separate file called coeffTable.tex
> getf('latexTable.sci');
>
> //TEnd
> ----------------
>
> ... this would translate to the following LaTeX code:
>
> ---------------
> data = yourFunction({\bf parameters}); {\small // spits out a 10x4 matrix}
>
> \input{coeffTable.tex}
> --------------
>
> A nice fringe affect is that one can convert from LaTeX to HTML or
> PDF.
>
> What do you think of this idea? Does such a software exist already for
> scilab (or matlab)?
>
> If not: This shouldn't be too much work to code (unless you want
> perfect output). Anybody interested in collaborating on this?
>
> - Jan
>
> P.S. please also reply by email to janm@mit.edu (I am having trouble
> with my newsgroup server recently)

Hi Jan,
Matlab users are split to Latex users and non-Latex users.
For Latex users there is the Symbolic Math Toolbox that includes 'latex' command.
For non-Latex users and for immediate use, e.g. view equation or output
during work in a styled fashion as well as annotation and labeling
figures, there is a project running now for several months called BSTEX.
See:
http://www.geocities.com/bstex2001
Joe

Date Subject Author
10/11/01 Jan Meyer
10/12/01 Joe Sababa
10/16/01 Helmut Jarausch
10/29/01 Michael Robbins
10/29/01 Doug Schwarz
10/16/01 Duane Hanselman
10/27/01 Peter J. Acklam
10/27/01 Ken Davis
10/27/01 Abe Kohen
10/28/01 Lars Gregersen