2014 dxdy logo

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

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




Начать новую тему Ответить на тему
 
 Автонумерация формул по разделу
Сообщение12.10.2021, 18:56 


12/10/21
11
Здравствуйте, товарищи!

Столкнулся я с такой проблемой. Имеется \chapter, \section и \subsection. Нумерация должна быть ({chapter}.{section}.{equation}). Сделал я это через \renewcommand, а именно

\renewcommand{\theequation}{\Roman{chapter}.\arabic{section}.\arabic{equation}}

Но когда начинается новый section, нумерация equation должна начинаться по новой. У меня же нумеруется последнее значение подряд. Вот пример:

%-------------------------------------------
\chapter{Введение}
\section{Параграф первый}
\subsection{Пункт такой-то}

Формула первая:
\begin{equation}
\label{I1eq1} %Здесь нумерация (I.1.1)
x=\varphi(\xi,t)
\end{equation}

Теперь добавим второй section.

\section{Параграф второй}
\subsection{Пункт такой-то}

Формула вторая:
\begin{equation}
\label{I2eq1} %Здесь нумерация выглядит так (I.2.2), то есть второе уравнение
\xi=\Phi(x,t) %А нужно (I.2.1)
\end{equation}
%-------------------------------------------

И вот как сделать так, чтобы с новым section происходила новая нумерация equation?
Скажу сразу, занимаюсь ТеХ'ом меньше месяца. Буду благодарен за решение моей проблемы. :-)

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение12.10.2021, 19:02 
Заслуженный участник
Аватара пользователя


31/01/14
11316
Hogtown
Без преамбулы дать совет невозможно. Если у вас используется amsmath:
Используется синтаксис LaTeX
\numberwithin{equation}{section}

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение12.10.2021, 19:14 


12/10/21
11
Вот преамбула, ну или как сказала преподаватель - шапка.
%% Головной файл (Корневой каталог книги),содержащий команды для Latex;
%% Здесь предусмотрен крупный шрифт и с этим файлом я провожу доводку
%% для ротапринтного издания
\documentclass[a4paper,12pt]{report}
\usepackage[utf8]{inputenc} %ТУТ ИЗМЕНЕНА КОДИРОВКА НА UTF8
\usepackage[russian]{babel}
\usepackage[dvips]{graphics,color}
\usepackage[dvips,eps,pdf]{graphicx}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{oldgerm}
\usepackage{euscript}
\usepackage{eufrak}
\usepackage{multicol}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage{epsfig}
\usepackage{floatflt}
\usepackage{float}
\usepackage{mathtext}
\usepackage[T2A]{fontenc}
\usepackage{multicol}
\usepackage{epsfig}
\usepackage{afterpage}
\usepackage{float}
\usepackage{mathtext}
\textwidth=165mm \textheight=246mm
\renewcommand{\thesection}{\S\, \arabic{section}}

%------------------------------------------------------------
%ДОБАВЛЕН ПАКЕТ FONTSPEC И УСТАНОВЛЕН ШРИФТ (БЕЗ НЕГО РУССКИЕ БУКВЫ НЕ ОТОБРАЖАЮТСЯ)
\usepackage{fontspec}
\setmainfont{Times New Roman}
\usepackage{indentfirst} %Красная строка для первого абзаца
\renewcommand{\thechapter}{\Roman{chapter}} % Римская нумерация раздела
%\renewcommand{\theequation}{\Roman{chapter}.\arabic{section}.\arabic{equation}}
%Нумерует по chapter и section правильно, а сами уравнения нумерует подряд
\numberwithin{equation}{section}
%------------------------------------------------------------

\begin{document}
Тут текст
\end{document}

И я попробовал Ваше решение. Уравнения нумеруются по параграфу, а как сделать чтоб был (chapter.section.equation)?
И из-за того, что имеется \renewcommand{\thesection}{\S\, \arabic{section}}, в нумерации содержится значок параграфа. Ну этот значок не так страшно, можно просто \S\ убрать, а вот chapter на первой позиции - нужен.

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение12.10.2021, 22:33 
Заслуженный участник


