一个简单的embedded matlab function例子

所有的工作都是基于matlab 2010版本。

一.对embedded matlab function的简要介绍

    Embedded MATLAB Function模块位于Simulink/User-Defined Functions模块库中。该模块工作于matlab语言的一个子集(称为 embedded matlab subset,不在此子集的函数,需要用eml.extrinsic声明或采用feval才能使用,后面介绍),该模块能够提供高效的代码(编译后高效)。它适用于某些用文字语言比用图形语言方便的算法描述。

二.一个简单例子

模型如下:

其中Constant中是[2 3 4 5].

 

本实例是计算输入的期望和标准差。代码如下:

function [mean,stdev]=stats(vals) %#eml % calculates a statistical mean and standard deviation fo the values vals. eml.extrinsic('plot'); len=length(vals); mean=avg(vals,len); stdev=sqrt(sum(((vals-mean).^2))/len); plot(vals,'-+'); function mean=avg(array,size) mean=sum(array)/size;

 

 

三.对改代码的解释。

 

1.函数头部

你可能感兴趣的:(matlab)