Soru sorFor döngüsü içinde iki değişkeni değiştirmek
emperor23 tarafından 7 yıl önce soruldu

Merhaba

resimdeki u(x,t) formülde değişen x değerleri için n=0:40 (x=0:5:20) olacak şekilde sinüs dalgalarının toplamını çizdirmem gerekiyor

ben şöyle bir kod yazdım ama Formülde Hem x ler hem de n ler aynı anda değiştiği için iç içe for döngüsünü kuramadım.yardım edebilecek var mı?

L = 1; x_s = 8; tau = 0.2; v = 1;
n= 0:40
t=0.1
x=0:5:20
w_n= ((n*pi*v)/L)
F=exp(-(((w_n.*tau).^2)./4))
toplam=0

for n=0:40
 
 u=(sin(n.*pi.*x_s./L)).*(F).*(sin(n.*pi.*x./L)).*(cos(w_n.*t))
 
 toplam=toplam+u
 
end 
plot(x,toplam)

 

1 Cevap
sayginer Yönetici tarafından 7 yıl önce cevaplandı

Öncelikle, lütfen sormaya çalıştığınız soruyu açık ve net şekilde, özen göstererek yazınız. Düzensiz şekilde verilen bir kodu önce anlamak sonra da ayıklamak oldukça zordur.
Bu çerçevede yukarıdaki sorunuzu daha anlaşılabilecek bir şekilde düzenledim. Ancak yine de kodunuz çalışmıyor.
Sorduğunuz soruya gelecek olursak,
Elinizde iki adet aynı uzunlukta vektörler var ve sırası ile bunları bir for döngüsü içerisinde bir işleme sokmak istiyorsunuz.
Şöyle bir yol izleyebilirsiniz: for döngüsündeki her bir döngü, bizim vektörlerimizin kaçıncı elementine karşılık geleceğini atayabiliriz.
Mesela aşağıda, verilen bir A ve B vektörünün B/A toplamlarının sonucunu veren örnek kodu inceleyebilirsiniz.

 clc; close all; clear all;
A = 1:5;
B = 5:10;
 TOPLAM = 0;
 for i=1:length(A)

C = B(i)/A(i);

TOPLAM = C+TOPLAM;

end
 TOPLAM