用简单伪随机数发生器实现随机中点位移分形(Matlab代码实现)
目录
💥1 概述
📚2 运行结果
🎉3 参考文献
👨💻4 Matlab代码
💥1 概述
随机分形(random fractal)采用随机生成机制而得到的分形集.分形体不具有特征尺度(亦即大小尺度跨好几个量级),却有自相似结构的分形.如康托尔集合,它由反复进行每次去其线段中间三分之一的操作而形成.用尺度r量出的积的数目就是就是康托尔集合的维数. 自然界中还有许多无特征尺度现象,它们虽不像康托尔集合那样是严格意义上的分形,但其统计特征和尺度在双对数坐标上仍可找到一个不变量。
📚2 运行结果
🎉3 参考文献
[1]刘刚,胡远来,贾玥.随机分形插值法在地震数据处理中的应用[J].物探化探计算技术,2002,24(4):304-308
👨💻4 Matlab代码
主函数部分代码:
%% Random Midpoint Displacement Fractal
% Original: Solution to the Advanced Programming in Engineering Random Numbers assignment
steps = 18; % How many iterations to do
height = 3e3; % Height coefficient at start (meter)
roughness = 0.76; % Roughness
seed = 9133759; % randi(10^7);
tic;
F = rmdf( steps, height, roughness, seed );
toc
mapsize = 1e4; % Map size edge (meter)
rmdf_show( F, mapsize );