Sei sulla pagina 1di 28

Calcoli di processo dell’ingegneria chimica:

Appello del 17/01/2020 – TEMA A


Esercizio 1

Risolvere il seguente sistema lineare Ax=b usando il metodo di eliminazione di Gauss lavorando in
virgola mobile (notazione scientifica decimale) con una precisione della mantissa di 2 cifre
significative con e senza pivoting parziale (senza bilanciamento).

0.1 0.2 0.5 1


A= 50 95 80
b= 1

103 1 501 1

Confrontare i risultati e motivare le eventuali discrepanze.

Risoluzione senza pivoting parziale

Iterazione 0

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

5.0e+01 9.5e+01 8.0e+01 1.0e+00

1.0e+02 1.0e+00 5.0e+02 1.0e+00

Coefficienti:

linea 2: 5.0e+02

linea 3: 1.0e+03

Iterazione 1

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00


0.00 -5.0e+00 -1.7e+02 -5.0e+02

0.00 -2.0e+02 0.00 -1.0e+03

Coefficienti:

linea 3: 4.0e+01

Iterazione 2

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

0.00 -5.0e+00 -1.7e+02 -5.0e+02

0.00 0.00 6.8e+03 1.9e+04

Soluzione:

-1.2e+01

4.0e+00

2.8e+00

Risoluzione con pivoting parziale

Iterazione 0

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

5.0e+01 9.5e+01 8.0e+01 1.0e+00

1.0e+02 1.0e+00 5.0e+02 1.0e+00


Effettuo scambio righe

W:

1.0e+02 1.0e+00 5.0e+02 1.0e+00

1.0e-01 2.0e-01 5.0e-01 1.0e+00

5.0e+01 9.5e+01 8.0e+01 1.0e+00

Coefficienti:

linea 2: 1.0e-3

linea 3: 5.0e-1

Iterazione 1

W:

1.0e+02 1.0e+00 5.0e+02 1.0e+00

0.00 2.0e-01 0.00 1.0e+00

0.00 9.5e+01 -1.7e+02 5.0e-01

Effettuo scambio righe

W:

1.0e+02 1.0e+00 5.0e+02 1.0e+00

0.00 9.5e+01 -1.7e+02 5.0e-01

0.00 2.0e-01 0.00 1.0e+00

Coefficienti:
linea 3: 2.1e-3

Iterazione 2

W:

1.0e+02 1.0e+00 5.0e+02 1.0e+00

0.00 9.5e+01 -1.7e+02 5.0e-01

0.00 0.00 3.6e-01 1.0e+00

Soluzione:

-1.4e+01

5.1e+00

2.8e+00

Esercizio 2

Nel 1906 William Coolidge sviluppò una tecnica per creare sottili filamenti di tungsteno, invenzione
che trovò applicazione nelle lampadine ad incandescenza. La temperatura del filamento di una
lampadina ad incandescenza può essere stimata eguagliando la potenza termica generata
attraverso il riscaldamento Ohmico (Pin=V2/R) a quella dissipata per irraggiamento
(Pout=σεAfilamentoT4). Sapendo che la resistenza varia con la temperatura secondo una legge lineare
(R=R0*(1+α(T-T0)) con T0=300K e R0=r*L/Sez), utilizzando i seguenti dati di progetto:

Cp
L [m] D [m] ρ [kg/m3] r [Ωm] α [1/K] V [V] σ [W/m2/K4] ε
[j/kg/K]

0.5 5.0E-5 19000 150 5.6E-8 0.0045 120 5.67E-8 0.44


stimare la temperatura del filamento e confrontarla con quella di fusione del tungsteno (3422 °C)

E’ possibile risolvere il quesito applicando il metodo di Newton:

𝑓𝑓(𝑇𝑇𝑛𝑛 )
𝑇𝑇𝑛𝑛+1 = 𝑇𝑇𝑛𝑛 −
𝑓𝑓′(𝑇𝑇𝑛𝑛 )

per azzerare la funzione:


𝑉𝑉 2
𝑓𝑓(𝑇𝑇) = − 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 𝑇𝑇 4 = 0
𝑅𝑅0 (1 + 𝛼𝛼(𝑇𝑇 − 𝑇𝑇0 ))

Una via è manipolare l’equazione in maniera da ottenere una polinomiale di 5° grado (forse più
semplice):

𝑉𝑉 2
𝑓𝑓(𝑇𝑇) = − (1 − 𝛼𝛼𝑇𝑇0 )𝑇𝑇 4 − 𝛼𝛼𝑇𝑇 5 = 0
𝑅𝑅0 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓

