matlab2c使用c++实现matlab函数系列教程-normrnd函数

来源:互联网 发布:淘宝店铺认证可以改吗 编辑:程序博客网 时间:2024/06/07 15:24

全栈工程师开发手册 (作者:栾鹏)

matlab2c动态链接库下载
matlab库函数大全
matlab2c基础教程
matlab2c开发全解教程

matlab2c调用方法:

1、下载动态链接库
2、将Matlab2c.dll拷贝到exe同目录下
3、将Matlab2c.h、Matlab2c.lib放到项目头文件目录下
4、在cpp文件中引入下面的代码

#include "Matlab2c.h"#pragma comment(lib,"Matlab2c.lib")  using namespace Matlab2c;

matlab中normrnd函数简介

1、normrnd函数:

生成正态分布随机整型矩阵

2、用法说明

R = normrnd(mu,sigma,m,n)产生m行n列,均值为mu,标准差为sigma的正态分布均矩阵

normrnd的c++源码实现

生成正态分布的随机矩阵
输入为行数列数,正态分布的均值和标准差
输出正态分布矩阵

Matrix Matlab2c::normrnd(double aver,double sigma,int row,int column){    double x,dScope,y,fengzhi;    int i,j;    Matrix p(row,column);    //default_random_engine generator;//如果用这个默认的引擎,每次生成的随机序列是相同的。    random_device rd;    mt19937 gen(rd());    for (i=0;i<p.row;i++)    {        for (j=0;j<p.column;j++)        {            normal_distribution<double> normal(aver,sigma);            p(i,j)=normal(gen);        }    }    return p;}

normrnd函数的使用测试

#include "Matlab2c.h"#pragma comment(lib,"Matlab2c.lib")  using namespace Matlab2c;int main(){    Matrix cc=Matlab2c::normrnd(0,2,1,1000);    cout<<cc.toString()<<endl;    system("pause");    return 0;}
阅读全文
2 0