On Sat, 19 Apr 2008, Pau wrote:
Hi,
I am preparing an e-journal for astro and I have many articles with lots of equations. Unfortunately, authors are using LaTeX maths and this is giving me trouble.
I have read and followed the steps of
http://wiki.contextgarden.net/LaTeX_Math_in_ConTeXt
and
http://wiki.contextgarden.net/Math_with_newmat
and it has helped me a lot but there's a snag I run all the time in: array
Typically, the equation giving troubles is of the kind:
\begin{equation} \begin{array}{rl} h & \sim \mu M^{2/3}f^{2/3}/r\\ & \sim M_{ch}^{5/3}f^{2/3}/r\\ \end{array} \end{equation}
The correct way to translate array in ConTeXt is \startformula \startmatrix[align={right,left}] \NC h \NC \sim \mu M^{2/3}f^{2/3}/r \NR \NC \NC \sim M_{ch}^{5/3} f^{2/3}/r \NR \stopmatrix \stopformula However, I think that the original input is wrong. The autor probably wanted to use split (or align), rather than array.
when I try to compile, I get
! Misplaced alignment tab character &. l.484 h& \sim \mu M^{2/3}f^{2/3}/r\\
Of course, when I use
\startformula\eqalign{ h & \sim \mu M^{2/3}f^{2/3}/r \cr & \sim M_{ch}^{5/3}f^{2/3}/r \cr }\stopformula
everything runs smoothly but I cannot convert all equations containing a {array}{rl} or similar, because I would never end... I guess that writing a script to convert them in eqlign would be feasible, but it's a very... precarious way... I would prefer to fix the problem from ConTeXt itself...
how??
Do you want ConTeXt to parse \begin{array}{...} ... \end{array} and typeset it? This is possible, but essentially involves rewritting array in ConTeXt, without any of the configuration options that ConTeXt provides. The (now deprecated) amsl module provided something similar to LaTeX array. Have you tried using that part of the code? Aditya