09/05/13
8904
∞⠀⠀⠀⠀
nufchan
Честно говоря, преамбула ужасна. Ее же минимум из трех собирали.

Что из всего этого действительно нужно? Так ли нужен знак параграфа перед началом section? Перед номером subsection (там он уже диковато смотрится)? А если на все это навесить номер главы, то так, как Вы хотите - это нумерация вида 1.§2.4 --- так, что ли?
А не страшненько?

-- 13.10.2021, 01:03 --

И пока не понятно, что из наворотов действительно необходимо, непонятно, зачем все это роскошество. Если только нумерацию устроить - устраивайте. Почти все лишнее, все можно вручную устроить.

Хватит? (после параметров страницы?)
Используется синтаксис LaTeX
\textwidth=165mm \textheight=246mm
%\renewcommand{\thesection}{\S\, \arabic{section}}
\numberwithin{equation}{section}
\renewcommand{\theequation}{\thesection.\arabic{equation}}

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение12.10.2021, 23:15 
Заслуженный участник
Аватара пользователя


31/01/14
11316
Hogtown
Otta в сообщении #1534756 писал(а):
Честно говоря, преамбула ужасна.
Неа, гораздо хуже, поскольку три источника тоже плохи. Найдите авторов, посттавьте рядом и плюньте им всем в лицо

Не надо
Используется синтаксис LaTeX
\renewcommand{\theequation}{\thesection.\arabic{equation}}

Поскольку
Используется синтаксис LaTeX
\numberwithin{equation}{section}

решает все. И уж заведомо даже если б не было этого, то следовало бы
Используется синтаксис LaTeX
\renewcommand{\theequation}{\arabic{chapter}.\arabic{section}.\arabic{equation}}


И чтобы появился русский текст надо вставить
Используется синтаксис LaTeX
\usepackage[T2A]{fontenc}
\usepackage[russian]{babel}
 

fontspec не для \LaTeX вообще, а для XeLaTeX и LuaLaTeX

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение12.10.2021, 23:25 
Заслуженный участник


09/05/13
8904
∞⠀⠀⠀⠀
Red_Herring в сообщении #1534762 писал(а):
Не надо

Да, Вы правы, не надо.
Меня подвел нечистый эксперимент: я не закомментировала строчку
\renewcommand{\thesection}{\S\, \arabic{section}}сперва. А знак параграфа съедает (почему-то) номер главы на печати.
Red_Herring в сообщении #1534762 писал(а):
И уж заведомо даже если б не было этого, то следовало бы

Не, это необязательно. numberwithin переподчиняет счетчик, но thesection и без того в данном случае имеет формат Номерглавы.номерсекции

-- 13.10.2021, 01:30 --

Red_Herring в сообщении #1534762 писал(а):
И чтобы появился русский текст надо вставить
Русскому тексту (чтобы он был) критично только стоит там utf8 в текущей преамбуле или нет.
Наверное, T2A что-то дает, но на глаз неотличимое.
Интересно, что. (Ну кроме того, что положено.)

-- 13.10.2021, 01:33 --

Red_Herring в сообщении #1534762 писал(а):
Неа, гораздо хуже, поскольку три источника тоже плохи.

Это да. Одна строчка usepackage[dvips,eps,pdf]{graphicx} чего стоит.

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение12.10.2021, 23:33 
Заслуженный участник
Аватара пользователя


31/01/14
11316
Hogtown
Otta в сообщении #1534764 писал(а):
thesection имеет формат Номерглавы.номерсекции

Обычно да, но не у ТС: он же как Вы правильно отметили, всунул туда знак параграфа. Или вообще какой нибудь пакет туда может засобачить чего-то. Т.ч. в этом смысле безопаснее использовать мой вариант.

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение13.10.2021, 03:12 
Заслуженный участник


09/05/13
8904
∞⠀⠀⠀⠀
Red_Herring в сообщении #1534765 писал(а):
всунул туда знак параграфа.

