Unable to align math

Unable to align the following math code:

left lbrace { stack {
alignl { {d T} over {ds} } = %kappa N #
alignl { {d N} over {ds} } = - %kappa T + %tau B #
alignl { {d B} over {ds} } = - %tau N
} } right none

I want the alignment to be as shown in:
Frenet–Serret formulas - Wikipedia
That is, the three formulas aligned left and each derivative aligned center.
How do I do that?

Thanks.

align* are toggling formatting directives. Apparently, their action cannot be limited by using curly brackets {}. Consequently you must issue alignc and alignl wherever it is relevant.

A second issue is to specify over which “zone” the alignment action is requested. That is, you must break your horizontal line into segments where alignement will be different. If you don’t break the line, alignment does not make sense because the whole line is considered. Consequently, use a matrix so that you can have different alignments in the columns.

My suggestion is:

left lbrace { matrix {
alignc {d T} over {ds} # alignl {} =  %kappa N ##
alignc {d N} over {ds} # alignl {} = - %kappa T + %tau B ##
alignc {d B} over {ds} # alignl {} = - %tau N
} } right none

You can add ~ extra spacing to the right of the = sign to have symmetrical spacing around the sign.

PS
This trick is mentioned in the Math Guide as well as the empty {} to fool the = binary operator (expecting arguments on both sides).

2 Likes

Thank you very much!

Daniel