前几天,有个同事看到我生成的一幅逻辑斯蒂分岔图像后,问我:“这是咪咪吗?”我回答:“淫者见淫。”好吧,这里将生成几种分岔映射图形,包括逻辑斯蒂映射系统,正弦映射系统和曼德勃罗映射系统。实际上这几种图形算不上分形,只不过它与我写的其他分形对象使用相同的基类,所以也将其列入混沌分形的范畴。

关于基类FractalEquation的定义及相关软件见:混沌与分形

(1)逻辑斯蒂映射系统

// 逻辑斯蒂映射系统
class LogisticMap : public FractalEquation
{
public:
LogisticMap()
{
m_StartX = 0.0f;
m_StartY = 0.0f;
m_StartZ = 0.0f; m_ParamA = 0.0f;
m_ParamB = 4.0f; m_nIterateCount = ;
} void IterateValue(float x, float y, float z, float& outX, float& outY, float& outZ) const
{
float R = (float)rand()/RAND_MAX;
float k = m_ParamA + (m_ParamB - m_ParamA) * R;
outX = R*4.0f; outY = (float)rand()/RAND_MAX;
for (int i = ; i < m_nIterateCount; i++)
{
outY = k*outY*(-outY);
}
outY *= ; outZ = z;
} bool IsValidParamA() const {return true;}
bool IsValidParamB() const {return true;} private:
int m_nIterateCount;
};

调节下参数后的图形:

(2)正弦映射系统

// 正弦映射系统
class SinMap : public FractalEquation
{
public:
SinMap()
{
m_StartX = 0.0f;
m_StartY = 0.0f;
m_StartZ = 0.0f; m_ParamA = -*PI;
m_ParamB = *PI; m_nIterateCount = ;
} void IterateValue(float x, float y, float z, float& outX, float& outY, float& outZ) const
{
float R = (float)rand()/RAND_MAX;
float k = m_ParamA + (m_ParamB - m_ParamA) * R;
outX = R*4.0f; outY = (float)rand()/RAND_MAX;
for (int i = ; i < m_nIterateCount; i++)
{
outY = k*sinf(outY);
} outY *= 0.5f; outZ = z;
} bool IsValidParamA() const {return true;}
bool IsValidParamB() const {return true;} private:
int m_nIterateCount;
};

(3)曼德勃罗映射系统

// 曼德勃罗映射系统
class MandelbrotMap : public FractalEquation
{
public:
MandelbrotMap()
{
m_StartX = 0.0f;
m_StartY = 0.0f;
m_StartZ = 0.0f; m_ParamA = -2.0f;
m_ParamB = 0.0f; m_nIterateCount = ;
} void IterateValue(float x, float y, float z, float& outX, float& outY, float& outZ) const
{
float R = (float)rand()/RAND_MAX;
float k = m_ParamA + (m_ParamB - m_ParamA) * R;
outX = R*4.0f; outY = (float)rand()/RAND_MAX;
for (int i = ; i < m_nIterateCount; i++)
{
outY = outY*outY + k;
} outZ = z;
} bool IsValidParamA() const {return true;}
bool IsValidParamB() const {return true;} private:
int m_nIterateCount;
};

最后发下被我同事当成MM的逻辑斯蒂分岔图像:

之前我还写过一篇关于逻辑斯蒂的文章:混沌数学之logistic模型

