Макет в математической модели с использованием выравнивания

Макет в математической модели с использованием выравнивания

Я бы хотел, чтобы все «колонки» в моем «aling» начинались слева направо (выравнивание по левому краю).

Я привел ниже свой код, который дает следующий результат:

введите описание изображения здесь

Как видно на картинке:

  • Текст в первом столбце справа налево.
  • Текст во втором столбце слева направо.
  • Текст в третьем столбце справа налево.

TEX-файл:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}

\begin{document}

\begin{align}
    \text{min} \qquad & \sum_{e\in \mathcal{E}} \sum_{r\in  \mathcal{R}_e} c^r_e x^r_e + \sum_{d \in \mathcal{D}} c^-_d s_d^- + \sum_{d \in \mathcal{D}} c^+_d s^+_d \label{MP1} \\ 
    \text{s.t.} \qquad & \sum_{e\in \mathcal{E}} \sum_{r\in  \mathcal{R}_e} a^r_{ed} x^r_e + s_d^- -s_d^+ = b_d & \forall d \in \mathcal{D} \label{MP2} \\
    & \sum_{r\in  \mathcal{R}_e} x^r_e = 1 & \forall e \in \mathcal{E} \label{MP3} \\
    & x^r_e\in \{ 0,1\} & \forall e \in \mathcal{E}, \forall r \in \mathcal{R}_e \label{MP4} \\
    & 0 \leq s_d^- \leq u_d^- & \forall d \in \mathcal{D} \label{MP5} \\
    & 0 \leq s_d^+ \leq u_d^+ & \forall d \in \mathcal{D} \label{MP6}
\end{align}


\end{document}

Какие-либо предложения?

решение1

Как вы заметили, alignчередуется между r(выровненными по правому краю) и l(выровненными по левому краю) столбцами. Чтобы просто получить выровненные по левому краю столбцы, вы не можете добавить &так, чтобы "пропустить" rстолбцы:

введите описание изображения здесь

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}

\begin{document}

\begin{align}
    &\text{min} \qquad && \sum_{e\in \mathcal{E}} \sum_{r\in  \mathcal{R}_e} c^r_e x^r_e + \sum_{d \in \mathcal{D}} c^-_d s_d^- + \sum_{d \in \mathcal{D}} c^+_d s^+_d \label{MP1} \\ 
   & \text{s.t.} \qquad && \sum_{e\in \mathcal{E}} \sum_{r\in  \mathcal{R}_e} a^r_{ed} x^r_e + s_d^- -s_d^+ = b_d && \forall d \in \mathcal{D} \label{MP2} \\
    &&& \sum_{r\in  \mathcal{R}_e} x^r_e = 1 && \forall e \in \mathcal{E} \label{MP3} \\
    &&& x^r_e\in \{ 0,1\} && \forall e \in \mathcal{E}, \forall r \in \mathcal{R}_e \label{MP4} \\
    &&& 0 \leq s_d^- \leq u_d^- && \forall d \in \mathcal{D} \label{MP5} \\
    &&& 0 \leq s_d^+ \leq u_d^+ && \forall d \in \mathcal{D} \label{MP6}
\end{align}


\end{document}

решение2

Вы также можете иметь эту компоновку с выделенным optidefпакетом. Я изменил нумерацию так, чтобы ограничения были подуравнениями первой строки:

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage[short]{optidef}

\begin{document}

\begin{mini!}
  {\qquad}{ \sum_{e\in \mathcal{E}} \sum_{r\in \mathcal{R}_e} c^r_e x^r_e + \sum_{d \in \mathcal{D}} c^-_d s_d^- + \sum_{d \in \mathcal{D}} c^+_d s^+_d \tag{1}}{\label{MP1}}{}
%
\addConstraint{}{\sum_{e\in \mathcal{E}} \sum_{r\in \mathcal{R}_e} a^r_{ed} x^r_e + s_d^- -s_d^+ = b_d\qquad }{\forall d \in \mathcal{D} \label{MP2}}
\addConstraint{}{\sum_{r\in \mathcal{R}_e} x^r_e = 1}{\forall e \in \mathcal{E} \label{MP3}}
\addConstraint{}{x^r_e\in \{ 0,1\}}{\forall e \in \mathcal{E}, \forall r \in \mathcal{R}_e \label{MP4}}
\addConstraint{}{0 \leq s_d^- \leq u_d^- }{\forall d \in \mathcal{D} \label{MP5}}
\addConstraint{}{0 \leq s_d^+ \leq u_d^+}{\forall d \in \mathcal{D} \label{MP6}}
\end{mini!}

\end{document} 

введите описание изображения здесь

Связанный контент