Functions with multiple variables
2 ビュー (過去 30 日間)
古いコメントを表示
Hi
I am working on functions with multiple variables:
IFF1 = @(s22,s33) (s22+s33+sqrt((s22-s33)*(s22-s33)+4*s23*s23))/(2*St22)-1
I would like to gain all combinations of s22 and s33 so the function equals 0. Then i would like to plot these values, result should be an ellipsis.
Thank you for you help!
Greetings Ben
1 件のコメント
Walter Roberson
2011 年 11 月 15 日
Is the St22 reference a typo, or a constant in the scope of the defining routine?
Likewise for the s23 and s33 references.
回答 (4 件)
Jonathan
2011 年 11 月 15 日
Ben,
Here is a neat way of solving your problem. There are certainly more efficient methods. This was the least amount of code for me to right, though. Let me know how it goes for you.
s23 = rand;
St22 = rand;
IFF1 = @(s22,s33) (s22+s33+sqrt((s22-s33)*(s22-s33)+4*s23*s23))/(2*St22)-1;
[X, Y, Z] = meshgrid(linspace(-10, 2, 50), linspace(-10, 2, 50), [0 0]);
V = nan(size(X));
for i = 1:numel(X)
V(i) = IFF1(X(i), Y(i));
end
patch(isosurface(X,Y,Z,V,0))
0 件のコメント
Walter Roberson
2011 年 11 月 15 日
There are an infinite number of solutions, not confined to any region of the graph. For any s33,
s22 = (s23^2+s33*St22-St22^2)/(s33-St22)
This is clearly an infinite curve with a discontinuity at s33 = St22
0 件のコメント
Ben
2011 年 11 月 15 日
1 件のコメント
Walter Roberson
2011 年 11 月 15 日
Same issue as before:
s22 = (-4429+73*s33)/(s33-73)
which is an infinite curve with a discontinuity at s33 = 73
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!