La cui derivata è:

𝑓𝑓′(𝑇𝑇) = −4(1 − 𝛼𝛼𝑇𝑇0 )𝑇𝑇 3 − 5𝛼𝛼𝑇𝑇 4 = 0

In alternativa si può procedere direttamente a derivare la funzione originaria in T. Ai fini


dell’azzeramento entrambe le soluzioni sono equivalenti.

Utilizzando la polinomiale è possibile scrivere la seguente tabella con i valori intermedi della
funzione e della sua derivata:

Iterazione T f(T) df(T) Errore R


0 3000.0 -5.50E+14 -1.78E+12 187.5
1 2691.9 -1.02E+14 -1.15E+12 -308.1 167.8
2 2603.2 -6.57E+12 -1.01E+12 -88.7 162.1
3 2596.7 -3.30E+10 -9.99E+11 -6.5 161.6
4 2596.7 -8.43E+05 -9.98E+11 0.0 161.6
5 2596.7 0.00E+00 -9.98E+11 0.0 161.6

Arrivando in poche iterazioni alla soluzione

Esercizio 3

Utilizzando i dati forniti nell’esercizio precedente, diagrammare l’evoluzione di temperatura del


filamento nel tempo, sapendo che la derivata della temperatura è data da dT/dt=(Pin-Pout)/(m*Cp).

Si consiglia di utilizzare un passo di integrazione di 0.005s.

Il problema richiede l’integrazione di un’equazione differenziale del primo ordine con valore iniziale
T0=300. Utilizzando il metodo di Eulero fwd

𝑇𝑇𝑛𝑛+1 = 𝑇𝑇𝑛𝑛 + ℎ𝑇𝑇𝑛𝑛 ’

si integra la funzione
𝑉𝑉 2 4
𝑑𝑑𝑇𝑇 𝑅𝑅0 (1 + 𝛼𝛼(𝑇𝑇 − 𝑇𝑇0 )) − 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 𝑇𝑇
=
𝑑𝑑𝑑𝑑 𝑚𝑚 𝑐𝑐𝑐𝑐

Dove m è la massa del filamento (𝑚𝑚 = 𝑉𝑉𝑉𝑉𝑉𝑉 𝜌𝜌)

Organizzando il calcolo in una tabella otteniamo:

t T R dT/dt
0 300.0 14.3 3.61E+05
0.005 2104.5 130.1 2.58E+04
0.01 2233.7 138.3 1.98E+04
0.015 2332.5 144.7 1.48E+04
0.02 2406.7 149.5 1.09E+04
0.025 2461.4 153.0 7.94E+03
0.03 2501.1 155.5 5.69E+03
0.035 2529.6 157.3 4.04E+03
0.04 2549.8 158.6 2.84E+03
0.045 2564.0 159.5 1.99E+03
0.05 2574.0 160.2 1.39E+03
0.055 2580.9 160.6 9.68E+02
0.06 2585.7 160.9 6.72E+02
0.065 2589.1 161.2 4.67E+02
0.07 2591.4 161.3 3.23E+02
0.075 2593.1 161.4 2.24E+02
0.08 2594.2 161.5 1.55E+02
0.085 2595.0 161.5 1.07E+02
0.09 2595.5 161.6 7.42E+01
0.095 2595.9 161.6 5.14E+01
0.1 2596.1 161.6 3.55E+01

T filamento
3000

2500

2000
T[K]

1500

1000

500

0
0 0.02 0.04 0.06 0.08 0.1
tempo[s]

Soluzione consistente con quanto ottenuto nell’esercizio 2.


Esercizio 4

Scrivere una funzione Matlab che ricevuto come input un vettore di interi positivi restituisca un
vettore contenete gli stessi elementi, ma dove l’elemento dal valore più elevato sia stato spostato
in cima.

Ci sono diversi modi per risolvere il problema… eccone uno:

function v=maxincima(v)
n=length(v);
for i=2:n
if v(i)>v(1)
change=v(1);
v(1)=v(i);
v(i)=change;
end
end
Calcoli di processo dell’ingegneria chimica:

Appello del 17/01/2020 – TEMA B


Esercizio 1

Risolvere il seguente sistema lineare Ax=b usando il metodo di eliminazione di Gauss lavorando in
virgola mobile (notazione scientifica decimale) con una precisione della mantissa di 2 cifre
significative con e senza pivoting parziale (senza bilanciamento).

