How to do Surf plot
3 ビュー (過去 30 日間)
古いコメントを表示
Q=0.25;
L=5;
a=1-cos(2*pi*D1/fn);
x=(pi*D1)/(fn*L)*sin(2*pi*D1/fn);
y=cos(2*pi*D1/fn)*((4*Q/pi*fn)+((pi^2*D1/fn^2*L)*(0.5-D1))-1);
z=(pi^2*D1/fn^2*L)*(0.5-D1);
m=4*Q/pi*fn;
deno=1+x+y+z+m;
Gdc1=a/deno;
Hi I want to plot a surface of Gdc where D1=0.1:0.1:0.5 and fn=0.5:0.1:1.5
How can I do it?
0 件のコメント
採用された回答
Walter Roberson
2017 年 1 月 25 日
Q = 0.25;
L = 5;
[D1, fn] = ndgrid(0.1:0.1:0.5, 0.5:0.1:1.5);
D1_fn = D1./fn; %optimization
a = 1 - cos(2*pi*D1_fn);
x = (pi*D1) ./ (fn*L) .* sin(2*pi*D1_fn);
y = cos(2*pi*D1_fn) .* ((4*Q/pi*fn) + ((pi^2*D1_fn./fn*L) .* (0.5-D1)) - 1);
z = (pi^2*D1_fn./fn*L) .* (0.5-D1);
m = 4*Q/pi * fn;
deno = 1+x+y+z+m;
Gdc1 = a ./ deno;
surf(D1, fn, Gdc1, 'edgecolor', 'none')
3 件のコメント
Walter Roberson
2017 年 1 月 25 日
surf(D1, fn, Gdc1)
Your plot is course because 0.1:0.1:0.5 is course. You should probably use a finer resolution. For example,
N = 20;
[D1, fn] = ndgrid(linspace(0.1,0.5,N), linspace(0.5,1.5,N));
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Line Plots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!