Octave

2016-04-03 14 views
0

kullanılarak monte edilmiş karlo simülasyonda ortalama çözümleri Oktavrada bir Monte Carlo simülasyonu kullanarak verilen bir dizi sınır koşuluyla Laplacian çözümünü bulmak için bir kod yazıyorum. Tek bir çözüm bulmak için ilk kodu yazdım, ancak bunun birkaç kez çalıştırılması ve ardından güzel ve düzgün bir çözüm elde etmek için ortalaması alınması gerekiyor. Bu konuda yardıma ihtiyacım var, çünkü nasıl gideceğimi bilmiyorum. Ben yazdım kodudur:Octave

a=20; 
s=1 

for (m=s:s:a-s); 
for (n=s:s:a-s); 

x=m; 
y=n; 

for (i=1:5000) 
R=randi(4); 
if (R==1) 
    xnew=x+s; 
    ynew=y; 
elseif (R==2) 
    xnew=x-s; 
    ynew=y; 
elseif (R==3) 
    xnew=x; 
    ynew=y+s; 
elseif (R==4) 
    xnew=x; 
    ynew=y-s; 
endif 

%hold on; 
%figure(1); 
%plot([x xnew],[y ynew]) 

x=xnew; 
y=ynew; 

if (x==0); 
    u(n,m)=sin(pi*y/a); 
    break 
elseif (x==a); 
    u(n,m)=0; 
    break 
elseif (y==0); 
    u(n,m)=0; 
    break 
elseif (y==a); 
    u(n,m)=0; 
    break 
else 
    continue; 
endif 

endfor 


endfor 
endfor 

figure(2); 
contour(u) 
başka deyişle

, ne yapmak istiyorum rekor "u" (çözelti), programı yeniden çalıştırın, "u" nin bu değeri kaydetmek bu değeridir ve Bu işlemle yüzlerce kez devam edin, daha sonra ortalamaları dağıtın ve ortalama çözümü çizin. Komut dosyalarına oldukça yeni geldim, bu yüzden verebileceğiniz her türlü tavsiye büyük ölçüde takdir edilecektir.

sayesinde Steve

cevap

0

Neden gidip bir döngü ve mağaza değişkenlere koymuyorsun?

İlgili konular