Matlab中是否有更簡便的方法生成這樣的矩陣M?

時間 2021-05-06 16:13:59

1樓:

% mandel 是自定義的函式M=

arrayfun

(@mandel,(

-1:.005:1

)+1i

*(-2

:.005:.5

)');

2樓:

其實可以借助bsxfun的廣播功能實現meshgrid,避免產生中間變數

參照上述幾個答案,改了一下,能夠動態顯示整個生成過程:

function

MandelbrotPlot

(maxDepth, N)

% MANDELBROTPLOT show the generation process of Madelbrot setx=

linspace(-

2.5,

1.5,N);

y=linspace(-

1.5,

1.5,N);

z=bsxfun

(@plus,x

,y'*i

);% use the Binary Singleton Expansion func

% to generate "x+y*i" instead of using MESHGRIDc0=

z;n_z=

zeros

(size(z

));index

=zeros

([size(z

),maxDepth

]);fork=

1:maxDepth

n_z=

n_z+

(abs(z

)<2);

z=z.^

2+c0;

index

(:,:,k)

=n_z

;% index records every iteration state of n_z

endforn=

1:maxDepth

imagesc

(index

(:,:,n))

colormap

hsv%axis equal

axis

offpause

(0.15

)end

end>>

MandelbrotPlot

(100

,1000)

3樓:

發揮 matlab 矩陣計算的優勢

通過meshgridarrayfun兩個函式的應用來「消滅」 for 迴圈,從而實現簡化。

d=0.005

xspace = -1:d:1;

yspace = -1:d:1;

[x, y] = meshgrid ( xspace, yspace);

M = arrayfun ( @(z) Interaction(z), x+y*sqrt(-1) );

Interaction 需要自己編寫,就是對複數 x+y*sqrt(-1) 反覆迭代,判斷是否落在圓形區域內,類似樓主程式中的mandel函式。

Mandelbrot集,上帝的戒指-

MATLAB 有哪些好用的第三方工具箱 Toolbox ?

為了理想奮鬥 matconvnet 深度學習工具,包含cnn rcnn fast rcnn。mexopencv,matlab介面的opencv工具包,用法與C 一致,影象處理 計算機視覺不可或缺的工具 Tensor Toolbox MATLAB Tensor Toolbox Version 2.6 ...

長途旅程中PSP電不夠用,有哪些簡便靠譜的解決方案?

姜強尼 現在市面上的山寨電池都很差,也就續航兩個小時,以前的原裝電池也都差不多鼓包了,但某寶上可以魔改UMD電池,就是把後面的UMD碟倉去掉改成大容量電池,據說能續航十幾個小時,但不知道會不會影響整機的美觀。 中原一點點 我 我穿越了嗎。我仔細地擦了一下自己的眼鏡,發現真的是PSP。不是PSV!也不...

象棋中先手方有多大的優勢?

魏蜀吳 截止2021.3.15 東萍棋譜中 大師對局 共111647局紅勝42065 黑胜31417 紅勝率37.68 黑勝率28.14 和棋率34.18 紅得分率 棋協稱勝率 54.77 黑得分率45.23 頂尖對局 奕天網路平台對局 共1305810局紅勝473252 黑胜419368 紅勝率3...