Alma Mater Studiorum – Università di Bologna
Scuola di ingegneria e architettura
Sede di Bologna
Corso di laurea magistrale in ingegneria civile
Relazione Parte 2
Metodi Numerici per l’Ingegneria Civile M
Professoressa: Porcelli Margherita
Studenti:
- Giovanni Donini – Matricola: 896077
- Francesco Diana – Matricola: 952362
- Mattia Ferrari – Matricola: 919506
Premessa al problema
Viene proposto il seguente problema differenziale con valori al contorno:
′′ ()() + = 0, (0) = (1) = 0, ∈ con [0,1].
Per risolvere questo problema numericamente si utilizza il metodo delle differenze finite procedendo a una discretizzazione del dominio [0,1] mediante n+1 sottointervalli con la stessa ampiezza, cioè ponendo 1 ) = ℎ, = 0, … , + 1 ℎ = . ≈ ( = 1, … , con Si cerca una soluzione approssimata per (+1) = = 0.
Imponendo le condizioni al contorno 0 +1 Considerando i punti di discretizzazione si calcola la funzione incognita risolvendo il sistema non linearen n() = 0 : R → Rdove ha componenti:
- 1 () ( ) = − 2 + + , = 1, … , . −1 +12ℎ
Per la risoluzione del problema oggetto di studio si è utilizzato il metodo di Newton considerando come approssimazione iniziale il vettore:
0 (1 ), (1 )) = ( − … , − 1 1 = 0, 10, 20, 50.
Dove è un parametro che di volta in volta può assumere i seguenti valori:
Descrizione dello script metodo di Newton
Il vettore di approssimazione iniziale è stato impostato nello script denominato “Metodo_newton” nel seguente modo:
Come per il resto dello script, tutto il problema è stato impostato mantenendo la dimensione N generica; tuttavia i calcoli di seguito mostrati sono stati ottenuti imponendo un N = 24.
Per quanto concerne l’impostazione dei criteri di arresto utili per fermare l’esecuzione dello script in caso di loop o in caso la funzione non converga, si è scelta come tolleranza sulla funzione il valore di −610, mentre come numero massimo di iterazioni si è scelto il valore di 20 in quanto è stato osservato che per N = 24 tale valore permette la convergenza del metodo ove questa sia possibile.
Sono state definite il vettore F(u) del sistema non lineare oggetto di studio e la matrice Jacobiana J(u). Esse sono state definite nella maniera seguente tramite due function, chiamate rispettivamente “F” e “J_F”, che verranno richiamate nello script principale:
Per la risoluzione del problema mediante il metodo di Newton si è fatto ricorso in Matlab ad un algoritmo il quale prende in input il vettore F e la matrice J sopra definiti, il vettore di approssimazione iniziale e la tolleranza sul criterio di arresto. In output tale algoritmo fornisce l’approssimazione della soluzione.
-
Relazione parte 1 Metodi Numerici
-
Relazione esercizio 2 Esame: Metodi Numerici
-
Relazione parte 3 Metodi Numerici
-
Metodi Numerici per l'Ingegneria - Relazione