Dopo aver visto alcuni esempi della libreria Python Matplotlib, come la risoluzione numerica dell'equazione della diffusione e uno studio di idrodinamica, correnti 1D, vediamo un altro caso interessante: lo studio della deformazione di una trave, soggetta ad un certo carico e con un certo schema statico.
Queste le ipotesi di partenza:
- lunghezza trave L=5m
- carico totale (peso proprio + carico di progetto) 1000 kg/m
- materiale acciaio, modulo di elasticità 2.11 * 1011 Pa
- sezione circolare cava, con D=6cm, d=4cm, quindi momento di inerzia I=pi*(D4-d4)/64
- ipotesi modulo di elasticità decrescente nel tempo, secondo la legge E(t)=E0*exp(-kt), k=log(2)/100, con l'ipotesi che E si dimezzi dopo 100 iterazioni di tempo (unità che si vuole, non ha importanza, dati di esempio)
- schema statico semplice, apoggio-appoggio
La situazione semplice può essere mostrata nella figura che segue:

Vediamo di seguito il codice del programma e il risultato grafico con Matplotlib:
import numpy as np
from matplotlib import pyplot as plt
L=5 #[m]
E0=2.1*10**11 #[Pa]
q=1000 #[kg/m]
D=0.06 #[m]
d=0.04 #[m]
N=100
I=np.pi*(D**4-d**4)/64 #[m^4]
time=0
k05=np.log(2)/100 #costante di dimezzamento
E=E0*np.exp(-k05*time)
V=np.zeros(N)
for i in range(0,N):
V[i]=q*L**3/(24*E*I)*(i*L/N)+q/(24*E*I)*((i*L/N)**4-2*L*(i*L/N)**3)
plt.figure()
i = np.linspace(0, L, N)
plt.plot(i,-V)
plt.show()
L'immagine seguente (molto semplice) mostra l'andamento, ovviamente la massima deformazione in una situazione semplice e simmetrica di questo tipo si ha per x=L/2.

Nel codice, abbiamo indicato time=0 ovvero l'istante iniziale. Nel caso time=100, per l'esempio che abbiamo fatto è il valore per il quale si ha E=E/2 ovvero la rigidezza, modulo di elasticità del materiale è dimezzato (es. usura nel tempo), si vede dai valori del grafico che esso risulta più accentuato ovvero maggiore deformazione rispetto a prima (meno rigidezza del materiale, meno resistenza alla deformazione), in termini tecnici è maggiore la "freccia" (abbassamento rispetto alle condizioni di riposo). Un'immagine con t=100, giusto per avere un confronto dei valori.
