[EMAIL PROTECTED] wrote:
On Wed, 5 Apr 2006, WN wrote:
One thing I want to do with a set of subformula's is
to reference the main formula but still subnumbering the equations
like

Try this. Warning: I do not know everything that is happening here. There may be some unexpected side effects.

\unprotect
\def\placesubformulawithnumber{%
  \dodoubleempty\doplacesubformulawithnumber}

\def\doplacesubformulawithnumber[#1][#2]%#2 gobbles spaces
  {\iffirstargument
    \incrementnumber[\v!formula]
    \makesectionnumber[\v!formula]
    \rawreference{\s!for}{#1}{\composedsectionnumber}
  \else
    \incrementnumber[\v!formula]
  \fi\placesubformula}
\protect


\starttext
%% > \incrementnumber[formula]
%% > \placesubformula
\placesubformulawithnumber[eqn1] %I need to think of a smaller name
\startformula
\startalign
\NC div  \vec{E} \NC =  \epsilon_{0}^{-1} \rho  \NR[eqn1:A][a]
\NC rot  \vec{E} \NC =  0 \NR
\NC div  \vec{B} \NC =  0 \NR[eqn1:B][b]
\NC rot  \vec{B} \NC =  \mu_{0} \vec{j} \NR
\stopalign
\stopformula
See *\in[eqn1] *for the static Maxwell equations, where we are going to examine \in[eqn1:A] a bit further ....
\stoptext


Also, note that div and rot should be in text font. You should probably do
\startmathcollection[default]
  \definemathcommand [div]      [nolop] {\mfunction{div}}
  \definemathcommand [rot]      [nolop] {\mfunction{rot}}
\stopmathcollection

and use \div \rot etc.

HTH,
Aditya


Hi Aditya,
I tested your solution and it works great. I cannot see any problems in my output. I wish I had your Tex programming skills, I am trying to learn the language myself from
the TexBook (D.Knuth) but I still have a long way to go.

BTW

Thanks for your comment on the div, rot.
I indeed defined the div and rot in text font, it is defined in one of my environment settings.
Attached my small Context script to confirm your solution

Again thanks for your help,
Kind regards
Wim

\unprotect

% ========= Aditya code ============
\def\placesubformulawithnumber{%
  \dodoubleempty\doplacesubformulawithnumber}

\def\doplacesubformulawithnumber[#1][#2]%#2 gobbles spaces
  {\iffirstargument
    \incrementnumber[\v!formula]
    \makesectionnumber[\v!formula]
    \rawreference{\s!for}{#1}{\composedsectionnumber}
  \else
    \incrementnumber[\v!formula]
  \fi\placesubformula}

\startmathcollection[default]
  \definemathcommand [div]      [nolop] {\mfunction{div}}
  \definemathcommand [rot]      [nolop] {\mfunction{rot}}
\stopmathcollection 
% =================================
\definereferenceformat [informula] 
    [left=(, right=), text=]

\protect 

\starttext
Some math tests, use of formula/subformula numbering.
\placesubformulawithnumber[kem-chapter1-eqn1]
\startformula
\startalign
\NC \div  \vec{E} \NC =  \frac{\rho}{\epsilon_{0}}\NR[kem-chapter1-eqn1:A][a]
\NC \rot  \vec{B}  \NC =  \mu_{0}  \:\vec{j}          
\NR[kem-chapter1-eqn1:B][b]
\NC \div  \vec{B} \NC =  0                        \NR[kem-chapter1-eqn1:C][c]
\NC \rot  \vec{E} + \frac{\partial \vec{B} }{\partial t} \NC = 0  
\NR[kem-chapter1-eqn1:D][d]
\stopalign
\stopformula
See \informula[kem-chapter1-eqn1] or alternatively
\informula[kem-chapter1-eqn1:A], 
\informula[kem-chapter1-eqn1:B],\informula[kem-chapter1-eqn1:C] or
\informula[kem-chapter1-eqn1:D].
\blank
Another test to check that the formula numbers work as expected
\placeformula[kem-chapter-eqn11]
\startformula
\cases{
\eqalign{
\widehat{\vec{x}} &= - \vec{x} \cr
\widehat{t} & = t \cr
}}
\quad \text{resp.} \quad
\cases{\eqalign{
\widehat{\vec{x}} &=  \vec{x} \cr
\widehat{t} & = -t \cr
}}
\stopformula

\stoptext

_______________________________________________
ntg-context mailing list
[email protected]
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to