精华内容
下载资源
问答
  • C#调用matlab脚本

    千次阅读 2016-08-11 16:54:40
    使用C#调用matlab脚本其实在实际的程序中,我是不推荐使用matlab的,因为实际项目必须使用正版的matlab且matlab的部署还是一个问题,所以matlab的脚本仅适合在项目测试阶段或者个人使用的时候进行分析,通过调用标准...

    在实际的程序中,我是不推荐使用matlab的,因为实际项目必须使用正版的matlab且matlab的部署还是一个问题,所以matlab的脚本仅适合在项目测试阶段或者个人使用的时候进行分析,通过调用标准的matlab后缀为.m的文件进行数据处理分析

    访问我的个人网站获取更多文章

    • 环境:vs2013,matlabR2015b
    • 语言:C#,Winform项目

    添加dll

    在引用中右键——添加引用,选中com一栏,搜索matlab,在结果中选择matlab application,添加引用

    在C#中使用

    代码如下

     public void test(string inputpath,string outputpath,double samplerate)
            {
                string path = info.Parent.Parent.Parent.FullName + "\\install";
                path.Replace("\\","/");
                matlab.Execute(@"cd "+path); //切换到执行目录
                object result = null; //定义输出
                matlab.Feval("fun_filter_50hz", 2, out result, inputpath, outputpath,samplerate );
                //matlab.Feval("myfunc", 2, out result, inputpath,outputpath,samplerate);
                object[] res = result as object[];
            }

    代码中,path是.m脚本文件的路径;参数inputpath是我待分析的文件路径,outputpath是我分析完之后文件的存储路径,samplerate是采样率,这三个是实际项目的自定义参数,可以忽略;

    使用方法是:

    1. matlab.Execute(@”cd “+path); //path为脚本目录
    2. object result = null; //定义输出
    3. matlab.Feval(“fun_filter_50hz”, 2, out result, inputpath, outputpath,samplerate );
      参数1:脚本名称;
      参数2:输出参数个数;
      参数3:object 对象,储存输出结果;
      参数4及之后:输入参数
    4. object[] res = result as object[]
      将输出结果转化为对象数组,可以对数组操作的到结果。

    参考文章链接

    这里写图片描述

    展开全文
  • Matlab脚本和函数编程入门

    千次阅读 2019-03-19 14:56:14
    Matlab脚本和函数编程入门简介循环控制语句for 语句while 语句条件语句if 语句switch 语句向程序中添加注释运行代码节将您的文件分为多个代码节执行代码节同时使用代码节与控制语句和函数脚本与函数基础工作区与函数...

    简介

    若您需要重复执行一系列命令或希望将其保存供以后引用,请将其存储在程序文件中。MATLAB® 程序的最简单类型是脚本,其中包含一组命令,这些命令与您在命令行中键入的命令完全相同。要获得更高的编程灵活性,请创建接受输入并返回输出的函数。要将代码与嵌入式输出、格式化文本、方程和图像合并到一个交互式环境中,请创建实时脚本或实时函数(MATLAB R2016a或更高的版本)。

    循环控制语句

    for 语句

    循环特定次数,并通过递增的索引变量跟踪每次迭代。
    例如,预分配一个 10 元素向量并计算五个值:

    x = ones(1,10);
    for n = 2:6
        x(n) = 2 * x(n - 1);
    end
    

    while 语句

    只要条件仍然为 true 就进行循环。
    例如,计算使 factorial(n) 成为 100 位数的第一个整数 n:

    n = 1;
    nFactorial = 1;
    while nFactorial < 1e100
        n = n + 1;
        nFactorial = nFactorial * n;
    end
    

    每个循环都需要 end 关键字。最好对循环进行缩进处理以便于阅读,特别是使用嵌套循环时(也即一个循环包含另一个循环)。您可以使用 break 语句以编程方式退出循环,也可以使用 continue 语句跳到循环的下一次迭代。
    注意:如果意外创建了一个无限循环(永远不会自行结束的循环),请按 Ctrl+C 停止执行循环。

    条件语句

    if 语句

    % Generate a random number
    a = randi(100, 1);
    
    % If it is even, divide by 2
    if rem(a, 2) == 0
        disp('a is even')
        b = a/2;
    end
    

    通过使用可选关键字 elseif 或 else,if 语句可以包含备用选项。例如:

    a = randi(100, 1);
    
    if a < 30
        disp('small')
    elseif a < 80
        disp('medium')
    else
        disp('large')
    end
    

    switch 语句

    当您希望针对一组已知值测试相等性时,请使用 switch 语句。例如:

    [dayNum, dayString] = weekday(date, 'long', 'en_US');
    
    switch dayString
       case 'Monday'
          disp('Start of the work week')
       case 'Tuesday'
          disp('Day 2')
       case 'Wednesday'
          disp('Day 3')
       case 'Thursday'
          disp('Day 4')
       case 'Friday'
          disp('Last day of the work week')
       otherwise
          disp('Weekend!')
    end
    

    对于 if 和 switch,MATLAB® 执行与第一个 true 条件相对应的代码,然后退出该代码块。每个条件语句都需要 end 关键字。

    一般而言,如果您具有多个可能的离散已知值,读取 switch 语句比读取 if 语句更容易。但是,无法测试 switch 和 case 值之间的不相等性。例如,无法使用 switch 实现以下类型的条件:

    yourNumber = input('Enter a number: ');
    
    if yourNumber < 0
        disp('Negative')
    elseif yourNumber > 0
        disp('Positive')
    else
        disp('Zero')
    end
    

    向程序中添加注释

    使用百分比 (%) 符号向 MATLAB® 代码中添加注释。在实时脚本和函数中,您还可以通过在代码前后插入文本行来描述过程或代码。文本行还提供其他灵活的功能,例如标准格式选项以及插入图像、超链接和方程。
    注意:如果您 MATLAB 代码文件 (.m) 中的文本所包含的字符编码与您的平台编码不同,则在您保存或发布文件时,MATLAB 会将这些字符显示为乱码。实时脚本和函数 (.mlx) 支持所有区域设置的存储和字符显示。
    注释还可用于程序开发和测试,注释掉无需运行的任何代码。要注释掉多个代码行,可以使用块注释运算符,%{ 和 %}:

    a = magic(3);
    %{
    sum(a)
    diag(a)
    sum(diag(a))
    %}
    sum(diag(fliplr(a)))
    

    %{ 和 %} 运算符必须单独显示在帮助文本块前后紧邻的行上。不要在这些行中包括任何其他文本。
    要注释掉跨多行的部分语句,请使用省略号 (…) 代替百分比符号。例如,

    header = ['Last Name, ',      ...
              'First Name, ',     ...
          ... 'Middle Initial, ', ...
              'Title']
    

    运行代码节

    将您的文件分为多个代码节

    MATLAB® 文件通常包含多个命令。您通常一次仅专注于程序中的某个部分,分块操作代码。同样,向其他人解释您的文件时,通常分块介绍您的程序。为帮助介绍这些过程,使用代码节,也称为代码单元或单元模式。代码节包含 MATLAB 脚本中您想要作为一组求值的连续代码行,以两个注释字符 (%%) 开头。与 %% 位于同一行中的文本称为节标题。可以选择是否包含节标题,不过,节标题可提高文件的可读性并在您发布代码时显示为题头。

    执行代码节

    编写 MATLAB 程序文件时,可以使用编辑器中“节”(“单元”)的功能逐节执行程序文件。该方法有助于您试用和微调您的程序。您可以在各节之间导航并单独执行每节。要执行某节,该节必须包含它需要的所有值,或这些值必须存在于 MATLAB 工作区中。

    节执行功能运行当前以黄色高亮显示的代码节。MATLAB 在执行某个代码节时不会自动保存您的文件。文件无需位于您的搜索路径下。

    同时使用代码节与控制语句和函数

    在控制语句和函数内使用代码节时会产生意外结果,因为 MATLAB 自动插入编辑器中未显示的分节符,除非您显式插入分节符。涉及嵌套代码时尤其如此。在控制语句或函数的范围内放置另一个控制语句或函数时产生嵌套代码。

    MATLAB 根据以下条件自动定义代码块中的节界限:

    • MATLAB 在文件顶端和底端插入分节符,创建包含整个文件的代码节。但是,编辑器不会高亮显示包含整个文件的生成节,除非您将一个或多个显式代码节添加到文件中。
    • 如果您定义控制流语句(例如 if 或 while 语句)内的分节符,MATLAB 会自动将分节符插入包含语句开始和结束的行。
    • 如果您在函数内定义分节符,MATLAB 会将分节符插入函数声明和函数结束语句中。如果您没有用 end 语句结束函数,MATLAB将视该函数的结尾紧发生在下个函数的开头前。

    如果在您插入分节符的同一行中自动插入分节符,它们会折叠为一个分节符。

    脚本与函数

    脚本和函数都允许您通过将命令序列存储在程序文件中来重用它们。脚本是最简单的程序类型,因为它们存储命令的方式与您在命令行中键入命令完全相同。但是,函数更灵活,更容易扩展。注意:在脚本中包含函数需要 MATLAB R2016b 或更高版本。

    函数具有它们自己的工作区,与基础工作区隔开。

    基础工作区与函数工作区

    基础工作区存储您在命令行中创建的变量。这包括脚本创建的任何变量(假定您从命令行或编辑器中运行脚本)。在您清除基础工作区中的变量或结束您的 MATLAB® 会话之前,这些变量一直存在。

    函数不使用基础工作区。每个函数都有自己的函数工作区。每个函数工作区都与基础工作区和所有其他工作区分开以保护数据的完整性。即使普通文件中的局部函数也有它们自己的工作区。某函数工作区的特定变量称为局部变量。在一个函数调用转到下一个函数调用时,局部变量通常不保留在内存中。
    从函数中调用脚本时,脚本使用函数工作区。

    和局部函数一样,嵌套函数也有它们自己的工作区。但是,这些工作区从以下两个重要的独特之处:

    • 嵌套函数可以访问和修改它们所在的函数工作区中的变量。
    • 嵌套函数或包含嵌套函数的函数中的所有变量都必须显式定义。即,除非变量已存在于函数工作区中,否则无法调用函数或脚本向那些变量赋值。
    展开全文
  • MATLAB创建脚本

    千次阅读 2019-05-26 14:06:35
    脚本是最简单的程序文件类型,因为它们没有输入或输出参数。它们可用于自动执行一系列 MATLAB® 命令,例如您必须从命令行重复执行的计算或必须引用的一系列命令。 您可以通过以下方式创建新脚本: 高亮显示...

     

    一.下载MATLAB

    关注公众号软件安装管家,回复MATLAB,选择需要的版本下载。

    二.创建脚本

    脚本是最简单的程序文件类型,因为它们没有输入或输出参数。它们可用于自动执行一系列 MATLAB® 命令,例如您必须从命令行重复执行的计算或必须引用的一系列命令。

    您可以通过以下方式创建新脚本:

     

    • 高亮显示“命令历史记录”中的命令,右键点击,然后选择创建脚本

    • 点击主页选项卡上的新建脚本 按钮。

    • 使用 edit 函数。例如,edit new_file_name 会创建(如果不存在相应文件)并打开 new_file_name 文件。如果 new_file_name 未指定,MATLAB 将打开一个称为 Untitled 的新文件。

     

    创建脚本后,您可以向其中添加代码并保存代码。例如,您可以将生成从 0 到 100 的随机数的代码保存为名为 numGenerator.m 的脚本。

    columns = 10000;
    rows = 1;
    bins = columns/100;
    
    rng(now);
    list = 100*rand(rows,columns);
    histogram(list,bins)

     

    保存脚本并使用以下方法之一运行代码:

    • 在命令行上键入脚本名称并按 Enter。例如,要运行 numGenerator.m 脚本,请键入 numGenerator

    • 点击编辑器选项卡上的运行 按钮

     

    您还可以从第二个程序文件运行代码。为此,请向第二个程序文件中添加一行含脚本名称的代码。例如,要从第二个程序文件运行 numGenerator.m 脚本,请将 numGenerator; 行添加到该文件中。MATLAB 会在您运行第二个文件时运行 numGenerator.m 中的代码。

    脚本执行完毕后,这些变量会保留在 MATLAB 工作区中。在 numGenerator.m 示例中,变量 columnsrowsbinslist 仍位于工作区中。要查看变量列表,请在命令提示符下键入 whos。脚本与您的交互式 MATLAB 会话和其他脚本共享基础工作区。

    展开全文
  • Matlab

    2018-01-25 00:41:29
    基础语法 简单计算 分号的使用 注释 常用运算符 特殊变量和常数 命名变量 ...Matlab m脚本文件 创建和运行脚本文件 Matlab数据类型 基本数据类型 数据类型转换 数据类型确定 决策语句 向量 引用向量

    基础语法

    简单计算

    1. 计算次幂
    Trial>>3^2
    ans=
    
        9
    1. 数学表达式
    Trial>>123*23.259
    ans=
    
        2.8609e+03

    Matlab为某些数学符号提供了特殊的表达式,如piπInfiorj(1)(−1).Nan表示“非数字”

    分号的使用

    ;表语句的结束。若要抑制和隐藏表达式输出,需要加;

    注释

    %——行注释
    %{%}——块注释

    常用运算符

    运算符 使用说明
    ^ 标量和矩阵求幂运算符
    \ 左除法运算符
    / 右除法运算符
    : 生成规则间隔的元素,并表示整个行或列
    () 包含函数参数和数组索引; 覆盖优先级
    [] 罩住阵列元素
    行连续运算符
    _ 引用符号和转置运算符

    特殊变量和常数

    名称 含义
    ans 最近的回应/回答
    eps 浮点精度精度
    ij 虚构单位√-1
    Inf 无穷
    NaN 未定义的数值结果(非数字)
    pi π

    命名变量

    变量名称由一个字母组成,后跟字母,数字或下划线。
    MATLAB区分大小写。

    保存

    save用于在工作空间中保存所有变量,它在当前目录中,以.mat作为扩展名的文件

    save mymat.mat

    可用load重新加载文件

    load mymat.mat

    变量

    每个变量都是数组或矩阵

    Trial>>x=3  %它创建一个名为x的1×1矩阵,并将值3存储在其元素中。
    x=
    
        3

    注意
    1. 当变量输入到系统中,可以在接下来代码中引用。
    2. 变量在使用前必须有值
    3. 当表达式返回未分配给任何变量的结果时,系统将其分配给名为ans的变量
    例如

    Trial>>sqrt(99)
    ans=
    
        9.9499

    可以使用这个ans变量

    多重分配赋值

    在同一行上拥有多个赋值

    Trial>>a=2;b=7;c=a*b
    c=
    
        14

    变量历史

    who显示使用过的所有变量名

    Trial>>who
    
    您的变量为:
    ans x   y
    

    whos显示:
    1. 当前内存中的变量
    2. 变量类型
    3. 变量的内存分配
    4. 是否是复合变量

    Trial>>whos
    Name        Size        Bytes  Class        Attributes
    ans         1x1         8       double
    x           1x1         8       double
    y           1x1         8       double
    

    清除命令

    clear x     %delete variable x
    clear       %delete all variables in the workspace

    长任务

    可用...扩展到另一行

    Trial>> initial_velocity = 0;
    acceleration = 9.8;
    time = 20;
    final_velocity = initial_velocity ...
    + acceleration * time
    
    final_velocity =
    
       196
    

    格式命令

    默认情况,Matlab显示4为小数,这称为短格式
    format long显示十进制后的16位数字

    Trial>>format long
    x = 7 + 10/3 + 5 ^ 1.2
    
    x=
    
        17.231981640639408
    
    Trial>> format short
    x = 7 + 10/3 + 5 ^ 1.2
    
    x =
    
       17.2320
    

    format bank将数字舍入小数点后2位。

    Trial>> format bank
    daily_wage = 177.45;
    weekly_wage = daily_wage * 6
    
    weekly_wage =
    
           1064.70
    

    format short e以指数形式显示4位小数加上指数

    Trial>> format short e
    4.678 * 4.9
    
    ans =
    
       2.2922e+01

    format long e以指数形式显示16位小数加指数

    Trial>> format long e
    x = pi
    
    x =
    
         3.141592653589793e+00

    format rat给出计算结果最接近的合理表达式

    Trial>> format rat
    4.678 * 4.9
    
    ans =
    
        2063/90
    

    创建向量

    Matlab允许两种向量

    • 行向量
    • 列向量

    行向量

    行向量是通过用方括号中的元素集合来创建的,使用空格或逗号分隔元素。

    r=[7 8 9 10 11]
    Trial>> r = [7 8 9 10 11];
    t = [2, 3, 4, 5, 6];
    res = r + t
    
    res =
    
           9             11             13             15             17
    

    列向量

    列向量通过用方括号中的元素集合来创建,使用分号;来分隔元素

    Trial>> c = [7;  8;  9;  10; 11]
    
    c =
    
           7       
           8       
           9       
          10       
          11
    

    创建矩阵

    通过将每行作为一系列空格或逗号分隔的元素输入矩阵,并以行号分隔一行
    例如创建一个3x3的矩阵:

    Trial>> m = [1 2 3; 4 5 6; 7 8 9]
    
    m =
    
           1              2              3       
           4              5              6       
           7              8              9
    

    命令

    管理会话的命令

    命令 说明
    clc 清除命令窗口
    clear 删除变量
    exist 检查文件or变量是否存在
    global 声明全局变量
    quit 停止
    who 列出变量
    whos 列出变量详细信息

    系统命令

    命令 说明
    cd 进入指定目录
    date 显示当前日期
    delete 删除文件
    dir 列出当前目录所有文件
    loas 从文件加载工作区变量
    path 显示搜索路径
    pwd 显示当前目录
    save 将工作区变量保存在文件中
    type 显示文件内容
    what 列出当前目录中所有MATLAB文件

    输入输出命令

    命令 说明
    disp 显示数组或字符串内容
    fscanf 从文件读取格式化数据
    fprintf 对屏幕或文件执行格式化的写入
    input 显示提示并等待输入
    ; 禁止打印显示

    fscanffprintf支持以下格式代码

    命令 说明
    %s 格式化为字符串
    %d 格式化为字符串整数值
    %f 格式化为浮点值
    %e 格式化为科学记数法的浮点值
    %g 格式最紧凑的形式:%f%e
    \n 换行
    \t 制表符

    format命令以下

    命令 说明
    format short 十进制数4位小数
    format long 16位
    format short e 4位小数加指数
    format long e 16位小数加指数
    format bank 2位小数
    format + 正、负、0
    format rat 有理近似
    format compact 禁止一些换行符
    format loose 重置为较不紧凑的显示模式

    向量、矩阵和数组命令

    命令 说明
    cat 连接数组
    find 查找非零元素的索引
    length 计算元素数量
    linspace 创建规则间隔的向量
    logspace 创建对数间隔向量
    max 返回最大元素
    min 返回最小元素
    prod 产生每列
    reshape 改变大小
    size 计算数组大小
    sort 对每列排序
    sum 对每列求和
    eye 创建单位矩阵
    ones 创建一个数组
    zeros 创建一个零的数组
    cross 计算矩阵交叉积
    dot 计算矩阵点积
    det 计算矩阵行列式
    inv 计算矩阵倒数
    pinv 计算矩阵伪逆
    rank 计算矩阵的秩
    rref 计算简化行阶梯形式
    cell 创建单元格数组
    celldisp 显示单元格数组
    cellplot 显示单元格阵列的图形表示
    num2cell 将数组转换为单元格数组
    deal 匹配输入和输出列表
    iscell 识别单元格数组

    绘图命令

    命令 说明
    axis 设置轴限制
    fplot 智能绘图
    grid 显示网格线
    plot 生成xy坐标图
    print 打印或绘图到文件
    title 顶部放置文字
    xlabel 将文本标签添加到x
    ylabel 将文本标签添加到y
    axes 创建轴对象
    close 关闭当前坐标图
    close all 关闭所有坐标图
    figure 打开新的图形窗口
    hold 冻结当前坐标图

    Matlab .m脚本文件

    MATLAB允许编写两种程序文件

    • 脚本 。 脚本文件是以.m扩展名的程序文件。在这些文件中,可以编写一系列要一起执行的命令。脚本不接受输入,不返回任何输出。它们对工作空间中的数据进行操作。
    • 函数。函数文件也是扩展名为.m的程序文件。函数可以接受输入和返回输出。内部变量是函数的局部变量。
      使用MATLAB编辑器或任何其他文本编辑器来创建.m文件。 在本节中,我们将讨论脚本文件。 脚本文件包含多个连续的MATLAB命令行和函数调用。可以通过在命令行中键入其名称来运行脚本。

    创建和运行脚本文件

    要创建脚本文件,需要使用文本编辑器。可以通过两种方式打开MATLAB编辑器:

    • 使用命令提示符
    • 使用IDE

    如果使用命令提示符,请在命令提示符下键入edit并回车,这将打开编辑器。可以直接键入edit,然后直接输入文件名(扩展名为.m)

    edit 
    %或者%
    edit newfile.m

    在命令行中也可以创建文件夹,如:创建一个名为progs的文件夹。在命令提示符下键入以下命令

    mkdir progs    % create directory progs under default directory
    chdir progs    % changing the current directory to progs
    edit  prog1.m  % creating an m file named prog1.m
    

    创建并保存文件后,可以通过两种方式运行:

    • 单击编辑器窗口上的“运行”按钮
    • 只需在命令提示符下键入文件名(无扩展名)即可:>> prog1

    一个栗子

    a = 5; b = 7;
    c = a + b
    d = c + sin(b)
    e = 5 * d
    f = exp(-d)

    编译后

    Trial>> sdemo
    
    c =
    
        12
    
    
    d =
    
       12.6570
    
    
    e =
    
       63.2849
    
    
    f =
    
       3.1852e-06

    Matlab数据类型

    当MATLAB遇到新的变量名称时,它将创建变量并分配适当的内存空间。
    如果变量已经存在,则MATLAB将使用新内容替换原始内容,并在必要时分配新的存储空间。

    基本数据类型

    MATLAB提供15种基本数据类型。每种数据类型存储矩阵或数组形式的数据。矩阵或数组的最小值是00,并且是可以到任何大小的矩阵或数组。
    下表显示了MATLAB中最常用的数据类型

    数据类型 描述
    int8 8位有符号整数
    uint8 8位无符号整数
    int16 16位有符号整数
    uint16 16位无符号整数
    int32 32位有符号整数
    uint32 32位无符号整数
    int64 64位有符号整数
    uint64 64位无符号整数
    single 单精度数值数据
    double 双精度数值数据
    logical bool型变量
    char 字符型数据

    数据类型转换

    函数 说明
    char 转换为字符数组(字符串)
    int2str 将整数数据转换为字符串
    mat2str 将矩阵转换为字符串
    num2str 将数字转换为字符串
    str2double 将字符串转换为双精度值
    str2num 将字符串转换为数字
    bin2dec 将二进制数字串转换为十进制数
    dec2bin 将十进制转换为字符串中的二进制数
    dec2hex 将十进制转换为十六进制数字

    数据类型确定

    Matlab提供了用于识别数据类型的函数

    函数 说明
    is 检测状态
    isa 确定输入是否是指定类的对象
    isvector 确定输入是否为向量
    isinteger 确定输入是否为整数数组
    isscalar 确定输入是否为标量

    决策语句

    语句 说明
    if...end语句 if ... end语句包含一个布尔表达式,后跟一个或多个语句。

    向量

    引用向量的元素

    向量v的第i个分量叫作v(i)

    Trial>> v = [ 1; 2; 3; 4; 5; 6];    % creating a column vector of 6 elements
    v(3)
    
    ans =
    
         3
    

    引用带冒号的向量(如v(:))时,将列出向量的所有元素

    Trial>> v = [ 1; 2; 3; 4; 5; 6];    % creating a column vector of 6 elements
    v(:)
    
    ans =
    
         1
         2
         3
         4
         5
         6
    

    例如,创建一个9个元素的行向量rv,然后通过rv(3:7)引用37元素,然后引用来向一个新创建的sub_rv向量赋值。

    Trial>> rv = [1 2 3 4 5 6 7 8 9];
    sub_rv = rv(3:7)
    
    sub_rv =
    
         3     4     5     6     7
    

    向量转置

    使用'表示向量的转置,如r'表示向量r的转置向量

    %.m
    r = [ 1 2 3 4 ];
    tr = r';
    v = [1;2;3;4];
    tv = v';
    disp(tr); disp(tv);
    
    %运行结果
         1
         2
         3
         4
    
         1     2     3     4
    

    附加向量

    MATLAB允许将多个向量附加在一起来创建新的向量。
    假设,如果有两个具有nm个元素的行向量r1r2,通过附加这两个向量来创建nxm个元素的行向量r -

    r=[r1;r2]
    %要做到这一点,这两个向量应该具有相同数量的元素。

    列向量同理

    向量的幅值(大小)

    具有元素为v1v2v3,…,vn的向量v幅值(大小)由下列公式求出:

    |(v)|=(v21+v22+...+v2n)|(v)|=(v12+v22+...+vn2)

    采取以下步骤计算向量大小
    1. 以向量的乘积为单位,使用数组乘法.*。产生向量sv,向量sv的元素是向量v的元素的平方。即:sv = v.*v
    2. 使用sum函数得到向量v的元素的平方和,也称为向量v的点积。即:dp= sum(sv)
    3. 使用sqrt函数得到和的平方根,也是向量v的大小。即:mag = sqrt(s)
    展开全文
  • 文章目录1 DBC文件2 正则表达式函数3 实例:解析报文帧信息4 Matlab脚本5 总结 1 DBC文件 DBC数据库文件是用来描述CAN网络节点间数据通讯的一种文件,做汽车CAN网络通信的话肯定是绕不开DBC文件的。 关于DBC文件格式...
  • 代码有很多,数据,核心函数,脚本文件等等,一开始放到一起还可以,随着函数、数据的增多,这样会特别不方便。 个人建议: 把data放到一个子文件夹,此处是E:\matlabDM\交大课题组\data, 把核心函数(经常调用的...
  •  当你需要给别人拷贝脚本,而脚本引用了许多自己写的或者自己找的文件时,要确定哪些文件是必须的,是一个令人头疼的问题,那么有了这个方法,就可以轻松解决了 [fList,pList] = matlab.codetools....
  • 6.4使用MATLAB脚本分析动态系统 6.4.1蹦极跳的安全性分析 6.4.2汽车行驶控制系统中控制器的调节 6.5Simulink系统仿真常见问题 6.5.1系统状态的确定 6.5.2系统平衡点的确定 6.5.3非线性系统的线性化处理 6.5.4回调...
  • 【入门】用matlab做数字信号处理(学习记录)

    千次阅读 多人点赞 2020-08-04 17:35:46
    【入门】用matlab做数字信号处理(学习记录)一、学会使用matlab(一)DSP常用操作指令使用(二)脚本、函数文件等的编写、引用学习二、DSP仿真试验(一)常见连续信号1. 周期信号:正弦信号、连续方波等2. 非周期...
  • 1.5 MATLAB R2014a 的文件管理 1.5.1 当前文件夹浏览器和路径管理器 1.5.2 搜索路径及其设置 1.6 MATLAB R2014a 的帮助系统 1.6.1 纯文本帮助 1.6.2 演示(Demos)帮助 1.6.3 帮助导航浏览器 1.7 ...
  • 为了使用户能够更好地操作MATLAB,本书中示例的命令已记录在M 文件及其他相关文件中,用户可以将相关的目录设置为工作目录,直接使用M 文件进行操作,以便快速掌握MATLAB 的使用方法。 1.3.3 工作区 1.4 MATLAB R...
  • DM_process从Neuroscan系统获取cnt文件,并使用EEGLAB和 Matlab工具箱对其进行处理以进行ERP分析。 此处理包括过滤,抽取,基线校正,伪影检测/剔除以及计算每个仓中的平均ERP。 DM_process_half是此脚本的一种适应...
  • 使用python进行脑电图分析 ... MAT文件(使用指定格式从matlab导出) 使用记录的DAT文件 样本数据: 在此可以找到EDF文件。 样本数据文件夹中提供了一个样本MAT文件 :此工具箱是该的官方python支持。
  • 参考北邮人论坛上的一个帖子,ALTERA有软件支持生成初始化文件,...article/Circuit/13233 http://www.cnblogs.com/dpc525/admin/Files.aspx 另附MATLAB脚本生成数据 %author:dpc525%Create Date: 2012.02.21%Des...
  • Matlab的边界已扩展到覆盖Octave,更多 或更少的等价物。 *“git help git”很难发现(好吧,至少对某些人而言) 人)。 *模式“git diff / grep”用于提取功能和单词 Rust的边界已被添加。 *“git status...
  • 算法的脚本文件,“pedScaleTable”为脚本中引用的先决条件文件。 (4)名为“projecttext.m”的文件夹中是用MATLAB写的测试文件,主要功能是根据交并比(IOU)阈值 计算检测的精确率(precision)与召回率...
  • 超轮廓-源码

    2021-02-18 12:54:49
    用于在双曲面单元上绘制地质构造和有限应变数据轮廓的MATLAB脚本,包括Vollmer(2018)的Rf / Phi和Elliott极坐标图。 其他文件包括示例数据文件。 | 引文 此代码段包含MATLAB / Octave脚本hypercontour.m,其中...
  • Spring排名 SpringRank是一种用于对有向网络或成对比较集合中的节点进行排名的方法。... matlabMATLAB代码和测试脚本。 r :R代码和测试脚本。 iml_sas: SAS / IML代码。 data :包含示例邻接文件
  • 可以在找到该文件,该文件为开放式访问。 代码已在Matlab 2018a(带有通信工具箱)下进行了测试,但是对于早期版本来说应该可以。 对不起,该存储库的组织不当。 您可以从mre.m和bmre.m找到核心算法MRE和bmre.m 。...
  • hustoj-master.zip

    2019-10-01 17:22:02
    2019-6-12 更新:添加Fortran语言、Matlab(Octave),修订:比赛结束后编辑时丢失提交统计数据、修复部分RE。 2019-5-18 修订:16.04以上版本FB显示异常。 基于OpenJudger的Windows集成便携版 浙传网盘 2019-5-17 ...
  • 优化s树莓派4安装脚本,修补漏洞、合并关于下载排名文件的更新。 11-29 更新 优化输入数据提供方式,提高整体判题效率。 11-28 补丁 修复18.04以上系统里C++编译错误,对C/C++输出中文尝试支持。 11-22 补丁 ...
  • Orange 是一个基于组件的数据挖掘和机器学习软件套装,它的功能即友好,又很强大,快速而又多功能的可视化编程前端,以便浏览数据分析和可视化,基绑定了 Python以进行脚本开发。它包含了完整的一系列的组件以进行...
  • 文中将为您提供如何管理内存的细节,然后将进一步展示如何手工管理内存,如何使用引用计数或者内存池来半手工地管理内存,以及如何使用垃圾收集自动管理内存。 为什么必须管理内存 内存管理是计算机编程最为基本的...

空空如也

空空如也

1 2
收藏数 23
精华内容 9
关键字:

matlab脚本文件引用

matlab 订阅