Skip to main content

Funzioni utili per lab3

Project description

TexPy

Descrizione rapida della libreria

Questa libreria e' stata creata da studenti del corso di Laboratorio 3 dell'universita' di Pisa per velocizzare la stesura delle relazioni, contiene funzioni che potrebbero risultare utili pure a corsi come Laboratorio 1 e 2
In particolare queste funzioni permettono di stampare una tabella in LaTeX senza dover riscrivere tutti i dati tra $ ed &

Ad esempio creiamo una tabella con misure ed errori:

import texpy as tp
import numpy as np
x = np.linspace(1, 2, 10) # Genero dei dati
y = 5*x
dx, dy = x*0.01, y*0.01 # Suppongo che l'errore sia l'1% della misura
misure = [x, y] # Creo la matrice con i valori
errori_misure = [dx, dy] # Creo la matrice con gli errori
tab = tp.ne(misure, errori_misure) # Crea una matrice del tipo misura +- errore come spiegato sotto
tp.mat(tab) # Stampa la matrice, ovvero la tabella in latex

Output:

Copia tutto quello che c'e' tra le linee

--------------------------
\begin{tabular}{cc}
	\hline
	% Qua mettici il titolo, ricordati di mettere le \\ alla fine % 
	\hline
	$1.00 \pm 0.01$ & $5.00 \pm 0.05$ \\
	$1.11 \pm 0.01$ & $5.56 \pm 0.06$ \\
	$1.22 \pm 0.01$ & $6.11 \pm 0.06$ \\
	$1.33 \pm 0.01$ & $6.67 \pm 0.07$ \\
	$1.44 \pm 0.01$ & $7.22 \pm 0.07$ \\
	$1.56 \pm 0.02$ & $7.78 \pm 0.08$ \\
	$1.67 \pm 0.02$ & $8.33 \pm 0.08$ \\
	$1.78 \pm 0.02$ & $8.89 \pm 0.09$ \\
	$1.89 \pm 0.02$ & $9.44 \pm 0.09$ \\
	$2.00 \pm 0.02$ & $(1.00 \pm 0.01) \times 10^{1}$ \\
	\hline
\end{tabular}

--------------------------

Installazione

Scrivere su terminale pip install texpy

Descrizione dettagliata delle funzioni

Tutte le funzioni sono vettorizzate, ovvero possono prendere in input numeri, vettori, matrici, tensori ecc... e li trattano secondo le regole di numpy, per maggiori informazioni: numpy broadcasting
In pratica puoi dare anche array alle funzioni e queste fanno quello che ci aspetta

Notazione scientifica con errore

ne(x, dx, unit=None) Ritorna una stringa in latex con il valore x e l'errore ovvero "x \pm dx" Parametri:

  • x: valore della misura
  • dx: errore della misura
  • unit: Opzionale, serve per impostare l'unità di misura di x
# Es: misuro x=45.890 +- 135
>>> import texpy as tp
>>> tp.ne(45890,135)
'$(4.59 \\pm 0.01) \\times 10^{4}$'

>>> tp.ne(67.5, 1.6, unit="kg") # Il parametro unit imposta l'unità in chili
'$68 \\pm 2$kg'

>>> tp.ne(65000, 300, "V") # Se l'ordine di grandezza di x risulta multiplo di 3 la funzione
'$65.0 \\pm 0.3$kV'        # aggiunge automaticamente il prefisso del SI adatto: 65000 V = 65 kV

Tabella per latex

mat(Matrice, titolo=None, file=None) Stampa su terminale una matrice fatta di stringhe in formato latex

  • Matrice: matrice fatta di stringhe contenente i valori da stampare
  • titolo: Opzionale, il titolo della tabella
  • file: Opzionale, file in cui la matrice viene stampata (ATTENZIONE SOVRASCRIVE IL FILE!)
# Esempio:
>>> import texpy as tp
>>> M = [['guardati', 'l\'attacco'],
        ['dei', 'giganti']]
>>> tp.mat(M, 'titolo & a caso')

