bu fonksiyonun fminsearch () bulmak istiyorum in matlab
f(x,y,z)=(x-10)^2+(y-4)^2+(z-0.9)^2+3*(1-x*y*z)^2 (x0,y0,z0)=(5,5,5)
function b=three_var(v) x=v(1); y=v(2); z=v(3); b=(x-10)^2+(y-4)^2+(z-0.9)^2+3*(1-x*y*z)^2 v=[5,5,5]; a=fminsearch(@three_var,v)
bu şekilde yazdım fakat Undefined function or variable 'v'.hatası veriyor nasıl düzeltebilirim
v vektörünü betiğinizin başında tanımlamanız gerekiyor. Aşağıdaki düzenlenmiş haline göz atabilirsiniz.
DİPÇE: Lütfen sorularınızı yazarken sorunuzun Türkçe ve anlaşılabilir yazılmış olmasına dikkat edin.
function b=three_var(v) v=[5 5 5]; x=v(1,1); y=v(1,2); z=v(1,3); b=(x-10)^2+(y-4)^2+(z-0.9)^2+3*(1-x*y*z)^2
çok teşekkür ederim cevabınız için ama kodu çalıştırdığımda bu seferde Maximum recursion limit of 500
reached. Use set(0,'RecursionLimit',N) to change the limit hatası veriyor bunu nasıl düzeltebilirim
Yukarıdaki kodu paylaşırken bir karışıklık olmuş.
Öncelikle three_var.m adında bir fonksiyon dosyası oluşturacağız ve içerisinde aşadıdaki kodumuz yazmalı:
function b=three_var(v)
x=v(1,1);
y=v(1,2);
z=v(1,3);
b=(x-10)^2+(y-4)^2+(z-0.9)^2+3*(1-x*y*z)^2;
Daha sonra bu fonksiyonu aşağıdaki kod ile çağıracağız:
v=[5 5 5];
a=fminsearch(@three_var,v)