Pagina 1 di 2

Piccolo programma con Matlab

Inviato: 5 lug 2013, 13:41
da besth05
Ciao ragazzi! O_/

Sono nuovo nel forum e questa è la prima volta che vi scrivo. :-)

Sono alle prese con la realizzazzione di un piccolo programma con Matlab/Scilab.
Il programma che devo realizzare è quello realtivo al seguente esercizio:

programma.PNG
programma.PNG (63.77 KiB) Visto 4459 volte


Potete per favore farmelo e mandarmi la soluzione. Ho molti problemi nell'uso di matlab/scilab e non so proprio dove mettere mano! :(

Vi ringrazio in anticipo per l'aiuto :)

Re: Piccolo programma con Matlab

Inviato: 5 lug 2013, 14:08
da mrc
Ciao Foto Utentebesth05, benvenuto!

besth05 ha scritto:....Potete per favore farmelo e mandarmi la soluzione...

Per rendere più costruttivo e utile un esercizio, dovrebbe essere risolto in collaborazione tra chi lo propone e chi conosce la strada per poterlo risolvere.

Alla luce di quanto ti ho detto, ti consiglio di cominciare ad impostare quella che secondo te può essere la strada per arrivare alla soluzione dell' esercizio ed indicare i punti in cui trovi difficoltà a proseguire.

Inoltre, in questo modo faciliti chi ti vorrà dare una mano, rendendogli nota la tua preparazione.

Se, per intraprendere la strada che ti ho indicato, devi scrivere delle formule, usa LATEX.

Re: Piccolo programma con Matlab

Inviato: 5 lug 2013, 14:37
da xyz
besth05 ha scritto:non so proprio dove mettere mano!

Di solito si inizia a leggere i manuali (RTFM).

Re: Piccolo programma con Matlab

Inviato: 5 lug 2013, 18:40
da besth05
Ciao ragazzi grazie mille per le vostre risposte! :)

Lo so è molto brutto chiedervi di mandarmi la soluzione senza cercare di fare qualcosa di costruttivo, me ne vergogno anche. :(

Vi racconto: sto facendo l'esame di Calcolo Numerico. Ho già superato la prima prova scritta dove la prof metteva un voto da 0 a 26. I restati 4 punti e quindi anche la verbalizazzione dell'esame stesso possono essere presi e fatti solamente una volta completata la parte di programmazione. Ho già preso 26 nello scritto e adesso mi ritrovavo a fare la parte di programmazione dove però ho una preparazione inesistente non avendo potuto seguire le relative lezioni di programmazione. Nelle ultime 2 settimane del corso la prof ha appunto sovlto tali lezioni che però non ho potuto frequentare poiché mi sono dovuto operare per un calcolo al rene, operazione necessaria perché neanche la tecnica del bombardamento mi ha permesso di risolvere i problema.

Mi scuso ancora se prima sono stato così "sbrigrativo". Il mio esame dipende da questo maledetto programma e per questo che spero nella vostra comprensione.

Se qualcuno può darmi una mano ve ne sarò molto grato :) grazie ancora

Re: Piccolo programma con Matlab

Inviato: 5 lug 2013, 19:04
da dimaios
Spero che quello che dici sia vero .... non si scherza sulle malattie.

Grazie a questa presunzione di innocenza ti fornisco alcune indicazioni.

Se segui questo link ....

http://mathworld.wolfram.com/Newton-CotesFormulas.html

Vedrai che le formule altro non sono che le classiche formule di Newton - Cotes per cui i coefficienti sono quelli che trovi in letteratura. Una verifica era comunque d'obbligo per non avere sorprese a posteriori.

Per quanto riguarda il codice Matlab basta guardare la relativa documentazione che trovi qui :

http://www.mathworks.it/it/help/matlab/ref/quad.html

Quindi per fare le tue prove il codice per una funzione del tipo :

y(x) = \int_{0}^{2} \frac{1}{x^3 -2x - 5}

Ti scrivi una funzione e la salvi con lo stesso nome che hai dato all'interno del codice ( in questo caso myfun.m )

Codice: Seleziona tutto

function y = myfun(x)
y = 1./(x.^3-2*x-5);


Poi da workspace digiti il comando istantaneo

