txc Δημοσ. 30 Νοεμβρίου 2007 Δημοσ. 30 Νοεμβρίου 2007 καλησπέρα παιδιά...άρχισα να ασχολούμαι με το matlab , γενικά γνωρίζω c++ θέλω να φτιάξω κάποια προγραμματάκια για εμένα για τεστάρισμα πιο πολύ, ουσιαστικά ξεκίνησα με την επίλυση κάποιων παραστάσεων, δηλαδή υπολογισμούς (αθροίσματα, διαιρέσεις κλπ ) έπειτα θέλω να δω και τις γραφικές παραστάσεις των αποτελεσμάτων αυτών, δηλαδή να βάζω διάφορα νούμερα και να βλέπω τις αλλαγές επειδή δεν ξέρω καθόλου το matlab σαν πρόγραμμα μπορεί κάποιος να με βοηθήσει να ξεκινήσω , που ξεκινάω να γράφω τον κώδικα , πως το τρέχω για να πάρω αποτελέσματα και να δω έπειτα τις γραφικές παραστάσεις ευχαριστώ πολύ
myle Δημοσ. 30 Νοεμβρίου 2007 Δημοσ. 30 Νοεμβρίου 2007 1) κώδικα γράφεις στα λεγόμενα m files. Για να δημιουργήσεις καινούργιο πήγαινε στο μενού File. Για παραδείγματα είτε μπορείς να δεις στον δίσκο σου κάποια έτοιμα, είτε στην σελίδα της Mathworks που έχει σχεδόν τα άπειρα. 2) Για να τον τρέξεις τον κώδικα απλώς χρησιμοποιείς το όνομα του m file με το οποίο το αποθήκευσες, εφόσον βέβαια είναι στο directory που το αποθήκευσες (φαίνεται σε ένα παραθυράκι που συνήθως είναι στα αριστερά της οθόνης σου by default) 3) για γραφικές πρέπει να βάλεις στον κώδικα σου κάποια από τις συναρτήσεις plot, semilogy κτλ. Γενικά πάτα help όνομα_συνάρτησης για επιπλέον βοήθεια. Τέλος, αν απλά θέλεις αθροίσματα, διαιρέσεις κτλ καλύτερα να χρησιμοποιήσεις το Mathematica, η Matlab είναι κυρίως για πράξεις γραμμικής άλγεβρας, τουλάχιστον από εκεί ξεκίνησε.
txc Δημοσ. 30 Νοεμβρίου 2007 Μέλος Δημοσ. 30 Νοεμβρίου 2007 ευχαριστώ για την απάντηση, τώρα θέλω να βοηθήσω ένα φίλο στο μάθημά του "μηχανική" ( αυτός ήταν και ο λόγος που ξεκίνησα το matlab) έκανα διάφορες πράξεις και όλα δούλευαν οκ. το θέμα είναι ότι έχω ένα πρόβλημα που θέλω να λύσω , αλλά δεν ξέρω πως να απεικονίσω κάποιες σταθερές στο πρόγραμμα : π.χ. Tmax=t/c1ab2 A=b=0.040m A/b=1.00 C1=0.208 Tmax=Tall=40Mpa Tmax=t1/ c1ab2 40Mpa=t1/0.208(0.040m)3 t1=532N.m πως θα μου έβγαζε κάποιο αποτέλεσμα για το κάθε N και m που θα το έδινα? ευχαριστώ
ata1983 Δημοσ. 1 Δεκεμβρίου 2007 Δημοσ. 1 Δεκεμβρίου 2007 Δεν ξέρω να σε βοηθήσω ακριβώς αλλά δυό πράγματα θα πώ μήπως και φανούν χρήσιμα. Γενικά για μια γραφική παράσταση βάζεις x=[..] όλα τα σημεία με χ y=[..] όλα τα y των σημείων σου και με plot(x,y); παίρνεις τη γραφική παράσταση. Τώρα για το συγκεκριμένο πρόβλημα που δίνεις μιας και ξέρεις C ένα tip μόνο μήπως και δουλέψει χρησιμοποίησε for με i μετρητή κανονικά για πράξεις και μετά άλλη for και μετρητή για να αποθηκεύεις τα αποτελέσματα. Τρέχεις το πρόγραμμα από το mfile και μετά όταν πατάς το όνομα μιας μεταβλητής σου βγάζει την τιμή της.
Crizzt Δημοσ. 2 Δεκεμβρίου 2007 Δημοσ. 2 Δεκεμβρίου 2007 Αν καταλαβα καλα θελεις να δινεις καποιες μεταβλητες στο προγραμμα και να περνεις την αναλογη απαντηση? Αν ναι τοτε το .m file πρεπει να ειναι καπως ετσι: > function FUNCTION_NAME = FILENAME(INPUT1, INPUT2, ...) ... FUNCTION_NAME = INPUT1 * INPUT2; plot(FUNCTION_NAME); ... end ελπιζω να βοηθησα
txc Δημοσ. 7 Δεκεμβρίου 2007 Μέλος Δημοσ. 7 Δεκεμβρίου 2007 x=[200] c=[300] plot(x,c) γράφοντας αυτό δεν μου βγάζει τίποτα, απλά βγαίνουν τα σημεία στη γραφική παράσταση με τους άξονες αλλά δεν σχηματίζεται τίποτα
Draculina Δημοσ. 7 Δεκεμβρίου 2007 Δημοσ. 7 Δεκεμβρίου 2007 Φίλε μου υπάρχουν πολλοί τρόποι να κάνεις αυτο που θέλεις!! Το παραπάνω που έδωσες είναι σημείο,και αυτό σου βγάζει το πρόγραμμα... Αν όμως του έδινες χ = [100 250] υ = [200 300] plot (x, u) Θα έπαιρνες μια ευθεία, αυτήν που ορίζουν τα σημεία (100,200) και (250,300) Επομένως ένας εύκολος τρόπος είναι να δώσεις 2 πίνακες με τιμές. Αν θέλεις να απεικονίσεις μία συνάρτηση υ=F(x) με 0<χ<10 και βήμα 1 πχ μπορείς να δώσεις χ = 0:1:10 c = 15.3 d = 8 (μπορείς έτσι να δώσεις τις σταθερές σου) y = c^2*d*(x-1) (εστω αυτή η σχέση που θέλεις να απεικονίσεις) plot (x,y,'-') (αν θέλεις να στα ενώσει με γραμμές) plot (x,y,'o') (για να δεις μόνο τα σημεία) 'Ενας τρίτος τρόπος είναι να ορίσεις function όπως είπε ο φίλος παραπάνω Ξεκινάς ένα m file ως εξής function y = test(x) d=5 y = 3*x+d υπόψην το m file πρέπει να λέγεται test, όπως η συνάρτηση.. Αφού την ορίσεις στην command line μπορείς να δώσεις fplot (@test,[0,10],11) όπου [0,10] το διαστημα τιμών χ και 11ο αριθμός των σημείων που θα πάρεις! Ελπίζω να γίνει η δουλειά σου!
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.