連立方程式を結合するための環境

連立方程式を結合するための環境

私が探しているのは、連続した方程式の等号が自動的に結合される環境です。望ましい出力は次のとおりです。

ここに画像の説明を入力してください

現在、私は tikz および tikzmark パッケージを不便な方法で使用してこれを実現しています。

\begin{align*}
   \phi &\ {\tikzmarknode{NA}=} \left(\frac{4\zeta}{1-z^{2}}\right)^{1/4}\\
        &\ {\tikzmarknode{NB}=} \sqrt{2}\zeta^{\frac{1}{4}}\left(\frac{X}{X-1}\right)^{1/4}\\
        &\ {\tikzmarknode{NC}=} \sqrt{2}\zeta^{1/4}\gamma^{-1}
\end{align*}
\begin{tikzpicture}[remember picture]
   \draw[overlay] (NA) -- (NB);
   \draw[overlay] (NB) -- (NC);
\end{tikzpicture}

便利なのは、tikzpicture と & 文字の後のノードを自動的に追加する新しい環境を作成することです。同じ効果を実現するより簡単な方法はありますか? たとえば、次のように記述します。

\begin{conteqns}
  \phi &= \left(\frac{4\zeta}{1-z^2}\right)^{1/4}\\
       &= \sqrt{2}\zeta^{1/4}\left(\frac{X}{X-1}\right)^{1/4}\\
       &= \sqrt{2}\zeta^{1/4}\gamma^{-1}
\end{conteqns}

?

答え1

この例は、最初の (そして少し異なる) アプローチです。\equalマクロとカウンターを作成します。マクロは等号記号を配置し、\tikzmarknode前の等号 (ある場合) まで線を引きます。当然、カウンターは等号/ノードに番号を付けます。

編集:このような環境が複数必要な場合は、カウンターをリセットする必要があることに注意してください。

\setcounter{NumberOfEquals}{0}

このような:

\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{tikzmark}

\newcounter{NumberOfEquals}
\NewDocumentCommand{\equal}{}
{%
  \mathbin{\tikzmarknode{equal\theNumberOfEquals}{=}}%
  \ifnum\theNumberOfEquals>0%
    \pgfmathtruncatemacro\LastEqual{\theNumberOfEquals-1}%
    \tikz[remember picture,overlay]\draw ([yshift=1pt]equal\theNumberOfEquals.north) -- (equal\LastEqual.south);%
  \fi%
  \stepcounter{NumberOfEquals}%
}

\begin{document}
Just follow the lines:
% If this is not the first use:
\setcounter{NumberOfEquals}{0}
%
\begin{align*}
   \phi & \equal \left(\frac{4\zeta}{1-z^{2}}\right)^{1/4}\\
        & \equal \sqrt{2}\zeta^{\frac{1}{4}}\left(\frac{X}{X-1}\right)^{1/4}\\
        & \equal \sqrt{2}\zeta^{1/4}\gamma^{-1}
\end{align*}
\end{document}

ここに画像の説明を入力してください

関連情報