Со знаком параграфа у него нумерация не прокатит в том виде, который он хочет. Придется хотеть чего-то одного. Или вида, или параграфа.

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение13.10.2021, 05:13 
Заслуженный участник
Аватара пользователя


31/01/14
11316
Hogtown
Otta в сообщении #1534776 писал(а):
Со знаком параграфа у него нумерация не прокатит в том виде, который он хочет. Придется хотеть чего-то одного. Или вида, или параграфа.

Зависит от порядка, в котором он команды загружает. А можно и так извратиться:
Используется синтаксис LaTeX
\documentclass[12pt]{report}
\usepackage{amsmath}
\numberwithin{section}{chapter}
\let\thesec=\thesection
\renewcommand{\thesection}{{\S }\ \thesec}

\renewcommand{\theequation}{\thesection.\arabic{equation}}
\begin{document}
\chapter{One}
\section{one}
\begin{equation}
1+1=2
\end{equation}
\end{document}

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение13.10.2021, 05:42 


12/10/21
11
Я может что-то не так делаю, но у меня после ввода ваших решений нумерация идет:
section.нумерация формул. А нужно именно chapter.section.equation
Или я вас не понимаю, или вы меня.

Вот так у меня работает, но нумерация формул идет подряд. Есть ли какая-то возможно задать какой-то цикл, что при смене section начинается новая нумерация equation?
Используется синтаксис LaTeX
\renewcommand{\theequation}{\Roman{chapter}.\arabic{section}.\arabic{equation}}


-- 13.10.2021, 09:55 --

Получился вывод такой:
Знак параграфа chapter.section.equation , но equation нумеруется все равно подряд

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение13.10.2021, 07:47 
Заслуженный участник
Аватара пользователя


31/01/14
11316
Hogtown
Там я просто демонстрировал, почему нельзя вставлять \thesection внутрь \theequation.
Вот что надо чтобы нумеровать главы заглавными римскими в вставлять знак \S в секции, но чтобы этот знак не лез в уравнения
Используется синтаксис LaTeX
\usepackage{amsmath}
\renewcommand{\thechapter}{\Roman{chapter}}
\numberwithin{section}{chapter}
\renewcommand{\thesection}{\S\ \Roman{chapter}.\arabic{section}}
\numberwithin{equation}{section}
\renewcommand{\theequation}{\Roman{chapter}.\arabic{section}.\arabic{equation}}

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение13.10.2021, 11:47 
Заслуженный участник


09/05/13
8904
∞⠀⠀⠀⠀
nufchan в сообщении #1534779 писал(а):
Я может что-то не так делаю, но у меня после ввода ваших решений нумерация идет:

Может. А может, у нас были разные цели.
https://yadi.sk/d/amif3uEuSnlQFA

Годится?
Знак параграфа - увольте меня, я его воссоздать могу, но коряво же.
Выше совет post1534785.html#p1534785 как со знаком.

 Профиль  
                  
 
 Re: Автонумерация формул по разделу
Сообщение13.10.2021, 16:55 


12/10/21
11
Red_Herring в сообщении #1534785 писал(а):
Там я просто демонстрировал, почему нельзя вставлять \thesection внутрь \theequation.
Вот что надо чтобы нумеровать главы заглавными римскими в вставлять знак \S в секции, но чтобы этот знак не лез в уравнения
Используется синтаксис LaTeX
\usepackage{amsmath}
\renewcommand{\thechapter}{\Roman{chapter}}
\numberwithin{section}{chapter}
\renewcommand{\thesection}{\S\ \Roman{chapter}.\arabic{section}}
\numberwithin{equation}{section}
\renewcommand{\theequation}{\Roman{chapter}.\arabic{section}.\arabic{equation}}


Данное решение работает, и так как надо! Большое всем спасибо! Восхищает то, как разбираетесь (в сравнении со мной, как минимум :lol: )
Спасибо еще раз! :))

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

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



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

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


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

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