0.1 0.2 0.5


1
A= 47 95 87 b= 1
1000 1 401
1

Confrontare i risultati e motivare le eventuali discrepanze.

Risoluzione senza pivoting parziale

Iterazione 0

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

4.7e+01 9.5e+01 8.7e+01 1.0e+00

1.0e+03 1.0e+00 4.0e+02 1.0e+00

Coefficienti:

linea 2: 4.7e+2

linea 3: 1.0e+4

Iterazione 1

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00


0.0 1.0e+00 -1.5e+02 -4.7e+02

0.0 -2.0e+03 -4.6e+03 -1.0e+04

Coefficienti:

linea 3: -2.0e+3

Iterazione 2

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

0.0 1.0e+00 -1.5e+02 -4.7e+02

0.0 0.0 -3.0e+05 -9.5e+05

Soluzione:

-2.6e+01

1.0e+01

3.2e+00

Risoluzione con pivoting parziale

Iterazione 0

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

4.7e+01 9.5e+01 8.7e+01 1.0e+00

1.0e+03 1.0e+00 4.0e+02 1.0e+00


Effettuo scambio righe

W:

1.0e+03 1.0e+00 4.0e+02 1.0e+00

1.0e-01 2.0e-01 5.0e-01 1.0e+00

4.7e+01 9.5e+01 8.7e+01 1.0e+00

Coefficienti:

linea 2: 1.0e-4

linea 3: 4.7e-2

Iterazione 1

W:

1.0e+03 1.0e+00 4.0e+02 1.0e+00

0.0 2.0e-01 4.6e-01 1.0e+00

0.0 9.5e+01 6.8e+01 9.5e-01

Effettuo scambio righe

W:

1.0e+03 1.0e+00 4.0e+02 1.0e+00

0.0 9.5e+01 6.8e+01 9.5e-01

0.0 2.0e-01 4.6e-01 1.0e+00


Coefficienti:

linea 3: 2.1e-3

Iterazione 2

W:

1.0e+03 1.0e+00 4.0e+02 1.0e+00

0.0 9.5e+01 6.8e+01 9.5e-01

0.0 0.0 3.2e-01 1.0e+00

Soluzione:

-1.2e+00

-2.2e+00

3.1e+00

Soluzione numerica in doppia precisione:

-1.2614e+00

-2.2535e+00

3.1537e+00

Esercizio 2

Nel 1906 William Coolidge sviluppò una tecnica per creare sottili filamenti di tungsteno, invenzione
che trovò applicazione nelle lampadine ad incandescenza. La temperatura del filamento di una
lampadina ad incandescenza può essere stimata eguagliando la potenza termica generata
attraverso il riscaldamento Ohmico (Pin=V2/R) a quella dissipata per irraggiamento
(Pout=σεAfilamentoT4). Sapendo che la resistenza varia con la temperatura secondo una legge lineare
(R=R0*(1+α(T-T0)) con T0=300K e R0=r*L/Sez), utilizzando i seguenti dati di progetto:
Cp
L [m] D [m] ρ [kg/m3] r [Ωm] α [1/K] V [V] σ [W/m2/K4] ε
[j/kg/K]

0.6 8.0E-5 19000 150 5.60E-8 0.0045 120 5.67E-8 0.44


stimare la temperatura del filamento e confrontarla con quella di fusione del tungsteno (3422 °C)

E’ possibile risolvere il quesito applicando il metodo di Newton:

𝑓𝑓(𝑇𝑇𝑛𝑛 )
𝑇𝑇𝑛𝑛+1 = 𝑇𝑇𝑛𝑛 −
𝑓𝑓′(𝑇𝑇𝑛𝑛 )

per azzerare la funzione:

𝑉𝑉 2
𝑓𝑓(𝑇𝑇) = − 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 𝑇𝑇 4 = 0
𝑅𝑅0 (1 + 𝛼𝛼(𝑇𝑇 − 𝑇𝑇0 ))

Una via è manipolare l’equazione in maniera da ottenere una polinomiale di 5° grado (forse più
semplice):

𝑉𝑉 2
𝑓𝑓(𝑇𝑇) = − (1 − 𝛼𝛼𝑇𝑇0 )𝑇𝑇 4 − 𝛼𝛼𝑇𝑇 5 = 0
𝑅𝑅0 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓

La cui derivata è:

