電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
樓主: QQ1641085143
收起左側(cè)

求教大佬 這個w-m分形函數(shù)怎么用matlab打出來

[復(fù)制鏈接]

35

主題

892

帖子

1091

積分

三級會員

Rank: 3Rank: 3

積分
1091
11#
發(fā)表于 2023-4-5 17:22:17 | 只看該作者
function genWM(Ds,lambda,nmax)
%GENWM 生成W-M 隨機曲面
%   此處顯示詳細(xì)說明
%   lambda
%   Ds 分形維數(shù)
if nargin < 3
    nmax = 10;
    if nargin < 2
        lambda = 1.5;
        if nargin < 1
            Ds = 2.3;
        end
    end
end
% nmax = 10;
An = 2*pi*rand(nmax,1);
Bn = 2*pi*rand(nmax,1);
Cn = randn(nmax,1);


x = 0:0.1:6;
y = 0:0.1:6;
[X,Y] = meshgrid(x,y);
% lambda = 1.5;
% Ds = 2.05;
Z= zeros(length(x),length(y));
for ni = 1:nmax
    t = -(3-Ds)*ni;
    temp1 = X.*cos(Bn(ni)) + Y.*sin(Bn(ni));
    zn = Cn(ni)*lambda^t.*sin(lambda^ni.*temp1+An(ni));
    Z = zn + Z;
end


surf(X,Y,Z);
xlabel('X');
ylabel('Y');
zlabel('Z');
filename = ['W-M fractal surface','_Ds',num2str(Ds),'_lambda',num2str(lambda),'.bmp'];
saveas(gcf,filename,'bmp');


end
回復(fù) 支持 反對

使用道具 舉報

發(fā)表回復(fù)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表