Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Συντονιστές: φιάλη klein, Ryu, markelos, meleneemil, Nasia!
- Dennis Lynn Rader
- Δημοσιεύσεις: 126
- Εγγραφή: Τρί Σεπ 25, 2007 11:13 pm
- Real Name: Mort Nezach Van Uriel
- Gender: Male
- Facebook ID: 0
- Τοποθεσία: Washington D.C.
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Να 'σαι καλά ρε 1/2rizax ! Αυτό ήταν ! Τρέχει ! Many thnx !
" Shema Yisrael Adonai Eloheinu Adonai Echad...Baruch Shem Kavod Malchuso Le'Olam Va'Ed " ~ Deyteronomy 6:4
-
pensivemood
- Δημοσιεύσεις: 13
- Εγγραφή: Κυρ Ιούλ 20, 2008 9:26 pm
- Real Name: Real Name
- Facebook ID: 0
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
μια ερώτηση στο πρώτο θέμα του Ιουλίου:
η χρονική ολοκλήρωση για τη μέθοδο euler των δύο εξισώσεων πια είναι; Εγώ υποθέτω ότι είναι οι εξής:
x(n+1)=x(n) +( 2*x(n)-x(n)*y(n) )*h
και
y(n+1)=y(n)+( 0.25*x(n)*y(n)-0.6*x(n) )*h
όπου h=(Tf-T0)/(steps-1)
είναι σωστό αυτό; Αν μπορεί κάποιος που το έλυσε, ας πει τη λύση
Ευχαριστώ
η χρονική ολοκλήρωση για τη μέθοδο euler των δύο εξισώσεων πια είναι; Εγώ υποθέτω ότι είναι οι εξής:
x(n+1)=x(n) +( 2*x(n)-x(n)*y(n) )*h
και
y(n+1)=y(n)+( 0.25*x(n)*y(n)-0.6*x(n) )*h
όπου h=(Tf-T0)/(steps-1)
είναι σωστό αυτό; Αν μπορεί κάποιος που το έλυσε, ας πει τη λύση
Ευχαριστώ
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Πρόσεξε ότι εδώ δεν υπάρχουν στεπς, αλλά πρέπει να πειραματιστείς κατάλληλα με το δτ. Οπότε δοκίμασε κάτι τέτοιο:
Οι αναδρομικοί τύποι είναι ίδιοι, απλά σου ξέφυγε ένα 0.5 στην 1η εξίσωση.
Κώδικας: Επιλογή όλων
do while (t(i) .lt. tf)
write(1,*) i, t(i), x(i), y(i)
i=i+1
t(i)=t(i-1)+dt
x(i)=x(i-1)+dt*(2.0*x(i-1)-0.5*x(i-1)*y(i-1))
y(i)=y(i-1)+dt*(0.25*x(i-1)*y(i-1)-0.6*y(i-1))
enddo
no es sueño la vida
y al que le duele su dolor le dolerá sin descanso
y el que teme la muerte la llevará sobre los hombros
y al que le duele su dolor le dolerá sin descanso
y el que teme la muerte la llevará sobre los hombros
-
pensivemood
- Δημοσιεύσεις: 13
- Εγγραφή: Κυρ Ιούλ 20, 2008 9:26 pm
- Real Name: Real Name
- Facebook ID: 0
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
ευχαριστώ πολύ 
-
mtsarduckas
- Δημοσιεύσεις: 119
- Εγγραφή: Σάβ Μαρ 08, 2008 9:45 am
- Real Name: Μιχάλης
- Gender: Male
- Facebook ID: 743552839
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Επείγουσα ερώτηση: Μπορώ να βρώ κάπου online τις σημειώσεις του σιέττου;; Thanks!
Draco Dormiens Nunquam Tittilandus
-
pensivemood
- Δημοσιεύσεις: 13
- Εγγραφή: Κυρ Ιούλ 20, 2008 9:26 pm
- Real Name: Real Name
- Facebook ID: 0
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Υπάρχουν στα Έγγραφα στο mycourses οι διαφάνειες από τα μαθήματά του, όχι όμως και το βιβλίο (όπως του Αναγνωστόπουλου)
-
mtsarduckas
- Δημοσιεύσεις: 119
- Εγγραφή: Σάβ Μαρ 08, 2008 9:45 am
- Real Name: Μιχάλης
- Gender: Male
- Facebook ID: 743552839
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Δυστυχώς δεν έχω το βιβλίο του.. Thanks anyway φίλε μου...
Draco Dormiens Nunquam Tittilandus
-
mtsarduckas
- Δημοσιεύσεις: 119
- Εγγραφή: Σάβ Μαρ 08, 2008 9:45 am
- Real Name: Μιχάλης
- Gender: Male
- Facebook ID: 743552839
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Και μία γρήγορη ερώτηση: Πως κάνουμε export σε αρχείο εικόνας τις γραφ. παραστάσεις του GNUPLOT; Ευχαριστώ@
Draco Dormiens Nunquam Tittilandus
- aeriko
- Δημοσιεύσεις: 352
- Εγγραφή: Παρ Ιούλ 24, 2009 1:28 pm
- Real Name: ...
- Gender: Female
- Facebook ID: 0
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Μήπως έχει κάποιος εύκαιρη τη λύση του 5ου ενδεικτικού θέματος...??
- Alekos
- Δημοσιεύσεις: 171
- Εγγραφή: Κυρ Μαρ 02, 2008 2:18 pm
- Real Name: Alekos
- Gender: Male
- Facebook ID: 0
- Τοποθεσία: Los Alimos
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Για το 5ο θέμα χρησιμοποιείς το αρχείο population.f (δυστυχώς εγώ δεν το έχω λυμένο να σε βοηθήσω περισσότερο)
Τις γραφικές τις κάνεις export με τις εξής εντολές (υπάρχουν κ στην αρχή των ενδεικτικών θεμάτων):
gnuplot> plot x, x*2
gnuplot> set terminal postscript color
gnuplot> set output "....όνομα....."
gnuplot> replot
gnuplot> set output
gnuplot> set term wxt
Τις γραφικές τις κάνεις export με τις εξής εντολές (υπάρχουν κ στην αρχή των ενδεικτικών θεμάτων):
gnuplot> plot x, x*2
gnuplot> set terminal postscript color
gnuplot> set output "....όνομα....."
gnuplot> replot
gnuplot> set output
gnuplot> set term wxt
-
zoe
- Δημοσιεύσεις: 34
- Εγγραφή: Τετ Οκτ 24, 2007 2:02 pm
- Real Name: Zwi
- Gender: Female
- Facebook ID: 517606286
- Τοποθεσία: everywhere
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Καλημέρα!Ξέρει κάποιος πως λύνεται το θέμα 2 του Ιουλίου το δεύτερο ερώτημα?Αυτο με το σχετικό σφάλμα?
- NickNafplio
- Δημοσιεύσεις: 703
- Εγγραφή: Τρί Ιούλ 01, 2008 5:50 pm
- Real Name: Νικος (mod(p^n)) ...
- Gender: Male
- Facebook ID: 0
- Τοποθεσία: Oxford, United Kingdom
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Εχει λυσει κανενας το ενδεικτικο θεμα 3? Προκειπτει και σε κανεναν αλλον οτι το σωματιδιο μετα τη πρωτη συγκρουση του με την ευθεια 1-χ αρχιζει να κινειται κατα μηκος της ευθειας? Μου φαινεται λαθος αυτο, αλλα δεν καταλαβαινω γιατι βγαινει ετσι, αφου εχω φτιαξει σωστα το προγραμμα και σε καθε συγκρουση η ταχυτητα αλλαζει συμφωνα με τους τυπους που δινονται...
Ο νεοφιλελές της διπλανής πόρτας
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
@nicknafplio βρήκα τον κώδικα στα αρχεία που έχει ανεβάσει ο αναγνωστόπουλος, πιστεύω να σε βοηθήσει!
Κώδικας: Επιλογή όλων
C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C File triangle.f
C Motion of a free particle in triangle (x=0,y=0,x+y=1)
C Use integration with time step dt: x = x + vx*dt y=y+vy*dt
C ------------------------------------------------------------
program triangle2D
implicit none
C ------------------------------------------------------------
C Declaration of variables
real*8 x0,y0,v0x,v0y,t0,tf,dt,t,x,y,vx,vy,vx_old
integer i,nx,ny,nt
C ------------------------------------------------------------
C Ask user for input:
print *,'# Enter x0,y0,v0x,v0y:'
read(5,*)x0,y0,v0x,v0y
print *,'# x0= ',x0,' y0= ',y0,' v0x= ',v0x,' v0y= ',v0y
if(x0 .lt. 0.0) stop 'illegal value of x0<0'
if(y0 .lt. 0.0) stop 'illegal value of y0<0'
if(y0 .gt. (-x0+1.0D0))
$ stop 'illegal value (x0,y0): outside triangle'
if(v0x**2+v0y**2.eq. 0.0 ) stop 'illegal value of v0 = 0.'
print *,'# Enter t0,tf,dt:'
read(5,*)t0,tf,dt
print *,'# t0= ',t0,' tf= ',tf,' dt= ',dt
C ------------------------------------------------------------
C Initialize
i = 0
nx = 0
ny = 0
nt = 0
t = t0
x = x0
y = y0
vx = v0x
vy = v0y
open(unit=11,file='triangle.dat')
C ------------------------------------------------------------
C Compute:
do while(t .le. tf)
write(11,*)t,x,y,vx,vy
i = i + 1
t = t0 + i *dt
x = x + vx*dt
y = y + vy*dt
if(x .le. 0.0D0) then
vx = -vx
nx = nx + 1
endif
if(y .le. 0.0D0) then
vy = -vy
ny = ny + 1
endif
if(y .ge. (-x+1.0D0))then
vx_old = vx
vx = -vy
vy = -vx_old
nt = nt + 1
endif
enddo
close(11)
print *,'# Number of collisions:'
print *,'# nx= ',nx,' ny= ',ny,' nt= ',nt
end
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Νικ, έτσι από περιέργεια μπορείς να παρεθέσεις τον κώδικά σου; Μήπως, πχ, για τη σύγκρουση με τη διαγώνιο έγραψες
vx = -vy
vy = -vx
το οποίο δεν είναι σωστό γιατί αναθέτει στη vx την τιμή -vy και αφήνει την vy ως έχει;
Την εναλλαγή την κάνεις βάζοντας καινούρια μεταβλητή ή με κάποιο κολπάκι του στυλ:
vx=vx+vy
vy=vx-vy
vx=vx-vy
vx=-vx
vy=-vy
vx = -vy
vy = -vx
το οποίο δεν είναι σωστό γιατί αναθέτει στη vx την τιμή -vy και αφήνει την vy ως έχει;
Την εναλλαγή την κάνεις βάζοντας καινούρια μεταβλητή ή με κάποιο κολπάκι του στυλ:
vx=vx+vy
vy=vx-vy
vx=vx-vy
vx=-vx
vy=-vy
no es sueño la vida
y al que le duele su dolor le dolerá sin descanso
y el que teme la muerte la llevará sobre los hombros
y al que le duele su dolor le dolerá sin descanso
y el que teme la muerte la llevará sobre los hombros
- NickNafplio
- Δημοσιεύσεις: 703
- Εγγραφή: Τρί Ιούλ 01, 2008 5:50 pm
- Real Name: Νικος (mod(p^n)) ...
- Gender: Male
- Facebook ID: 0
- Τοποθεσία: Oxford, United Kingdom
Re: Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού
Ακριβως!!! Το εφτιαξα πολυ βιαστηκα και δεν το προσεξα, και η εκχωρηση με τη βοηθεια βοηθητικης μεταβλητης ειναι και ενα απο τα στοιχειωδη τεχνασματα του προγραμματισμου1/2rizax έγραψε:Νικ, έτσι από περιέργεια μπορείς να παρεθέσεις τον κώδικά σου; Μήπως, πχ, για τη σύγκρουση με τη διαγώνιο έγραψες
vx = -vy
vy = -vx
το οποίο δεν είναι σωστό γιατί αναθέτει στη vx την τιμή -vy και αφήνει την vy ως έχει;
Την εναλλαγή την κάνεις βάζοντας καινούρια μεταβλητή ή με κάποιο κολπάκι του στυλ:
vx=vx+vy
vy=vx-vy
vx=vx-vy
vx=-vx
vy=-vy
Edit: οκ το διορθωσα, και τωρα το γραφημα μοιαζει φυσιολογικο
Ευχαριστω οσους ηταν προθημοι να βοηθησουν
Ο νεοφιλελές της διπλανής πόρτας