Output:

Copia tutto quello che c'è tra le linee
 --------------------------
 \begin{tabular}{cc}
 \hline
	titolo & a caso\\ 
 \hline
	guardati & l'attacco \\
	dei & giganti \\
 \hline
 \end{tabular}
--------------------------

Se avessi scritto tp.mat(M, 'titolo & a caso', file="myfile.txt") l'output sopra sarebbe stato scritto nel file myfile.txt

Notazione scientifica con valore ed errore separati

nes(x, dx=None, unit=None) Ritorna due stringe, una col valore e l'altro con l'errore fatte in modo che abbiano lo stesso ordine di grandezza, in pratica è come la prima funzione ma valore ed errore sono in due stringhe diverse

  • x: valore della misura
  • dx: Opzionale, errore della misura
  • unit: Opzionale, serve per impostare l'unità di misura di x
# Es: misuro x = 45.890 +- 135
>>> tp.nes(45897,135)
(array('$4.59 \\times 10^{4}$', dtype='<U20'),
 array('$0.01 \\times 10^{4}$', dtype='<U20'))

# Es: voglio solo il valore di x = 45.890
>>> tp.nes(45890)
array('$4.59 \\times 10^{4}$', dtype='<U20')

>>> tp.ne(6750, 16, unit="g") # Il parametro unit imposta l'unità di misura
(array('$6.75$kg', dtype='<U8'), array('$0.02$kg', dtype='<U8'))

Notazione scientifica

ns(n, nrif=None, nult=None, unit=None) Funzione della notazione scientifica di un singolo numero con un numero di riferimento nrif scritto in latex. I parametri sono:

  • n: numero da portare in notazione scientifica
  • nrif: Opzionale, serve a specificare l'ordine di grandezza del numero prima della virgola, ovvero dove mettere la virgola, se non specificato assume il valore di n
  • nult: Opzionale, serve a specificare l'ordine di grandezza della cifra meno significativa, ovvero serve a dire quante cifre scrivere dopo la virgola
  • unit: Serve a impostare l'unità di misura di n

Nota: Viene preso l'ordine di grandezza di nrif e nult

# Es: Porto in notazione scientifica 45.890
>>> import texpy as tp
>>> tp.ns(45890)
'$4.59 \\times 10^{4}$'

# Es: Porto in notazione scientifica 45.890 con l'ordine di grandezza di 135
>>> tp.ns(45890, 135)
'$459 \\times 10^{2}$'

# Es: Porto in notazione scientifica 45.890 con l'ordine di grandezza di 135 e
# scrivo i numeri dopo la virgola fino all'ordine di grandezza di 3
>>> tp.ns(45890, 135, 3)
'$459.90 \\times 10^{2}$'

>>> tp.ns(45890, 135, 3, "F") # Il parametro unit imposta l'unità di misura
'$45890$F'
>>> tp.ns(45890, 1000, 3, "F") # la funzione automaticamente converte 45.890 * 10^3 F = 45.890 kF  
'$45.890$kF'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

texpy-1.0.3.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

texpy-1.0.3-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file texpy-1.0.3.tar.gz.

File metadata

  • Download URL: texpy-1.0.3.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for texpy-1.0.3.tar.gz
Algorithm Hash digest
SHA256 f4c47f77c68c9d6c94645e137d8805d40906264ed08bd0343b755f2ce7183be8
MD5 7697708f1a9db0131f53495c4614c7dd
BLAKE2b-256 b078b83c682d64ad2fe7ea5b5e0a73b2c5e2b1a4cb97b726097a250be6597e48

See more details on using hashes here.

File details

Details for the file texpy-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: texpy-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for texpy-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c904233e3b2fc410e19b88ddd3ec0a78e245def8e6cb1b827334cfe68a6a22ab
MD5 92cd5b9e315ebb122a4c61e8fe0a107d
BLAKE2b-256 b22811287ba130df157bdf297785d330187a94a68a8621e7a33db00909f0de3f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page