equações alinhando-se automaticamente à esquerda, como faço para centralizá-las?

equações alinhando-se automaticamente à esquerda, como faço para centralizá-las?

Tive a impressão de que as equações se alinham ao centro. Estou usando um pacote \documentclass [twocolumn, final] {svjour3}que acho que está mudando isso.

Então, por exemplo, isto:

\begin{equation}
\begin{split}
\label{eq_vector_value}
V_{w_{xy}} &= 1 - Norm(\delta(w_{x},w_{y})) \\
           &= \{V_{w_{xy}} \in \mathbb{R} \| 0 \geq V_{w_{xy}} \geq 1\}.
\end{split}
\end{equation}

Produz isso:

insira a descrição da imagem aqui

Este é um formato de duas colunas e tenho tentado centralizá-lo. Eu estava errado ao esperar que ele se alinhasse automaticamente ao centro? Todas as equações neste artigo específico parecem estar alinhadas à esquerda.

Responder1

Esse é o comportamento padrão da classe. svjour3.clsinclui

\PassOptionsToPackage{fleqn}{amsmath}}

Para que o padrão

\documentclass[twocolumn, final]{svjour3}
\usepackage{amssymb}
\usepackage{mathtools}
\usepackage{lipsum} % just for the demo
\DeclareMathOperator{\Norm}{Norm}
\begin{document}
\lipsum[1-5] % Just for the demo
\begin{equation}
  \begin{split}
    \label{eq_vector_value}
    V_{w_{xy}} &= 1 - \Norm(\delta(w_{x},w_{y})) \\
    &= \{V_{w_{xy}} \in \mathbb{R} \| 0 \geq V_{w_{xy}} \geq 1\}.
  \end{split}
\end{equation}
\lipsum[5-15] % Just for the demo
\end{document}

produz:

insira a descrição da imagem aqui

(A propósito, você deve usar a \DeclareMathOperatorpara exibir bem sua "Norma" na equação.)

Responder2

svjour3.clsdefine fleqncomo uma opção de classe, mas também passa essa opção paraamsmathse estiver carregado:

\DeclareOption{fleqn}{\input{fleqn.clo}\AtBeginDocument{\mathindent\z@}%
  \AtBeginDocument{\@ifpackageloaded{amsmath}{\@mathmargin\z@}{}}%
  \PassOptionsToPackage{fleqn}{amsmath}}

E, na twocolumnopção de classe de documento, necessariamente também usa fleqn, adicionando conteúdo ao \@begindocumenthooke configurando amsmath:

\DeclareOption{twocolumn}{\@twocolumntrue\ExecuteOptions{fleqn}}

Você pode substituir isso usando o seguinte, removendo quaisquer opções passadas amsmathpela classe do documento

\makeatletter
\expandafter\let\csname [email protected]\endcsname\relax% Remove options passed to amsmath
\makeatother

O que foi dito acima parece suficiente, mas também se pode remover os ajustes de margem introduzidos pela classe:

\makeatletter
\AtBeginDocument{
  \mathindent=15pt % Restore \mathindent
  \@mathmargin\@centering} % Restore \@mathmargin
\makeatother

Tudo o que foi dito acima vai contra um melhor julgamento, pois os periódicos têm requisitos específicos que devem ser cumpridos.

insira a descrição da imagem aqui

\documentclass[twocolumn, final]{svjour3}

\makeatletter
\expandafter\let\csname [email protected]\endcsname\relax% Remove options passed to amsmath
\AtBeginDocument{
  \mathindent=15pt % Restore \mathindent
  \@mathmargin\@centering} % Restore \@mathmargin
\makeatother

\usepackage{amsmath,amssymb,lipsum}

\begin{document}

\sloppy% Just for this document
\lipsum*[1]
\begin{equation}
  f(x) = ax^2 + bx + c
\end{equation}

\lipsum[2]

\end{document}

informação relacionada