Matlab - διαφορικές

Γενικές Συνελεύσεις και Ανακοινώσεις της Γραμματείας
Forum rules
Σας υπενθυμίζουμε να μην δημοσιεύετε μηνύματα σε greeklish ή συνεχή ΚΕΦΑΛΑΙΑ! Τέτοια μηνύματα θα διαγράφονται.
Post Reply
benediktos
MechEng Seeder
MechEng Seeder
Posts: 89
Joined: Thu May 27, 2010 8:34 pm
Gender: Male

Matlab - διαφορικές

Post by benediktos »

Ρε παιδιά, αν ξέρει κανείς...
Ποιες ακριβώς εντολές γράφουμε στο Matlab για να λύσουμε διαφορικές εξισώσεις;
Έστω ότι έχουμε τη δ.ε. y' = y^2 * cos(x)
Πώς τη λύνουμε με το matlab;
Ας γράψει αναλυτικά τις εντολές όποιος ξέρει.
Ευχαριστώ.
User avatar
Spyrοs
Praetorian
Praetorian
Posts: 2274
Joined: Wed Feb 24, 2010 11:17 am
Gender: Male
Location: Ithaca, New York, USA
Contact:

Re: Matlab - διαφορικές

Post by Spyrοs »

benediktos wrote:Ρε παιδιά, αν ξέρει κανείς...
Ποιες ακριβώς εντολές γράφουμε στο Matlab για να λύσουμε διαφορικές εξισώσεις;
Έστω ότι έχουμε τη δ.ε. y' = y^2 * cos(x)
Πώς τη λύνουμε με το matlab;
Ας γράψει αναλυτικά τις εντολές όποιος ξέρει.
Ευχαριστώ.
Δε νομίζω να χρησιμοποιούν πολλοί αυτή τη δυνατότητα οπότε δοκίμασε στο "Help" με διάφορες λέξεις κλειδιά!
Αν σου χρειάζεται συχνά να λύνεις αναλυτικά διαφορικές θα πρότεινα το Mathematica. Ούτε αυτό ξέρω πώς το κάνει αλλά θεωρείται top σε τέτοια ζητήματα :idea:

btw η παραπάνω δ.ε. είναι μη-γραμμική τύπου Riccati με λύση: y(x) = 1/(-c -sinx)
Image
Προετοιμασία για Μεταπτυχιακές Σπουδές
GRE - GMAT - TOEFL- IELTS
Κατεχάκη 17, Αθήνα - 210.6910882
website: https://globalprep.gr/
Facebook: https://www.facebook.com/globalprep
e-mail: info@globalprep.gr
benediktos
MechEng Seeder
MechEng Seeder
Posts: 89
Joined: Thu May 27, 2010 8:34 pm
Gender: Male

Re: Matlab - διαφορικές

Post by benediktos »

Spyrοs wrote:btw η παραπάνω δ.ε. είναι μη-γραμμική τύπου Riccati με λύση: y(x) = 1/(-c -sinx)
χωριζομένων μεταβλητών είναι και λύνεται με απλή ολοκλήρωση και βγάζει το αποτέλεσμα που μου είπες κι εσύ. παράδειγμα ήταν.. απλά για να έχουμε μια κοινή δ.ε. με όποιον πρόκειται να μου πει τι εντολές γράφουμε στο Matlab για την επίλυσή της..
θα κοιτάξω πάντως και το mathematica!
User avatar
nas
MechEng Seeder
MechEng Seeder
Posts: 187
Joined: Sat Jan 30, 2010 1:13 pm

Re: Matlab - διαφορικές

Post by nas »

μπορείς ακόμα να βάζεις το πρόβλημα σου στο google και στο τέλος να γράφεις matlab. θα σε βγάζει στην κεντρική του mtalab που έχει στην ουσία όλο το help και επιπλέον απαντήσεις από μέλη.
User avatar
tpm
MechEng Seeder
MechEng Seeder
Posts: 30
Joined: Mon Jan 25, 2010 7:24 pm
Σχολή: Μηχανολόγος

Re: Matlab - διαφορικές

Post by tpm »

Μια συναρτηση της matlab που χρησιμοποιει το Symbolic Math Toolbox (δηλαδη μπορεις να δωσεις τα arguments συμβολικα οπως ακριβως η διαφορικη που εγραψες παραπανω) ειναι η dsolve. Αν πατησεις στην matlab help dsolve θα σου δωσει λεπτομερεις και παραδειγματα.

Επισης αν θελεις διαβασε και αυτο:
Attachments
odes.pdf
(543.43 KiB) Downloaded 829 times
britties
Naval Seeder
Naval Seeder
Posts: 109
Joined: Sun May 02, 2010 8:24 pm
Gender: Male

Re: Matlab - διαφορικές

Post by britties »

benediktos
MechEng Seeder
MechEng Seeder
Posts: 89
Joined: Thu May 27, 2010 8:34 pm
Gender: Male

Re: Matlab - διαφορικές

Post by benediktos »

@britties, tpm: δε μπόρεσα να καταφέρω κάτι... δεν έχω ιδέα από Matlab. Έγραψα όμως τη συνάρτηση-εντολή dsolve με τα ορίσματά της και δεν έβγαλα κάτι... Βγήκε σφάλμα δηλαδή.. Νομίζω ότι στη Matlab πρέπει να ορίζουμε κάποια πράγματα πριν προχωρήσουμε στην εντολή..

@Spyros: φοβερό πρόγραμμα το Mathematica! Λύνει κανονικά τις δ.ε. με συμβολικό τρόπο! Ευχαριστώ πολύ!
User avatar
voulgarisk
MechEng Seeder
MechEng Seeder
Posts: 358
Joined: Sun Jun 13, 2010 4:36 pm

Re: Matlab - διαφορικές

Post by voulgarisk »

επισης για αυτους που βαριουνται να κατεβασουν το προγραμμα υπαρχει και το αντιστοιχο site απο αυτον που εφτιαξε το mathematica το οποιο ειναι το http://www.wolframalpha.com/ ...ουσιαστικα το ιδιο πραγμα αλλα διαδικτυακα
Fuck this world,i'll make my own
User avatar
tpm
MechEng Seeder
MechEng Seeder
Posts: 30
Joined: Mon Jan 25, 2010 7:24 pm
Σχολή: Μηχανολόγος

Re: Matlab - διαφορικές

Post by tpm »

Παντως τωρα που ετρεξα μονο αυτη την εντολη

Code: Select all

dsolve('Dy=y^2*cos(t)')
Μου εβγαλε

Code: Select all

ans =
 
                 0
 -1/(C18 + sin(t))
Αν σου εβγαλε warning οτι η εξισωση δεν εχει explicit λυση σημαινει πως δεν μπορει να λυθει αναλυτικα αλλα μονο αριθμητικα οποτε η συναρτηση που χρειαζεσαι ειναι η ode45. Αν τωρα σου εβγαλε error τοτε κατι δεν εγραψες σωστα.

Παντως γενικα ειναι καλυτερο να χρησιμοποιεις οποιο προγραμμα σε βολεψει καλυτερα... Απλα νομιζω πως η matlab ειναι πιο ολοκληρωμενη...
Post Reply

Return to “Γενικές Συζητήσεις & Νέα Σχολής Μηχανολόγων”