𝑓𝑓′(𝑇𝑇) = −4(1 − 𝛼𝛼𝑇𝑇0 )𝑇𝑇 3 − 5𝛼𝛼𝑇𝑇 4 = 0

In alternativa si può procedere direttamente a derivare la funzione originaria in T. Ai fini


dell’azzeramento entrambe le soluzioni sono equivalenti.

Utilizzando la polinomiale è possibile scrivere la seguente tabella con i valori intermedi della
funzione e della sua derivata:

Iterazione T f(T) df(T) Errore R


0 3000.0 -4.93E+14 -1.78E+12 87.9
1 2724.0 -8.31E+13 -1.21E+12 -276.0 79.6
2 2655.4 -4.10E+12 -1.09E+12 -68.6 77.5
3 2651.7 -1.17E+10 -1.09E+12 -3.8 77.4
4 2651.7 -9.49E+04 -1.09E+12 0.0 77.4
5 2651.7 0.00E+00 -1.09E+12 0.0 77.4

Arrivando in poche iterazioni alla soluzione


Esercizio 3

Utilizzando i dati forniti nell’esercizio precedente, diagrammare l’evoluzione di temperatura del


filamento nel tempo, sapendo che la derivata della temperatura è data da dT/dt=(Pin-Pout)/(m*Cp).

Si consiglia di utilizzare un passo di integrazione di 0.005s.

Il problema richiede l’integrazione di un’equazione differenziale del primo ordine con valore iniziale
T0=300. Utilizzando il metodo di Eulero fwd

𝑇𝑇𝑛𝑛+1 = 𝑇𝑇𝑛𝑛 + ℎ𝑇𝑇𝑛𝑛 ’

si integra la funzione

𝑉𝑉 2 4
𝑑𝑑𝑇𝑇 𝑅𝑅0 (1 + 𝛼𝛼(𝑇𝑇 − 𝑇𝑇0 )) − 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 𝑇𝑇
=
𝑑𝑑𝑑𝑑 𝑚𝑚 𝑐𝑐𝑐𝑐

Dove m è la massa del filamento (𝑚𝑚 = 𝑉𝑉𝑉𝑉𝑉𝑉 𝜌𝜌)

Organizzando il calcolo in una tabella otteniamo:

t T R dT/dt
0 300.0 6.7 2.51E+05
0.005 1553.1 44.4 3.52E+04
0.01 1729.1 49.7 2.98E+04
0.015 1878.2 54.2 2.55E+04
0.02 2005.6 58.0 2.18E+04
0.025 2114.7 61.3 1.86E+04
0.03 2207.6 64.1 1.58E+04
0.035 2286.4 66.4 1.33E+04
0.04 2352.7 68.4 1.11E+04
0.045 2408.0 70.1 9.18E+03
0.05 2454.0 71.5 7.57E+03
0.055 2491.8 72.6 6.20E+03
0.06 2522.8 73.5 5.05E+03
0.065 2548.0 74.3 4.10E+03
0.07 2568.5 74.9 3.31E+03
0.075 2585.1 75.4 2.67E+03
0.08 2598.4 75.8 2.14E+03
0.085 2609.1 76.1 1.72E+03
0.09 2617.7 76.4 1.38E+03
0.095 2624.6 76.6 1.10E+03
0.1 2630.1 76.8 8.78E+02
0.105 2634.5 76.9 7.00E+02
0.11 2638.0 77.0 5.58E+02
0.115 2640.8 77.1 4.45E+02
0.12 2643.0 77.2 3.54E+02
0.125 2644.8 77.2 2.82E+02
0.13 2646.2 77.3 2.24E+02
0.135 2647.3 77.3 1.78E+02
0.14 2648.2 77.3 1.42E+02
0.145 2648.9 77.3 1.13E+02
0.15 2649.5 77.4 8.97E+01
0.155 2649.9 77.4 7.13E+01
0.16 2650.3 77.4 5.67E+01
0.165 2650.6 77.4 4.51E+01
0.17 2650.8 77.4 3.58E+01

T filamento
3000

2500

2000
T[K]

1500

1000

500

0
0 0.02 0.04 0.06 0.08 0.1
tempo[s]

La temperatura tende asintoticamente a quella calcolata nell’esercizio 2

Esercizio 4

Scrivere una funzione Matlab che ricevuto come input un vettore di interi positivi restituisca un
vettore contenete gli stessi elementi, ma dove l’elemento dal valore più basso sia stato spostato in
cima.

