# Usando o SageTeX

O pacote SageTeX permite que você insira resultados de cálculos feitos com o Sage em um documento LaTeX. Esse pacote já vem com o Sage. Para usá-lo, você precisa “instalá-lo” em seu sistema LaTeX local; aqui instalar significa copiar um simples arquivo. Veja Instalação neste tutorial e a seção “Make SageTeX known to TeX” do Guia de instalação do Sage (em inglês).

Aqui vai um breve exemplo de como usar o SageTeX. A documentação completa pode ser encontrada em `SAGE_ROOT/local/share/texmf/tex/latex/sagetex`, onde `SAGE_ROOT` é o diretório onde se encontra a sua instalação. Esse diretório contém a documentação, um arquivo de exemplo, e alguns scripts em Python possivelmente úteis.

Para ver como o SageTeX funciona, siga as instruções para instalar o SageTeX (em Instalação) e copie o seguinte texto em um arquivo chamado `st_example.tex`, por exemplo.

Aviso

O texto abaixo vai apresentar diversos erros sobre “unknown control sequences” se você está visualizando isto na ajuda “live”. Use a versão estática para ver o texto corretamente.

    \documentclass{article}
    \usepackage{sagetex}

    \begin{document}

    Using Sage\TeX, one can use Sage to compute things and put them into
    your \LaTeX{} document. For example, there are
    $\sage{number_of_partitions(1269)}$ integer partitions of $1269$.
    You don't need to compute the number yourself, or even cut and paste
    it from somewhere.

    Here's some Sage code:

    \begin{sageblock}
        f(x) = exp(x) * sin(2*x)
    \end{sageblock}

    The second derivative of $f$ is

    \[
      \frac{\mathrm{d}^{2}}{\mathrm{d}x^{2}} \sage{f(x)} =
      \sage{diff(f, x, 2)(x)}.
    \]

    Here's a plot of $f$ from $-1$ to $1$:

    \sageplot{plot(f, -1, 1)}

    \end{document}

Execute o LaTeX em `st_example.tex` da forma usual. Note que o LaTeX vai reclamar sobre algumas coisas, entre elas:

    Package sagetex Warning: Graphics file
    sage-plots-for-st_example.tex/plot-0.eps on page 1 does not exist. Plot
    command is on input line 25.

    Package sagetex Warning: There were undefined Sage formulas and/or
    plots. Run Sage on st_example.sage, and then run LaTeX on
    st_example.tex again.

Observe que, além dos arquivos usuais produzidos pelo LaTeX, existe um arquivo chamado `st_example.sage`. Esse é um script em Sage produzido quando você executa o LaTeX em `st_example.tex`. A mensagem de alerta pede para você executar o LaTeX em `st_example.sage`, então siga essa sugestão e faça isso. Você vai receber uma mensagem para executar o LaTeX em `st_example.tex` novamente, mas antes que você faça isso, observe que um novo arquivo foi criado: `st_example.sout`. Esse arquivo contém os resultados dos cálculos feitos pelo Sage, em um formato que o LaTeX pode usar para inserir em seu texto. Um novo diretório contendo um arquivo EPS do seu gráfico também foi criado. Execute o LaTeX novamente e você vai ver que tudo que foi calculado, incluindo os gráficos, foi incluído em seu documento.

As funções (macros em inglês) utilizadas acima devem ser fáceis de entender. Um ambiente `sageblock` insere código “verbatim” (exatamente como é digitado) e também executa o código quando você executa o Sage. Quando você insere `\sage{foo}`, é incluído em seu documento o resultado que você obteria executando `latex(foo)` no Sage. Comandos para fazer gráficos são um pouco mais complicados, mas em sua forma mais simples, `\sageplot{foo}` insere a imagem que você obtêm usando `foo.save('filename.eps')`.

Em geral, a rotina é a seguinte:

> - execute o LaTeX no seu arquivo .tex;
> - execute o Sage no arquivo .sage que foi gerado;
> - execute o LaTeX novamente.

Você pode omitir a execução do Sage desde que você não tenha alterado os comandos em Sage em seu documento.

Há muito mais sobre o SageTeX, e como tanto o Sage como o LaTeX são ferramentas complexas e poderosas, é uma boa idéia ler a documentação para o SageTeX que se encontra em `SAGE_ROOT/local/share/texmf/tex/latex/sagetex`.