Codice: Seleziona tutto

Q = quad(@myfun,0,2)


E se tutto funziona bene la risposta dovrebbe essere il valore dell'integrale.

Codice: Seleziona tutto

Q =

   -0.4605


Questo deve essere confrontato con il valore ottenuto tramite un metodo di integrazione che implementi tu.
Se per esempio utilizzi la formula di Cavalieri - Simpson ( nel tuo caso n=2 e c=\frac{1}{3} ) i coefficienti sono 1 4 1 per cui :

\frac{h}{3} (f_0 + 4 f_1 + f_2)

Devi quindi scrivere un semplice programmino che ti calcola la funzione in 3 punti ed esegue il calcolo impiegando anche lo step di integrazione h.

Re: Piccolo programma con Matlab

Inviato: 5 lug 2013, 19:19
da besth05
Grazie mille di maios! Adesso provo a seguire quello che mi hai appena scritto! anche se con la preparazione che ho sarà dura.. :/
Quello che dico è vero purtroppo, adesso è passato tutto e tutto è andato per il meglio perfortuna! :)

Grazie mille ancora! :)

Re: Piccolo programma con Matlab

Inviato: 5 lug 2013, 19:42
da angus
Con tutto il rispetto per le tue condizioni di salute (ti auguro di recuperare al 100% quanto prima):
1. Se hai preso il massimo nello scritto, "qualcosa" lo saprai no? Intendo almeno dove iniziare...
2. Farti svolgere un esercizio da qualcun altro non credo aumenti la tua possibilità di passare l'esame...
3. Ok, hai perso 2 settimane... ma mica eri in coma, no? ;-) E prima?
4. Gli imprevisti possono capitare sempre e comunque, rimboccati le maniche e inizia a leggere il manuale
5. Sono sicuro che qui troverai persone competenti per darti una mano a recuperare il "tempo perso" :ok:

Un cinico saluto ;-)

Re: Piccolo programma con Matlab

Inviato: 5 lug 2013, 21:26
da besth05
ciao angus :)

hai ragione, se uno ha preso il massimo allo scritto dovrà pur sapere mettere mano sul programma...ma il fatto è che la parte scritta consisteva in esercizi su metodo jacobi, gauss.seidel, formula trapezi composita, metodo di newton ecc... E questa era proprio staccata dalla parte di programmazione, era pura matematica diciamo. Quindi anche senza aver seguito la parte di programmazione si poteva fare. Essendo un esame da 6 crediti non volevo perderci molto tempo su dato che sto preparando uno scritto da 12 crediti e dopodomani anche l orale di un altro esame da 12 :/

Vedrò cosa posso fare
grazie del vostro aiuto! :)

Re: Piccolo programma con Matlab

Inviato: 6 lug 2013, 18:21
da dimaios
besth05 ha scritto:Essendo un esame da 6 crediti non volevo perderci molto tempo su dato che sto preparando uno scritto da 12 crediti e dopodomani anche l orale di un altro esame da 12


Non voglio polemizzare su questa frase anche se mi rattrista non poco. L'importanza dell'esame non è riferita ai crediti. Sappi che Calcolo Numerico lo trovi ovunque nell'ingegneria moderna per cui non sottovaluterei affatto i benefici di studiarlo come si deve.
Anche in altri esami dovrai impiegare Matlab( o software di simulazione equivalenti ) per cui lo reputo un'investimento utile e fruttuoso.

Re: Piccolo programma con Matlab

Inviato: 6 lug 2013, 20:16
da besth05
Assolutamente si, non ne dubito! Matlab è importante per qualsiasi materia ingegneristica. È per questo che mi sono impegnato a studiarla bene calcolo numerico per superare almeno la parte scritta. Non ho un approccio così sufficiente alla studio come sembra dalla richiesta che vi ho fatto. La mia sufficienza in questo caso è dovuto al fatto che sono state fatte 2 settimane di lezione di programmazione con un totale di 5 lezioni totali. Credo che cn 5 lezioni nn impari matlab, anzi, ed è per questo che non voglio "perdere tempo" per questo programma e preferisco concentrarmi per scienza delle costruzioni che mi impegna molte ore della giornata. :/