function v=minincima(v)
n=length(v);
for i=2:n
if v(i)<v(1)
change=v(1);
v(1)=v(i);
v(i)=change;
end
end
Calcoli di processo dell’ingegneria chimica:

Appello del 17/01/2020 – TEMA C


Esercizio 1

Risolvere il seguente sistema lineare Ax=b usando il metodo di eliminazione di Gauss lavorando in
virgola mobile (notazione scientifica decimale) con una precisione della mantissa di 2 cifre
significative con e senza pivoting parziale (senza bilanciamento).

0.1 0.2 0.5


1
A= 32 95 1 b= 1
1004 200 444
1

Confrontare i risultati e motivare le eventuali discrepanze.

Risoluzione senza pivoting parziale

Iterazione 0

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

3.2e+01 9.5e+01 1.0e+00 1.0e+00

1.0e+03 2.0e+02 4.4e+02 1.0e+00

Coefficienti:

linea 2: 3.2e+2

linea 3: 1.0e+4

Iterazione 1

W:
1.0e-01 2.0e-01 5.0e-01 1.0e+00

0.0 3.1e+01 -1.6e+02 -3.2e+02

0.0 -1.8e+03 -4.6e+03 -1.0e+04

Coefficienti:

linea 3: -5.8e+1

Iterazione 2

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

0.0 3.1e+01 -1.6e+02 -3.2e+02

0.0 0.0 -1.4e+04 -2.9e+04

Soluzione:

-2.3e+00

6.5e-01

2.1e+00

Risoluzione con pivoting parziale

Iterazione 0

W:

1.0e-01 2.0e-01 5.0e-01 1.0e+00

3.2e+01 9.5e+01 1.0e+00 1.0e+00


1.0e+03 2.0e+02 4.4e+02 1.0e+00

Effettuo scambio righe

W:

1.0e+03 2.0e+02 4.4e+02 1.0e+00

1.0e-01 2.0e-01 5.0e-01 1.0e+00

3.2e+01 9.5e+01 1.0e+00 1.0e+00

Coefficienti:

linea 2: 1.0e-4

linea 3: 3.2e-2

Iterazione 1

W:

1.0e+03 2.0e+02 4.4e+02 1.0e+00

0.0 1.8e-01 4.6e-01 1.0e+00

0.0 8.9e+01 -1.3e+01 9.7e-01

Effettuo scambio righe

W:

1.0e+03 2.0e+02 4.4e+02 1.0e+00

0.0 8.9e+01 -1.3e+01 9.7e-01

0.0 1.8e-01 4.6e-01 1.0e+00


Coefficienti:

linea 3: 2.0e-3

Iterazione 2

W:

1.0e+03 2.0e+02 4.4e+02 1.0e+00

0.0 8.9e+01 -1.3e+01 9.7e-01

0.0 0.0 4.9e-01 1.0e+00

Soluzione:

-9.4e-01

3.0e-01

2.0e+00

Soluzione numerca in doppia precisione:

x=

-9.7697e-01

3.1784e-01

2.0683e+00
Esercizio 2

Nel 1906 William Coolidge sviluppò una tecnica per creare sottili filamenti di tungsteno, invenzione
che trovò applicazione nelle lampadine ad incandescenza. La temperatura del filamento di una
lampadina ad incandescenza può essere stimata eguagliando la potenza termica generata
attraverso il riscaldamento Ohmico (Pin=V2/R) a quella dissipata per irraggiamento
(Pout=σεAfilamentoT4). Sapendo che la resistenza varia con la temperatura secondo una legge lineare
(R=R0*(1+α(T-T0)) con T0=300K e R0=r*L/Sez), utilizzando i seguenti dati di progetto:

Cp
L [m] D [m] ρ [kg/m3] r [Ωm] α [1/K] V [V] σ [W/m2/K4] ε
[j/kg/K]

1 8.0E-5 19000 150 5.60E-8 0.0045 240 5.67E-8 0.44


stimare la temperatura del filamento e confrontarla con quella di fusione del tungsteno (3422 °C)

E’ possibile risolvere il quesito applicando il metodo di Newton:

𝑓𝑓(𝑇𝑇𝑛𝑛 )
𝑇𝑇𝑛𝑛+1 = 𝑇𝑇𝑛𝑛 −
𝑓𝑓′(𝑇𝑇𝑛𝑛 )

per azzerare la funzione:

𝑉𝑉 2
𝑓𝑓(𝑇𝑇) = − 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 𝑇𝑇 4 = 0
𝑅𝑅0 (1 + 𝛼𝛼(𝑇𝑇 − 𝑇𝑇0 ))