混沌分形之逻辑斯蒂(Logistic)映射系统的更多相关文章

  1. 【转】机器学习笔记之(3)——Logistic回归(逻辑斯蒂回归)

    原文链接:https://blog.csdn.net/gwplovekimi/article/details/80288964 本博文为逻辑斯特回归的学习笔记.由于仅仅是学习笔记,水平有限,还望广大读 ...

  2. 机器学习之LinearRegression与Logistic Regression逻辑斯蒂回归(三)

    一 评价尺度 sklearn包含四种评价尺度 1 均方差(mean-squared-error) 2 平均绝对值误差(mean_absolute_error) 3 可释方差得分(explained_v ...

  3. python机器学习实现逻辑斯蒂回归

    逻辑斯蒂回归 关注公众号"轻松学编程"了解更多. [关键词]Logistics函数,最大似然估计,梯度下降法 1.Logistics回归的原理 利用Logistics回归进行分类的 ...

  4. 【分类器】感知机+线性回归+逻辑斯蒂回归+softmax回归

    一.感知机     详细参考:https://blog.csdn.net/wodeai1235/article/details/54755735 1.模型和图像: 2.数学定义推导和优化: 3.流程 ...

  5. spark机器学习从0到1逻辑斯蒂回归之(四)

      逻辑斯蒂回归 一.概念 逻辑斯蒂回归(logistic regression)是统计学习中的经典分类方法,属于对数线性模型.logistic回归的因变量可以是二分类的,也可以是多分类的.logis ...

  6. [置顶] 局部加权回归、最小二乘的概率解释、逻辑斯蒂回归、感知器算法——斯坦福ML公开课笔记3

    转载请注明:http://blog.csdn.net/xinzhangyanxiang/article/details/9113681 最近在看Ng的机器学习公开课,Ng的讲法循循善诱,感觉提高了不少 ...

  7. 【项目实战】pytorch实现逻辑斯蒂回归

    视频指导:https://www.bilibili.com/video/BV1Y7411d7Ys?p=6 一些数据集 在pytorch框架下,里面面有配套的数据集,pytorch里面有一个torchv ...

  8. 逻辑斯蒂(logistic)回归深入理解、阐述与实现

    第一节中说了,logistic 回归和线性回归的区别是:线性回归是根据样本X各个维度的Xi的线性叠加(线性叠加的权重系数wi就是模型的参数)来得到预测值的Y,然后最小化所有的样本预测值Y与真实值y'的 ...

  9. 逻辑斯蒂回归VS决策树VS随机森林

    LR 与SVM 不同 1.logistic regression适合需要得到一个分类概率的场景,SVM则没有分类概率 2.LR其实同样可以使用kernel,但是LR没有support vector在计 ...

随机推荐

  1. querySelector/querySelectorAll选择器两个容易忽略的点

    jquery写得多了,原生js大API就容易忘.如果你也是这样,一起来回顾一下HTML5的类jquery选择器querySelector和querySelectorAll吧,querySelector ...

  2. vue打包以及在Apache环境下的配置

    vue打包,我们都清楚,实在记不住命令的可以去package.json中看: npm run build 打包后会生成dist文件夹,将dist文件夹下的所有文件复制到Apache下的www的文件夹下 ...

  3. [AHOI2013]作业

    [AHOI2013]作业 题目大意: 给定一个长度为\(n(n\le10^5)\)的数列\(A(1\le A_i\le n)\).\(m(m\le10^6)\)次询问,每次询问区间\([l,r]\)内 ...

  4. 【BZOJ-3672】购票 树分治 + 斜率优化DP

    3672: [Noi2014]购票 Time Limit: 30 Sec  Memory Limit: 512 MBSubmit: 1177  Solved: 562[Submit][Status][ ...

  5. Linux学习笔记07—mysql的配置

    一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱 ...

  6. 百度离线下载Tampermonkey脚本

    https://greasyfork.org/zh-CN/scripts/23635-%E7%99%BE%E5%BA%A6%E7%BD%91%E7%9B%98%E7%9B%B4%E6%8E%A5%E4 ...

  7. HDU 4498 Function Curve (自适应simpson)

    Function Curve Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)To ...

  8. Jack--10天学会IOS大纲;注意将图片放大观看!

    第一天:磨刀霍霍期 耐得住性子好好熟悉和认识开发环境 ---------Jack/版权全部     认识开发环境         操作系统认识             Mac系统是苹果机专用系统.是基 ...

  9. JTAG - General description of the TAP Controller states

    A transition between the states only occurs on the rising edge of TCK, and each state has a differen ...

  10. Programming 2D Games 读书笔记(第五章)

      http://www.programming2dgames.com/chapter5.htm 示例一:Planet 真正示例的开始,首先是载入2张图片 1.Graphics添加了2个方法 load ...