
Contexto. Ointegral do produtoé o análogo contínuo da integral ordinária (Riemann, Lebesgue, Denjoy, Perron etc...) e foi introduzido por Vito Volterra em 1887 a fim de fornecer uma forma funcional compacta de expressar a solução do problema de Cauchy para sistemas de diferencial ordinário equações. O leitor interessado pode dar uma olhadaeste livro de Antonín Slavík,Integração de produtos, sua história e aplicações, Matfyzpress 2007.
Na prática comum (também na referência citada acima), a integral do produto é representada como "maiúscula \Pi
" comum pelo comando padrão \prod
de maneira semelhante à que se obtém usando o código
\prod_0^t (1+r(s))^{\operatorname{d}s}
No entanto, do ponto de vista lógico e de clareza, isto é um tanto insatisfatório:por que deveríamos usar o mesmo símbolo para o produto de termos finitos ou infinitos discretos, mesmo para o produto de infinitos termos “infinitesimais”?
Para a integral ordinária sabemos que esta operação de limite leva do símbolo de soma \sum
ao \int
símbolo, é uma espécie de "S" maiúsculo no estilo de script.
O problema a ser resolvido. Minha ideia é definir um \pint
comando que imprima uma espécie de "P" maiúsculo no estilo de script e se comporte exatamente como o \int
símbolo. Precisamente
\pint
deve ser o comando padrão,- a expressão que segue o comando deve ser centrada graficamente em relação à altura do símbolo (como acontece com o
\int
símbolo padrão), \pint\limits
deve ser o comando usado para colocar os limites de integração do produto acima e abaixo do\pint
símbolo,- o estilo de script "P" pode ser feito usando algo como
\mathscr{P}
ou usando um .svg ou outro tipo de imagem vetorial obtido pela modificação do\int
símbolo padrão.
Alguns experimentos visando obter o resultado gráfico desejado. Consegui produzir algo desse tipo usando as seguintes declarações de código de preâmbulo
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{mathrsfs}
\usepackage{stix}
\newcommand{\dm}{\mathrm{d}}
Então, para obter um "estilo padrão" \pint
defini o seguinte comando
% Definition of Volterra's product integral, standard style.
\DeclareMathOperator{\pint}{{\mathlarger{\mathlarger{\mathlarger{\mathlarger{\mathscr{P}}}}}}}
que, invocado no corpo do documento como \pint_{\!\!\!\!\!\!0}^{t}(1+r(s))^{\dm s}
, produz a seguinte saída gráfica:
Depois disso, para obter um \int\limits
comando de sabor defini o seguinte
% Definition of Volterra's product integral, \limits style.
\DeclareMathOperator*{\pint}{{\mathlarger{\mathlarger{\mathlarger{\mathlarger{\mathscr{P}}}}}}}
que, invocado no corpo do documento como \pint_{\!\!\!\!\!\!0}^{\quad t}(1+r(s))^{\dm s}
, produz a seguinte saída gráfica:
Embora o sabor gráfico obtido seja semelhante ao desejado, as soluções apresentadas são um tanto insatisfatórias em relação à primeira árvore dos pontos acima, ou seja,
- invocar o
\pint
comando não é suficiente para que os subscritos e sobrescritos sejam colocados corretamente, pois é necessário ajustar sua posição "com as próprias mãos", e - a expressãonão está centralizado graficamenterespeito ao
\pint
símbolo e, finalmente, - para obter o
\pint\limits
comportamento, tenho que redefinir completamente o comando.
Responder1
Aqui está minha proposta
\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx,mathrsfs}
\makeatletter
\NewDocumentCommand{\pint}{t\limits e{_^}}{%
\DOTSI\pint@{#1}{#2}{#3}%
}
\NewDocumentCommand{\pint@}{mmm}{%
\mathop{%
\IfBooleanTF{#1}{\pint@limits}{\pint@nolimits}{#2}{#3}%
}%
}
\NewDocumentCommand{\pint@limits}{mm}{%
\mathpalette\pint@@limits{{#1}{#2}}%
}
\NewDocumentCommand{\pint@@limits}{mm}{%
\pint@@@limits#1#2%
}
\NewDocumentCommand{\pint@@@limits}{mmm}{%
\mathop{\vcenter{
\sbox\z@{\raisebox{\depth}{$\m@th#1\int$}}%
\hbox{\resizebox{!}{0.95\ht\z@}{$\m@th\mathscr{P}$}\vphantom{\box\z@}}%
}}\limits\IfValueT{#2}{_{#2}}\IfValueT{#3}{^{\mspace{\if@display18\else9\fi mu}#3}}%
}
\NewDocumentCommand{\pint@nolimits}{mm}{%
\mathpalette\pint@@nolimits{{#1}{#2}}%
}
\NewDocumentCommand{\pint@@nolimits}{mm}{%
\pint@@@nolimits#1#2%
}
\NewDocumentCommand{\pint@@@nolimits}{mmm}{%
\vcenter{
\sbox\z@{\raisebox{\depth}{$\m@th#1\int$}}%
\hbox{\resizebox{!}{0.95\ht\z@}{$\m@th\mathscr{P}$}\vphantom{\box\z@}}%
}\IfValueT{#2}{_{\mspace{-\if@display24\else12\fi mu}#2}}\IfValueT{#3}{^{#3}}%
}
\makeatother
\begin{document}
\[
\pint_a^b \int_a^b \pint\limits_a^b \int\limits_a^b
\]
\begin{center}
$\pint_a^b \int_a^b \pint\limits_a^b \int\limits_a^b$
\end{center}
\end{document}
Eu gostaria de mencionar o prodint
pacote. Com uma pequena reviravolta, no entanto.
\documentclass{article}
\usepackage{amsmath}
\usepackage{prodint}
\makeatletter
\newcommand\pint{\DOTSI\if@display\PRODI\else\prodi\fi\ilimits@}
\makeatother
\begin{document}
\[
\pint_a^b \int_a^b \pint\limits_a^b \int\limits_a^b
\]
\begin{center}
$\pint_a^b \int_a^b \pint\limits_a^b \int\limits_a^b$
\end{center}
\end{document}
Responder2
Uma adaptação direta da minha resposta emComo são definidas as grandes operadoras?. Aqui, \foo
fornece um símbolo maior \displaystyle
, assim como \int
, enquanto \barr
mantém o tamanho do símbolo associado \textstyle
, mesmo na matemática de exibição.
\documentclass{article}
\usepackage{amsmath}
\usepackage{amsfonts}
\DeclareMathOperator*{\foo}{\scalerel*{\mathscr{P}}{\sum}}
\DeclareMathOperator*{\barr}{\scalerel*{\mathscr{P}}{\textstyle\sum}}
\usepackage{mathrsfs}
\usepackage{scalerel}
\begin{document}
\[
\foo_{i=3}^{6}(f^2(i))
\]
This is inline: \(\foo_{i=3}^{6}(f^2(i)) \)
\[
\barr_{i=3}^{6}(f^2(i))
\]
This is inline: \(\barr_{i=3}^{6}(f^2(i)) \)
\end{document}
Mico observa que \barr
não deve ser usado em nenhum dos estilos de script, o que é verdade. Se esse uso fosse necessário, então \barr
poderia ser definido como
\DeclareMathOperator*{\barr}{\scalerel*{\mathscr{P}}{\mathchoice
{\textstyle\sum}{\sum}{\sum}{\sum}}}
No MWE acima, o "P" é dimensionado para o mesmo tamanho que \sum
. Se você preferir que seja dimensionado para o tamanho de \int
, basta substituir \sum
por \int
em cada um dos \DeclareMathOperator
s e o resultado será semelhante a:
Responder3
Na verdade, a notação funcional (letra única) para a integral é simples e mais econômica do que o símbolo integral, ela pode mostrar explicitamente (em vez de ocultá-la frequentemente não utilizada dx
) a variável integradora, se necessário, e não depende da dimensão . A notação também precisa ser facilmente utilizável ao escrever em um quadro em sala de aula. Portanto, um simples \DeclareMathOperator*{\pint}{\mathbf{P}}
deve dar conta do recado, mas no exemplo abaixo é usada uma fonte com pescoço mais longo para distinção, e ainda pode ser facilmente replicada em caligrafia.
\documentclass{article}
\usepackage{amsmath}
\usepackage{scalerel}
% for longer neck letters but don't use them by default
\usepackage[nodefault,typeone]{drm}
%
\newcommand{\drm}[1]{{\fontfamily{drm}\selectfont #1}}
% Longer neck P
\DeclareMathOperator*{\pint}{\textrm{\drm{P}}}
% Longer neck P large operator
\DeclareMathOperator*{\Pint}{\scalerel*{\textrm{\drm{P}}}{\int}}
\begin{document}
\begin{tabular}{ll}
$\pint_a^b(1+r(s))$
& $\displaystyle \pint_a^b(1+r(s))$\\[1cm]
$\pint_{s \in [a,b]}(1+r(s))$
& $\displaystyle \pint_{s \in [a,b]}(1+r(s))$\\[1cm]
$\pint_{(s,t) \in [a,b]\times[c,d]}(1+r(s,t))$
& $\displaystyle \pint_{(s,t) \in [a,b]\times[c,d]}(1+r(s,t))$\\[1cm]
$\pint_{s^2+t^2=1}(1+r(s,t))$
& $\displaystyle \pint_{s^2+t^2=1}(1+r(s,t))$\\[1cm]
$\Pint_{s^2+t^2=1}(1+r(s,t))$
& $\displaystyle \Pint_{s^2+t^2=1}(1+r(s,t))$
\end{tabular}
\end{document}