Una via è manipolare l’equazione in maniera da ottenere una polinomiale di 5° grado (forse più
semplice):

𝑉𝑉 2
𝑓𝑓(𝑇𝑇) = − (1 − 𝛼𝛼𝑇𝑇0 )𝑇𝑇 4 − 𝛼𝛼𝑇𝑇 5 = 0
𝑅𝑅0 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓

La cui derivata è:

𝑓𝑓′(𝑇𝑇) = −4(1 − 𝛼𝛼𝑇𝑇0 )𝑇𝑇 3 − 5𝛼𝛼𝑇𝑇 4 = 0

In alternativa si può procedere direttamente a derivare la funzione originaria in T. Ai fini


dell’azzeramento entrambe le soluzioni sono equivalenti.

Utilizzando la polinomiale è possibile scrivere la seguente tabella con i valori intermedi della
funzione e della sua derivata:

Iterazione T f(T) df(T) Errore R


0 3000.0 -2.41E+14 -1.78E+12 146.5
1 2865.2 -2.08E+13 -1.48E+12 -134.8 139.7
2 2851.2 -2.03E+11 -1.45E+12 -14.0 139.0
3 2851.1 -2.00E+07 -1.45E+12 -0.1 139.0
4 2851.1 0.00E+00 -1.45E+12 0.0 139.0
5 2851.1 0.00E+00 -1.45E+12 0.0 139.0

Arrivando in poche iterazioni alla soluzione

Esercizio 3

Utilizzando i dati forniti nell’esercizio precedente, diagrammare l’evoluzione di temperatura del


filamento nel tempo, sapendo che la derivata della temperatura è data da dT/dt=(Pin-Pout)/(m*Cp).

Si consiglia di utilizzare un passo di integrazione di 0.005s.

Il problema richiede l’integrazione di un’equazione differenziale del primo ordine con valore iniziale
T0=300. Utilizzando il metodo di Eulero fwd

𝑇𝑇𝑛𝑛+1 = 𝑇𝑇𝑛𝑛 + ℎ𝑇𝑇𝑛𝑛 ’

si integra la funzione

𝑉𝑉 2 4
𝑑𝑑𝑇𝑇 𝑅𝑅0 (1 + 𝛼𝛼(𝑇𝑇 − 𝑇𝑇0 )) − 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 𝑇𝑇
=
𝑑𝑑𝑑𝑑 𝑚𝑚 𝑐𝑐𝑐𝑐

Dove m è la massa del filamento (𝑚𝑚 = 𝑉𝑉𝑉𝑉𝑉𝑉 𝜌𝜌)

Organizzando il calcolo in una tabella otteniamo:

t T R dT/dt
0 300.0 11.1 3.61E+05
0.005 2104.5 101.6 3.10E+04
0.01 2259.4 109.4 2.54E+04
0.015 2386.2 115.7 2.06E+04
0.02 2489.0 120.9 1.65E+04
0.025 2571.3 125.0 1.30E+04
0.03 2636.4 128.3 1.02E+04
0.035 2687.4 130.8 7.90E+03
0.04 2726.9 132.8 6.07E+03
0.045 2757.3 134.3 4.63E+03
0.05 2780.5 135.5 3.51E+03
0.055 2798.0 136.4 2.66E+03
0.06 2811.3 137.0 2.00E+03
0.065 2821.3 137.5 1.50E+03
0.07 2828.8 137.9 1.13E+03
0.075 2834.4 138.2 8.42E+02
0.08 2838.7 138.4 6.30E+02
0.085 2841.8 138.6 4.70E+02
0.09 2844.2 138.7 3.51E+02
0.095 2845.9 138.8 2.62E+02
0.1 2847.2 138.8 1.95E+02

T filamento
3000

2500

2000
T[K]

1500

1000

500

0
0 0.02 0.04 0.06 0.08 0.1
tempo[s]

La temperatura tende asintoticamente a quella calcolata nell’esercizio 2

Esercizio 4

Scrivere una funzione Matlab che ricevuto come input un vettore di interi positivi restituisca un
vettore contenete gli stessi elementi, ma dove l’elemento dal valore più elevato sia stato spostato
in fondo.

Ci sono diversi modi per risolvere il problema… eccone uno:


function v=maxinfondo(v)
n=length(v);
for i=n-1:-1:1
if v(i)>v(n)
change=v(n);
v(n)=v(i);
v(i)=change;
end
end
Calcoli di processo dell’ingegneria chimica:

Appello del 17/01/2020 – TEMA D


Esercizio 1

Risolvere il seguente sistema lineare Ax=b usando il metodo di eliminazione di Gauss lavorando in
virgola mobile (notazione scientifica decimale) con una precisione della mantissa di 2 cifre
significative con e senza pivoting parziale (senza bilanciamento).

0.1 90 0.5
1
A= 1 1 53 b= 1
300 1000 555
1

Confrontare i risultati e motivare le eventuali discrepanze.

Risoluzione senza pivoting parziale

Iterazione 0

W:

1.0e-01 9.0e+01 5.0e-01 1.0e+00

1.0e+00 1.0e+00 5.3e+01 1.0e+00

3.0e+02 1.0e+03 5.6e+02 1.0e+00

Coefficienti:

linea 2: 1.0e+1

linea 3: 3.0e+3

Iterazione 1

W:

1.0e-01 9.0e+01 5.0e-01 1.0e+00


0.0 -9.0e+02 4.8e+01 -9.0e+00

0.0 -2.7e+05 -9.4e+02 -3.0e+03

Coefficienti:

linea 3: 3.0e+2

Iterazione 2

W:

1.0e-01 9.0e+01 5.0e-01 1.0e+00

0.0 -9.0e+02 4.8e+01 -9.0e+00

0.0 0.0 -1.5e+04 -3.0e+02

Soluzione:

0.0

1.1e-02

2.0e-02

Risoluzione con pivoting parziale

Iterazione 0

W:

1.0e-01 9.0e+01 5.0e-01 1.0e+00

1.0e+00 1.0e+00 5.3e+01 1.0e+00

3.0e+02 1.0e+03 5.6e+02 1.0e+00


Effettuo scambio righe

W:

3.0e+02 1.0e+03 5.6e+02 1.0e+00

1.0e-01 9.0e+01 5.0e-01 1.0e+00

1.0e+00 1.0e+00 5.3e+01 1.0e+00

Coefficienti:

linea 2: 3.3e-4

linea 3: 3.3e-3

Iterazione 1

W:

3.0e+02 1.0e+03 5.6e+02 1.0e+00

1.0e-03 9.0e+01 3.2e-01 1.0e+00

1.0e-02 -2.3e+00 5.1e+01 1.0e+00

Coefficienti:

linea 3: -2.6e-2

Iterazione 2

W:

3.0e+02 1.0e+03 5.6e+02 1.0e+00


1.0e-03 9.0e+01 3.2e-01 1.0e+00

1.0e-02 0.0 5.1e+01 1.0e+00

Soluzione:

-7.0e-02

1.1e-02

2.0e-02

Soluzione numerica in doppia precisione:

x=

-7.0577e-02

1.1078e-02

1.9991e-02

Esercizio 2

Nel 1906 William Coolidge sviluppò una tecnica per creare sottili filamenti di tungsteno, invenzione
che trovò applicazione nelle lampadine ad incandescenza. La temperatura del filamento di una
lampadina ad incandescenza può essere stimata eguagliando la potenza termica generata
attraverso il riscaldamento Ohmico (Pin=V2/R) a quella dissipata per irraggiamento
(Pout=σεAfilamentoT4). Sapendo che la resistenza varia con la temperatura secondo una legge lineare
(R=R0*(1+α(T-T0)) con T0=300K e R0=r*L/Sez), utilizzando i seguenti dati di progetto:

Cp
L [m] D [m] ρ [kg/m3] r [Ωm] α [1/K] V [V] σ [W/m2/K4] ε
[j/kg/K]

1 5.0E-5 19000 150 5.60E-8 0.0045 240 5.67E-8 0.44


stimare la temperatura del filamento e confrontarla con quella di fusione del tungsteno (3422 °C)

E’ possibile risolvere il quesito applicando il metodo di Newton:

𝑓𝑓(𝑇𝑇𝑛𝑛 )
𝑇𝑇𝑛𝑛+1 = 𝑇𝑇𝑛𝑛 −
𝑓𝑓′(𝑇𝑇𝑛𝑛 )
per azzerare la funzione:

𝑉𝑉 2
𝑓𝑓(𝑇𝑇) = − 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 𝑇𝑇 4 = 0
𝑅𝑅0 (1 + 𝛼𝛼(𝑇𝑇 − 𝑇𝑇0 ))

