2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Центрирование многострочных формул
Сообщение26.11.2008, 13:53 


26/11/08
6
Добрый день. Столкнулся с этой проблемой и прошу ваших советов.
Окружение \begin{gather*} \end{gather*} центрирует многострочную формулу автоматически, но не нумерует её, или нумерует все строки, если опустить *. Чтобы занумеровать всю формулу надо применить доп. окружение \begin{split}, но при этом все строки выравняются по краю и расставлять строки друг под другом надо будет вручную с помощью &. Есть ла какой способ набрать нумерованную одним числом многострочную формулу, чтобы строки автоматически выравнивались по центру страницы?
PS. Окружение multline мне не нравится.

 Профиль  
                  
 
 
Сообщение26.11.2008, 14:01 


04/02/08
325
Буково
Добавляйте \nonumber во все строки, кроме той, где нужен номер (т.е. строка где-нибудь в середине).

 Профиль  
                  
 
 
Сообщение26.11.2008, 14:02 


29/09/06
4552
Так вроде \begin{array}{c}...\end{array} это делает:
$$\begin{equation}\label{test}
\begin{array}{c}
A=B\\
C=D=G\\
\ldots\\
\sin^2 x+\cos^2 x=1
\end{array}
\end{equation}
$$

 Профиль  
                  
 
 Re: Центрирование многострочных формул
Сообщение26.11.2008, 14:20 
Аватара пользователя


23/07/08
401
Новосибирск
Решение: воспользоваться обычным equaton, а внутри него воспользоваться окружением gathered.

Нумерация будет как в equation, а выравнивание как в gather

P.S. описался, пропустив одну e в gathered

 Профиль  
                  
 
 
Сообщение26.11.2008, 16:23 


26/11/08
6
Благодарю за ответы, но пока что ни один не годится в полной мере.
\nonumber или \notag расставлять во всех строках немного накладно, к тому же если число строк - чётное, то номер будет выглядеть криво.
Использовать array для формулы слегка мазохистично, но я попробовал
\begin{array}{c}
a=1 \\
b=2+90
\end{array}

и результат ужасен.

Третий вариант не представляется безнадёжным, но на пробную задачу

\begin{equation}
\begin{gather}
a=1 \\
b=2+90
\end{gather}
\end{equation}

от латеха следует матюгание:
! Package amsmath Error: \begin{gather} allowed only in paragraph mode.
а при просмотре в превьюере на экране из всего текста только сам нумер.
Благодарю всех за участие и жду новых рацпредложений.

 Профиль  
                  
 
 
Сообщение26.11.2008, 16:58 
Аватара пользователя


23/07/08
401
Новосибирск
Не gather, а gathered - это другое окружение.

P.S. описался, пропустив одну e в gathered

 Профиль  
                  
 
 
Сообщение26.11.2008, 18:07 


26/11/08
6
Отлично, Evgueni, это то что было нужно. Послушайте, если вы такой спец, то может заодно скажете как делать скобки переменной высоты, типа \left( \right) , когда они располагаются в разных строках, чтобы это не вызывало системной ошибки?

 Профиль  
                  
 
 
Сообщение26.11.2008, 18:43 
Заслуженный участник
Аватара пользователя


18/05/06
13435
с Территории
Кто мешает в одной строке делать только левую, в другой - только правую, а выравнивать (если нужно) фантомами?

 Профиль  
                  
 
 
Сообщение26.11.2008, 19:11 


26/11/08
6
Не понял. Второй вопрос уже не про выравнивание, а про то, что скобочки не переносятся. Т.е. в таком пробнике

begin{gather}
\left(a+ \\
+b \right)
\end{gather}

возникает ошибка
! Extra }, or forgotten \right.
и вторая скобка не ставится.
Если можно, поясните вашу мысль подробнее.

 Профиль  
                  
 
 
Сообщение26.11.2008, 19:54 
Заслуженный участник
Аватара пользователя


03/03/06
648
titus

В Вашем коде явная ошибка. Перед переходом на следующую строку \\ нужно закрыть(открыть) пару left/right, т.е.
\left(....\right.\\
\left. ....\right)\\

 Профиль  
                  
 
 
Сообщение26.11.2008, 20:24 


26/11/08
6
Дык я про это и спрашиваю.
Дайте образец, как набрать формулу:

(1+

2)

в которой скобки не простые "(", ")" , а специальные - со словами left, right или их некие мне неведомые многострочные аналоги. В реальном тексте вместо 1 и 2 стоят страшные суммы и они некрасиво смотрятся с маленькими скобками. Утверждается, что это можно как-то сделать.

 Профиль  
                  
 
 
Сообщение26.11.2008, 21:18 
Заслуженный участник
Аватара пользователя


18/05/06
13435
с Территории
Дак говорю же ж: фантомами!
Как тут: http://dxdy.ru/topic6543.html

 Профиль  
                  
 
 
Сообщение26.11.2008, 21:44 


29/09/06
4552
titus в сообщении #162295 писал(а):
Использовать array для формулы слегка мазохистично, но я попробовал
\begin{array}{c}
a=1 \\
b=2+90
\end{array}
и результат ужасен.

Естественно, центрировать такую пару формул будет ужасно. Но Вы же именно этого хотели? Значит, скорее всего, для формул другого типа?

Ну, то есть я буду признателен, если автор или кто-то объяснит мне, чего я не понял в изначальном вопросе?

 Профиль  
                  
 
 
Сообщение29.11.2008, 13:59 


29/11/08
65
Селенгинск
array и gathered дают примерно одинаковые результаты, но (имхо) последний всё-таки получше, т.к. он даёт большее расстояние между строками и смотрится это лучше.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group