Skip to content

Formataçõs/LaTeX

Eu procurei seguir ao máximo o guia de estilo do sistema métrico, que, aliás, recomendo a todos que leiam antes de elaborarem seus relatórios. É um material bem explicado e bastante útil. Caso encontrem alguma violação desse estilo, por favor, abram uma issue no repositório para me avisar.

Ordem de Grandeza

Por padrão, as medidas serão formatadas seguindo a notação científica, ou seja, a ordem de grandeza será ajustada para que o valor nominal esteja entre 1 e 10. Na maioria dos casos, esse é o comportamento desejado, mas, em algumas situações, podemos querer representar valores como dezenas ou centenas de vezes uma unidade (acima disso, recomenda-se alterar a unidade). Para isso, basta digitar E seguido da ordem de grandeza.

    comprimento_de_onda=Medida(500,'nm',1)
    print(comprimento_de_onda)#(5,00 ± 0,01)x10² nm
    print(f"{comprimento_de_onda:E0}") #(500 ± 1) nm
    print(f"{comprimento_de_onda:E3}") #(0,500 ± 0,001)x10³ nm
    massa=Medida(5,'tons',0.1)
    print(f"{massa:E-1}") #(50 ± 1)x10⁻¹ ton

Unidades

Já abordamos um pouco sobre unidades na seção de introdução. Basicamente, o projeto utiliza a biblioteca pint para realizar as conversões. Caso desejem saber mais sobre as unidades suportadas e como formatá-las, sugiro que consultem a documentação do Pint. Uma funcionalidade adicional é que, ao digitar si na representação de uma medida, ela será exibida no Sistema Internacional (SI).

De modo geral, é extremamente raro encontrar uma unidade que o Pint não suporte ou não consiga interpretar. Porém, um detalhe importante é que o Pint é uma biblioteca desenvolvida em inglês. Assim, se você optar por escrever unidades por extenso (embora eu pessoalmente prefira as abreviações), ele não reconhecerá metro, mas sim meter.

    print(imc)  # (2,45 ± 0,03)x10⁻³ kg/cm²
    print(f"{imc:kg/m²}")  # (2,45 ± 0,03)x10¹ kg/m²
    print(f"{imc:g/cm²}")  # (2,45 ± 0,03) g/cm²
    print(f"{imc:si}")  # (2,45 ± 0,03)x10¹ kg/m²
    print(f"{imc}")

LaTeX

Ao configurar a formatação para LaTeX, o resultado será gerado no formato LaTeX. Embora não seja agradável para leitura humana, será muito útil para o seu Overleaf ou TexLive.

    print(f"{gravidade:si}") #(9,73 ± 0,07) m/s²
    print(f"{gravidade:si_latex}") 
    '''(9,73 \, \pm \, 0,07) \, 
    \frac{\mathrm{m}}{\mathrm{s}^{2}}'''

Para os curiosos, o renderizado fica assim:

Combinando Formatações

Para combinar formatações, basta adicionar um underscore _. É importante mencionar que a unidade sempre deve ser especificada antes dos outros formatos.

    g=Medida(9.8,'m/s²',0.1)
    print(f"{g:E2}") #(0,098 ± 0,001)x10² m/s²
    print(f"{g:E2_latex}") #(0,098 \, \pm \, 0,001)\times 10^{2} \, \frac{\mathrm{m}}{\mathrm{s}^{2}}
    print(f"{g:cm/s²_E2_latex}") #(9,8 \, \pm \, 0,1)\times 10^{2} \, \frac{\mathrm{cm}}{\mathrm{s}^{2}}
    print(f"{g:E2_cm/s²}") #❌ unidade deve vir primeiro!