Una via è manipolare l’equazione in maniera da ottenere una polinomiale di 5° grado (forse più
semplice):

𝑉𝑉 2
𝑓𝑓(𝑇𝑇) = − (1 − 𝛼𝛼𝑇𝑇0 )𝑇𝑇 4 − 𝛼𝛼𝑇𝑇 5 = 0
𝑅𝑅0 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓

La cui derivata è:

𝑓𝑓′(𝑇𝑇) = −4(1 − 𝛼𝛼𝑇𝑇0 )𝑇𝑇 3 − 5𝛼𝛼𝑇𝑇 4 = 0

In alternativa si può procedere direttamente a derivare la funzione originaria in T. Ai fini


dell’azzeramento entrambe le soluzioni sono equivalenti.

Utilizzando la polinomiale è possibile scrivere la seguente tabella con i valori intermedi della
funzione e della sua derivata:

Iterazione T f(T) df(T) Errore R


0 3000.0 -5.50E+14 -1.78E+12 375.0
1 2691.9 -1.02E+14 -1.15E+12 -308.1 335.5
2 2603.2 -6.57E+12 -1.01E+12 -88.7 324.1
3 2596.7 -3.30E+10 -9.99E+11 -6.5 323.3
4 2596.7 -8.43E+05 -9.98E+11 0.0 323.3
5 2596.7 0.00E+00 -9.98E+11 0.0 323.3

Arrivando in poche iterazioni alla soluzione

Esercizio 3

Utilizzando i dati forniti nell’esercizio precedente, diagrammare l’evoluzione di temperatura del


filamento nel tempo, sapendo che la derivata della temperatura è data da dT/dt=(Pin-Pout)/(m*Cp).

Si consiglia di utilizzare un passo di integrazione di 0.005s.

Il problema richiede l’integrazione di un’equazione differenziale del primo ordine con valore iniziale
T0=300. Utilizzando il metodo di Eulero fwd

𝑇𝑇𝑛𝑛+1 = 𝑇𝑇𝑛𝑛 + ℎ𝑇𝑇𝑛𝑛 ’


si integra la funzione

𝑉𝑉 2 4
𝑑𝑑𝑇𝑇 𝑅𝑅0 (1 + 𝛼𝛼(𝑇𝑇 − 𝑇𝑇0 )) − 𝜎𝜎𝜎𝜎𝐴𝐴𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 𝑇𝑇
=
𝑑𝑑𝑑𝑑 𝑚𝑚 𝑐𝑐𝑐𝑐

Dove m è la massa del filamento (𝑚𝑚 = 𝑉𝑉𝑉𝑉𝑉𝑉 𝜌𝜌)

Organizzando il calcolo in una tabella otteniamo:

t T R dT/dt
0 300.0 28.5 3.61E+05
0.005 2104.5 260.1 2.58E+04
0.01 2233.7 276.7 1.98E+04
0.015 2332.5 289.4 1.48E+04
0.02 2406.7 298.9 1.09E+04
0.025 2461.4 305.9 7.94E+03
0.03 2501.1 311.0 5.69E+03
0.035 2529.6 314.7 4.04E+03
0.04 2549.8 317.3 2.84E+03
0.045 2564.0 319.1 1.99E+03
0.05 2574.0 320.4 1.39E+03
0.055 2580.9 321.3 9.68E+02
0.06 2585.7 321.9 6.72E+02
0.065 2589.1 322.3 4.67E+02
0.07 2591.4 322.6 3.23E+02
0.075 2593.1 322.8 2.24E+02
0.08 2594.2 323.0 1.55E+02
0.085 2595.0 323.1 1.07E+02
0.09 2595.5 323.1 7.42E+01
0.095 2595.9 323.2 5.14E+01
0.1 2596.1 323.2 3.55E+01

T filamento
3000

2500

2000
T[K]

1500

1000

500

0
0 0.02 0.04 0.06 0.08 0.1
tempo[s]
Soluzione consistente con quanto ottenuto nell’esercizio 2.

Esercizio 4

Scrivere una funzione Matlab che ricevuto come input un vettore di interi positivi restituisca un
vettore contenete gli stessi elementi, ma dove l’elemento dal valore più basso sia stato spostato in
fondo.

Ci sono diversi modi per risolvere il problema… eccone uno:


function v=mininfondo(v)
n=length(v);
for i=n-1:-1:1
if v(i)<v(n)
change=v(n);
v(n)=v(i);
v(i)=change;
end
end

Potrebbero piacerti anche