精华内容
下载资源
问答
  • matlab--蒙特卡罗Monte Carlo

    千次阅读 2018-02-05 20:36:58
    用于问题的准确解,但到的解可能不正确。正确的可能性随着计算时间的增加而增加。 随机数:随机数在概率算法设计中扮演着十分重要的角色。在现实计算机上无法产生真正的随机数,因此在概率算法中使用的...

                    Monte Carlo:               以某个事件的出现概率估算随机事件的概率。另一种是得到随机事件的数字特征,将其作为问题的解。用于求问题的准确解,但求到的解可能不正确。正确的可能性随着计算时间的增加而增加。


    随机数:随机数在概率算法设计中扮演着十分重要的角色。在现实计算机上无法产生真正的随机数,因此在概率算法中使用的随机数都是一定程度上随机的,即伪随机数。


                  产生随机数最常用的方法是线性同余法。由线性同余法产生的随机序列a1,a2,...,an满足

     

                   a0=d

     

                  an=(ban-1+c)mod m n=1,2.......

     

                  其中,b>=0, c>=0,d>=m。d称为该随机序列的种子。(1)


    【matlab随机数】


    Y = random(name,A,B,C,D)

    Parameter A:平均值

    Parameter B:标准偏差

    Parameter C:行数

    Parameter D:列数


    a=random('normal',1,2,2,2)

    a =

        3.7637    3.8177

        0.8119    0.5266


    normal:正态分布。https://cn.mathworks.com/help/stats/random.html?searchHighlight=random&s_tid=doc_srchtitle    有其他方法。



    X = rand(m,n) %在区间(0,1)中返回一个均匀分布的随机数。

    Parameter m:行数         

    Parameter n:列数     

        

    a=rand(2,2)

    a =

       0.9120    0.4364

       0.7349    0.3341


    [monte carlo求解椭圆面积]

    clear

    n=500000;  % 随机生成n个点

    x=rand(1,n);

    y=rand(1,n);

    x=2.*x;

    y=3.*y;

    r=(1/4).*x.*x+(1/9).*y.*y;  % 计算点到圆心的距离

    m=find(r<=1);  % 找到落在椭圆里面的点

    mm=length(m);  % 落在椭圆里面点的个数

    S=(mm/n)*24    % 求椭圆面积

     



    【monte carlo模拟状态空间模型】

    状态空间模型是动态时域模型,以隐含着的时间为自变量。状态空间模型在经济时间序列分析中的应用正在迅速增加。其中应用较为普遍的状态空间模型是由Akaike提出并由Mehra进一步发展而成的典型相关(canonical correlation)方法。

    状态空间模型起源于平稳时间序列分析。当用于非平稳时间序列分析时需要将非平稳时间序列分解为随机游走成分(趋势)和弱平稳成分两个部分分别建模。含有随机游走成分的时间序列又称积分时间序列,因为随机游走成分是弱平稳成分的和或积分。当一个向量值积分序列中的某些序列的线性组合变成弱平稳时就称这些序列构成了协调积分(cointegrated)过程。非平稳时间序列的线性组合可能产生平稳时间序列这一思想可以追溯到回归分析,Granger提出的协调积分概念使这一思想得到了科学的论证。 AokiCochrane等人的研究表明:很多非平稳多变量时间序列中的随机游走成分比以前人们认为的要小得多,有时甚至完全消失。

    load iddata1 z1 %加载估算数据。

    sys = ssest(z1,3);%z1是存储输入输出估计数据的iddata对象.估计一个三阶状态空间模型.

    simsd(sys,z1);%使用蒙特卡洛方法和输入估计数据模拟估计模型的响应,并绘制响应。

     

    ssest:  使用时域或频域数据估计状态空间模型
    simsd: 用蒙特卡洛方法模拟不确定性的线性模型



    [monte carlo模拟不确定性的线性模型]

    更多例子:https://cn.mathworks.com/help/ident/ref/simsd.html?s_tid=doc_ta


    展开全文
  • 蒙特卡罗方法采样算法

    万次阅读 多人点赞 2018-03-21 10:00:58
    蒙特卡罗方法采样算法  蒙特卡罗方法(Monte Carlo Simulation)是一种随机模拟(或者统计模拟)方法。  给定统计样本集,如何估计产生这个样本集的随机变量概率密度函数,是我们比较熟悉的概率密度估计问题。 求解...

    蒙特卡罗方法采样算法

      蒙特卡罗方法(Monte Carlo Simulation)是一种随机模拟(或者统计模拟)方法。

      给定统计样本集,如何估计产生这个样本集的随机变量概率密度函数,是我们比较熟悉的概率密度估计问题。
    求解概率密度估计问题的常用方法是最大似然估计、最大后验估计等。但是,我们思考概率密度估计问题的逆问题:给定一个概率分布p(x),如何让计算机生成满足这个概率分布的样本。
    这个问题就是统计模拟中研究的重要问题–采样(Sampling)。本文将重点介绍其中两种重要的采样算法:MCMC(Markov Chain Monte Carlo)算法和Gibbs Sampling算法。

    Sampling

      一般而言均匀分布Uniform(0,1)的样本是相对容易生成的。 通过线性同余发生器可以生成伪随机数,我们用确定性算法生成[0,1]之间的伪随机数序列后,
    这些序列的各种统计指标和均匀分布Uniform(0,1)的理论计算结果非常接近。这样的伪随机序列就有比较好的统计性质,可以被当成真实的随机数使用。线性同余随机数生成器如下:

    xn+1=(axn+c) mod m

      式中acm是数学推导出的合适的常数。这种算法产生的下一个随机数完全依赖当前的随机数,当随机数序列足够大的时候,随机数会出现重复子序列的情况。
    当然,也有很多更加先进的随机数产生算法出现,比如numpy用的是 Mersenne Twister 等。根据上面的算法现在我们有了均匀分布的随机数,但是如何产生满足其他分布下的随机数呢?

      首先我们来看一个简单的例子,假设我们想对下面的二项分布进行采样:

    P(X=0)=0.5,P(X=1)=0.5

      我们如何采样得到 X 的值。我们会很毫不费力地想到“抛硬币”,如果硬币正面朝上,则X=1,否则, X=0 。那计算机怎么做,使用随机数生成器生成0到1之间的随机数 r
    如果r<0.5,则 X=1 ,否则, X=0 。当分布是多项式分布时:

    P(X=i)=1/6,i1,2,...,6

      这也很简单,让算机生成0到1之间的随机数 r ,把0到1等分成6个子区间,r落在哪个区间, X 就取值为那个区间的编号。我们再考虑更复杂的情况,假设分布是多元随机变量分布:

    P(X1,X2,...,Xn)

      当然这种情况下也有容易解决的例子,比如随机变量都是独立的情形:

    P(X1,X2,...,Xn)=P(X1)P(X2)...P(Xn)

      我们可以利用前面的算法对每个变量单独进行采样。但是问题并不总是这么简单,当 P(X) 的形式很复杂,或者 P(X) 是个高维的分布且不能分解的时候,样本的生成就可能很困难了。
    此时就需要使用一些更加复杂的随机模拟的方法来生成样本。而本节中将要重点介绍的 MCMC 算法和 Gibbs Sampling 算法就是最常用的两种,这两个方法在现代贝叶斯分析中被广泛使用。
    要了解这两个算法,我们首先要对马尔科夫链的平稳分布的性质有基本的认识。

    马尔科夫链及其平稳分布

      马尔科夫链的数学定义如下:

    P(Xt+1=x|Xt,Xt1,...)=P(Xt+1=x|Xt)

      也就是说前一个状态只与当前状态有关,而与其他状态无关,马尔科夫链体现的是状态空间的转换关系,下一个状态只决定于当前的状态。

      下面举一个例子。

      社会学家经常把人按其经济状况分成3类:下层(lower-class)、中层(middle-class)、上层(upper-class),我们用 1, 2, 3 分别代表这三个阶层。
    社会学家们发现决定一个人的收入阶层的最重要的因素就是其父母的收入阶层。如果一个人的收入属于下层类别,那么他的孩子属于下层收入的概率是 0.65, 属于中层收入的概率是 0.28,
    属于上层收入的概率是 0.07。事实上,从父代到子代,收入阶层的变化的转移概率如下

      使用矩阵的表示方式,转移概率矩阵记为

    P=0.65 0.15 0.120.280.670.360.070.180.52

      假设当前这一代人处在下层、中层、上层的人的比例是概率分布向量 π0=[π0(1),π0(2),π0(3)] ,那么他们的子女的分布比例将是 π1=π0P ,
    他们的孙子代的分布比例将是 π2=π1P=π0P2 ,第n代子孙的收入分布比例将是 πn=πn1P=π0Pn

      假设初始概率分布为 π0=(0.2,0.3,0.5) 则我们可以计算前 n 代人的分布状况。

      代码如下:

      结果如下:

    0.2000000 0.3000000 0.5000000
    0.2350000 0.4370000 0.3280000
    0.2576600 0.4766700 0.2656700
    0.2708599 0.4871549 0.2419852
    0.2781704 0.4893492 0.2324804
    0.2821108 0.4894446 0.2284446
    0.2842021 0.4891590 0.2266390
    0.2853019 0.4889031 0.2257950
    0.2858771 0.4887358 0.2253871
    0.2861769 0.4886379 0.2251851
    0.2863329 0.4885836 0.2250835

      我们发现,最终会趋于稳定值。我们把初始分布改为π0=(0.5,0.4,0.1),继续迭代:

    0.5000000 0.4000000 0.1000000
    0.3970000 0.4440000 0.1590000
    0.3437300 0.4658800 0.1903900
    0.3161533 0.4769244 0.2069223
    0.3018690 0.4825543 0.2155767
    0.2944672 0.4854423 0.2200905
    0.2906309 0.4869297 0.2224394
    0.2886423 0.4876977 0.2236600
    0.2876113 0.4880949 0.2242937
    0.2870769 0.4883005 0.2246226
    0.2867997 0.4884070 0.2247932

    最终还是收敛于相同的值。即这个最终分布于初始状态无关。我们迭代转移矩阵 P ,得到:

    P100=0.2865014 0.2865014 0.2865014 0.48852160.48852160.48852160.2249770.2249770.224977

      于是引出如下定理:

       马尔科夫链定理: 如果一个非周期马尔科夫链具有转移概率矩阵 P ,且它的任何两个状态是连通的,那么limnPnij存在且与 i 无关,
    limnPnij=π(j),有

    1

    limnPn=π(1)π(2)π(j) π(1)π(2)π(j)  

    2 π(j)=i=0π(i)Pij

       π 是方程 πP=π 的唯一非负解,其中 π=[π(1),π(2),,π(j),],i=0π(i)=1 , π 称为马尔科夫链的平稳分布。

      马尔科夫链定理非常重要,所有的MCMC方法都是以这个定理作为理论基础的。定理内容有一些需要解释说明的地方:

    • 该定理中马氏链的状态不要求有限,可以是有无穷多个的;

    • 定理中的“非周期“这个概念不解释,因为我们遇到的绝大多数马氏链都是非周期的;

    • 两个状态 i ,j是连通并非指 i 可以直接一步转移到j(Pij>0) ,而是指 i 可以通过有限的n步转移到达 j(Pnij>0)
      马氏链的任何两个状态是连通的含义是指存在一个 n ,使得矩阵Pn中任何一个元素的值大于零。

    • 我们用 Xi 表示在马氏链上跳转第 i 步所处的状态,如果limnPnij=π(j)存在,很容易证明定理第二个结论。

    P(Xn+1=j)=i=1P(Xn=i)P(Xn+1=jxn=i)=i=1P(Xn=i)pij

    MCMC采样算法

      对于给定的概率分布 p(x) ,我们希望能有便捷的方式生成它对应的样本。由于马尔科夫链能收敛到平稳分布,于是一个很的漂亮想法是:
    如果我们能构造一个转移矩阵为 P 的马尔科夫链,使得该马尔科夫链的平稳分布恰好是p(x),那么我们从任何一个初始状态 x0 出发沿着马尔科夫链转移,
    得到一个转移序列 x0,x1,x2,,xn,xn+1, ,如果马尔科夫在第n步已经收敛了,于是我们就得到了 p(x) 的样本 xn,xn+1,

      这个想法在1953 年被Metropolis想到的,首次提出了基于马氏链的蒙特卡罗方法,即Metropolis算法,并在最早的计算机上编程实现。
    Metropolis 算法是首个普适的采样方法,并启发了一系列MCMC方法。Metropolis 的这篇论文被收录在《统计学中的重大突破》中,Metropolis算法也被遴选为二十世纪的十个最重要的算法之一。

      由上一节定理我们看到了,马尔科夫链的收敛性质主要由转移矩阵 P 决定, 所以基于马尔科夫链做采样的关键问题是如何构造转移矩阵P,使得平稳分布恰好是我们要的分布 p(x)
    如何能做到这一点呢?我们主要使用如下的定理。

       细致平稳条件 : 如果非周期马尔科夫链的转移矩阵 P 和分布π(x)满足

    π(i)Pij=π(j)Pjifor all i,j

      则 π(x) 是马尔科夫链的平稳分布,上式被称为细致平稳条件(detailed balance condition)。 其实这个定理是显而易见的,因为细致平稳条件的物理含义就是对于任何两个状态 i,j ,
    i 转移出去到j而丢失的概率质量,恰好会被从 j 转移回i的概率质量补充回来,所以状态ii上的概率质量 π(i) 是稳定的,从而 π(x) 是马尔科夫链的平稳分布。

      假设我们已经有一个转移矩阵为 Q 的马尔科夫链,q(i,j)表示从状态 i 转移到状态j的概率,也可以表示为 q(j|i) 。显然,通常情况下:

    p(i)q(i,j)p(j)q(j,i)

      也就是细致平稳条件不成立,所以 p(x) 不太可能是这个马尔科夫链的平稳分布。我们对马尔科夫链做一个改造,使得细致平稳条件成立。引入一个 α ,我们希望

    p(i)q(i,j)α(i,j)=p(j)q(j,i)α(j,i)

      取什么样的 α 以上等式能成立呢?最简单的,按照对称性,我们可以取:

    α(i,j)=p(j)q(j,i),α(j,i)=p(i)q(i,j)

      于是上述式成立了。 在改造 Q 的过程中引入的α(i,j)称为接受率,物理意义可以理解为在原来的马尔科夫链上,从状态 i q(i,j)的概率转跳转到状态 j 的时候,
    我们以α(i,j)的概率接受这个转移,于是得到新的马尔科夫链的转移概率为 q(i,j)α(i,j) 。假设我们已经有一个转移矩阵 Q ,对应元素为q(i,j),整理上述过程就得到了如下的用于采样概率分布 p(x) 的算法。

      以上的MCMC采样算法已经能很漂亮的工作了,不过它有一个小的问题:马尔科夫链 Q 在转移的过程中的接受率α(i,j)可能偏小,这样采样过程中容易原地踏步,拒绝大量的跳转,使得马尔科夫链收敛到平稳分布 p(x) 的速度太慢。

      假设 α(i,j)=0.1,α(j,i)=0.2 此时满足细致平稳条件,于是

    p(i)q(i,j)0.1=p(j)q(j,i)0.2

      上式两边同时扩大5倍,等式变为

    p(i)q(i,j)0.5=p(j)q(j,i)1

      我们提高了接受率,而细致平稳条件并没有打破。这启发我们可以把细致平稳条件中 α(i,j),α(j,i) 等比例放大,使得两数中较大的一个放大到1,如此提高了采样中的跳转接受率。
    故可以 α(i,j)=min{p(j)q(j,i)p(i)q(i,j),1} 。于是,经过对上述MCMC采样算法中接受率的改造,我们就得到了最常见的Metropolis-Hastings算法。

    Gibbs Sampling

      对于高维的情形,由于接受率 α 的存在,以上Metropolis-Hastings算法的效率不够高。能否找到一个转移矩阵 Q 使得接受率α=1呢?
    我们先看看二维的情形,假设有一个概率分布 p(x,y) ,考察 x 坐标相同的两个点A(x1,y1),B(x1,y2),我们发现:

    p(x1,y1)p(y2|x1)=p(x1)p(y1|x1)p(y2|x1)

    p(x1,y2)p(y1|x1)=p(x1)p(y2|x1)p(y1|x1)

      所以得到

    p(x1,y1)p(y2|x1)=p(x1,y2)p(y1|x1)

      即:

    p(A)p(y2|x1)=p(B)p(y1|x1)

      基于以上等式,我们发现,在 x=x1 这条平行于y轴的直线上,如果使用条件分布 p(y|x1) 做为任何两个点之间的转移概率,那么任何两个点之间的转移满足细致平稳条件。
    同样的,如果我们在 y=y1 这条直线上任意取两个点 A(x1,y1),C(x2,y1) ,也有如下等式

    p(A)p(x2|y1)=p(C)p(x1|y1).

      于是这个二维空间上的马氏链将收敛到平稳分布 p(x,y) ,而这个算法就称为 Gibbs Sampling 算法,是Stuart GemanDonald Geman 这两兄弟于1984年提出来的,
    之所以叫做Gibbs Sampling是因为他们研究了Gibbs random field , 这个算法在现代贝叶斯分析中占据重要位置。

      如果当前状态为 x1,x2,,xn 转移的过程中,只能沿着坐标轴做转移。沿着 xi 坐标轴做转移的时候,转移概率由条件概率 p(xi|x1,x2,,xi1,xi+1,,xn) 定义。
    其它无法沿着单根坐标轴进行的跳转,转移概率都设置为0。 于是Gibbs Smapling算法可以描述为:

    JAVA程序

    对应的java程序为:
    https://github.com/endymecy/MCMC-sampling

    Gibbs采样程序:

    package main.java.sample;
    
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Hashtable;
    import java.util.Random;
    
    /**
     *
     * Gibb's Sampling Steps:<br>
     * 1. Set every variable to a random value.<br>
     * 2. Choose a variable to update. <br>
     * 3. Randomly Select (aka "Sample") a new value for the variable based on the
     * current conditions. <br>
     * 4. Repeat from Step 2.
     *
     *
     */
    public class Gibbs {
    
        private static ArrayList<String> sequences = new ArrayList<String>();
        Hashtable<String, Integer> start;
        private int motifLength;
    
        /**
         * Constructs and performs Gibb's Sampling in order to find repeated motifs.
         *
         * @param seq
         *            A String array of the sequences that will be used.
         * @param motifLength
         *            An Integer that shows the length of the motif or pattern we
         *            are trying to find, this value is given.
         */
        public Gibbs(String[] seqArray, int motifLength) {
            sequences.addAll(Arrays.asList(seqArray));
            this.motifLength = motifLength;
            this.start = generateRandomValue();
            sample();
            System.out.println(start);
        }
    
        /**
         * This method is repeated 2000 times.
         *
         * @param start
         *            A HashTable containing the sequence as a key, and the random
         *            integer to be used as the value.
         */
        private void sample() {
            for (int j = 0; j < 2000; j++) {
                Random rand = new Random();
                int chosenSeqIndex = rand.nextInt(sequences.size());
                String chosenSequence = sequences.get(chosenSeqIndex);
                ArrayList<Double> scores = new ArrayList<Double>();
                // i = possibleStart
                for (int i = 0; i < chosenSequence.length() - motifLength + 1; i++) {
                    String tempMotif = chosenSequence.substring(i, i + motifLength);
                    double p = calculateP(tempMotif, chosenSeqIndex);
                    double q = calculateQ(tempMotif, chosenSeqIndex, i);
                    scores.add(q / p);
                }
                double sum = 0;
                for (double d : scores) {
                    sum += d;
                }
                for (int i = 0; i < scores.size(); i++) {
                    scores.set(0, scores.get(i) / sum);
                }
    
                double random = rand.nextDouble();
                double dubsum = 0;
                for (double d : scores) {
                    dubsum += d;
                    if (random == dubsum) {
                        start.put(chosenSequence, scores.indexOf(d));
                    }
                }
            }
    
        }
    
        /**
         * Calculates the probability of a letter in this position.
         *
         * @param tempMotif
         *            The motif being used for this calculation.
         * @param chosenSeqIndex
         *            The index of the sequence being used for this calculation,
         *            useful for skipping all of this sequences calculations and
         *            focusing on the other ones.
         * @return A double of the probability of a letter in this position.
         */
        private double calculateQ(String tempMotif, int chosenSeqIndex,
                                  int possibleStart) {
            double q = 1;
            int start = possibleStart;
            int end = possibleStart + tempMotif.length();
            double denominator = sequences.size() - 1;
            for (String s : sequences) {
                double numerator = 0;
                if (s.equals(sequences.get(chosenSeqIndex)))
                    continue;
                if (end > s.length()) {
                    q *= 0.01;
                    continue;
                }
                String thisMotif = s.substring(start, end);
                char[] letters = tempMotif.toCharArray();
                char[] seqLetters = thisMotif.toCharArray();
    
                for (int i = 0; i < tempMotif.length(); i++) {
                    if (letters[i] == seqLetters[i])
                        numerator++;
                }
                if (numerator == 0)
                    q *= 0.01;
                else
                    q *= (numerator / denominator);
            }
            return q;
        }
    
        /**
         * Calculates the probability of a letter randomly selected.
         *
         * To find this value, the method loops through each letter of the selected
         * temporary motif, and loops through the other sequences. While looping
         * through the other sequences, we find the amount of same letters in each
         * other sequence, along with the total length of all other sequences. The
         * value P is a product of every result, each result being the amount of
         * letters of the same kind over the total amount of letters.
         *
         * @param tempMotif
         *            The motif being used for this calculation.
         * @param chosenSeqIndex
         *            The index of the sequence being used for this calculation,
         *            useful for skipping all of this sequences calculations and
         *            focusing on the other ones.
         * @return A double of the probability of a letter randomly selected.
         */
        private double calculateP(String tempMotif, int chosenSeqIndex) {
            double p = 1;
            for (char c : tempMotif.toCharArray()) {
                double sameLetters = 0;
                double totalLength = 0;
                for (String s : sequences) {
                    if (s.equals(sequences.get(chosenSeqIndex)))
                        continue;
                    char[] seqLetters = s.toCharArray();
                    for (char x : seqLetters)
                        if (c == x)
                            sameLetters++;
                    totalLength += s.length();
                }
                p *= (sameLetters / totalLength);
            }
            return p;
        }
    
        /**
         * Calculates and stores every random value. Generates a random from 0 to a
         * value of each individual sequences length subtracted by the motif length.
         *
         * @return A HashTable containing the sequence as a key, and the random
         *         integer to be used as the value.
         */
        private Hashtable<String, Integer> generateRandomValue() {
            Random rand = new Random();
            Hashtable<String, Integer> randomValues = new Hashtable<String, Integer>();
            for (String seq : sequences) {
                int randomVal = rand.nextInt(seq.length() - motifLength);
                randomValues.put(seq, randomVal);
            }
            return randomValues;
        }
    
        public static void main(String[] args) {
            String[] data = { "ABCDAAAABDB", "AAAADCBBCA", "DDBCABAAAACBBD",
                    "AABAAAACCDD" };
            int length = 4;
            @SuppressWarnings("unused")
            Gibbs gibbs = new Gibbs(data, length);
        }
    
    }
    

    参考文献

    【1】蒙特卡洛方法采样算法

    【2】随机采样方法整理与讲解(MCMC、Gibbs Sampling等)

    原文来自

    endymecy所写程序中的理论部分。
    https://github.com/endymecy/MCMC-sampling

    展开全文
  • 在贝叶斯统计中,使用概率来量化未知参数的不确定性,因而未知参数被视为随机变量。 贝叶斯推断 贝叶斯推断是结合有关模型或模型参数的先验知识来分析统计模型的过程。这种推断的根基是贝叶..

    原文链接:http://tecdat.cn/?p=24103

    原文出处:拓端数据部落公众号

    此示例说明如何使用逻辑回归模型进行贝叶斯推断。

    统计推断通常基于最大似然估计 (MLE)。MLE 选择能够使数据似然最大化的参数,是一种较为自然的方法。在 MLE 中,假定参数是未知但固定的数值,并在一定的置信度下进行计算。在贝叶斯统计中,使用概率来量化未知参数的不确定性,因而未知参数被视为随机变量。

    贝叶斯推断

    贝叶斯推断是结合有关模型或模型参数的先验知识来分析统计模型的过程。这种推断的根基是贝叶斯定理:

    例如,假设我们有正态观测值

    其中 sigma 是已知的,theta 的先验分布为

    在此公式中,mu 和 tau(有时也称为超参数)也是已知的。如果观察 X 的 n 个样本,我们可以获得 theta 的后验分布

    下图显示 theta 的先验、似然和后验。

    
    y = norpdf(thta, posMan,psSD);
    plot(theta'-', theta,'--', theta,'-.')
    

    汽车实验数据

    在一些简单的问题中,例如前面的正态均值推断示例,很容易计算出封闭形式的后验分布。但是,在涉及非共轭先验的一般问题中,后验分布很难或不可能通过分析来进行计算。我们将以逻辑回归作为示例。此示例包含一个实验,以帮助建模不同重量的汽车在里程测试中的未通过比例。数据包括被测汽车的重量、汽车数量以及失败次数等观测值。我们采用一组经过变换的重量,以减少回归参数估值的相关性。

    % 一组汽车的重量
    % 每个重量下测试的汽车数量
    [48 42 31 34 31 21 23 23 21 16 17 21]';
    % 在每个重量上有不良mpg表现的汽车数量
    [1 2 0 3 8 8 14 17 19 15 17 21]';
    

    逻辑回归模型

    逻辑回归(广义线性模型的一种特例)适合这些数据,因为因变量呈二项分布。逻辑回归模型可以写作:

    $$P(\mathrm{failure}) = \frac{e^{Xb}}{1+e^{Xb}}$$

    其中 X 是设计矩阵,b 是包含模型参数的向量。我们可以将此方程写作:

     @(b,x) exp(b(1)+b(2).*x)./(1+exp(b(1)+b(2).*x));
    

    如果您有一些先验知识或者已经具备某些非信息性先验,则可以指定模型参数的先验概率分布。例如,在此示例中,我们使用正态先验值表示截距 b1 和斜率 b2,即

    @(b1) normpdf(b1,0,20); % 截距的先验。
    @(b2) normpdf(b2,0,20); % 斜率的先验。
    
    

    根据贝叶斯定理,模型参数的联合后验分布与似然和先验的乘积成正比。

    请注意,此模型中后验的归一化常数很难进行分析。但是,即使不知道归一化常数,如果您知道模型参数的大致范围,也可以可视化后验分布。

    
    msh(b2,b1,sipot)
    view(-10,30)
    

    此后验沿参数空间的对角线伸长,表明(在我们观察数据后)我们认为参数是相关的。这很有意思,因为在我们收集任何数据之前,我们假设它们是独立的。相关性来自我们的先验分布与似然函数的组合。

    切片采样

    蒙特卡罗方法常用于在贝叶斯数据分析中汇总后验分布。其想法是,即使您不能通过分析的方式计算后验分布,也可以从分布中生成随机样本,并使用这些随机值来估计后验分布或推断的统计量,如后验均值、中位数、标准差等。切片采样是一种算法,用于从具有任意密度函数的分布中进行抽样,已知项最多只有一个比例常数 - 而这正是从归一化常数未知的复杂后验分布中抽样所需要的。此算法不生成独立样本,而是生成马尔可夫序列,其平稳分布就是目标分布。因此,切片抽样器是一种马尔可夫链蒙特卡罗 (MCMC) 算法。但是,它与其他众所周知的 MCMC 算法不同,因为只需要指定缩放的后验,不需要建议分布或边缘分布。

    此示例说明如何使用切片抽样器作为里程测试逻辑回归模型的贝叶斯分析的一部分,包括从模型参数的后验分布生成随机样本、分析抽样器的输出,以及对模型参数进行推断。第一步是生成随机样本。

     sliesmle(inial,nsapes,'pdf');
    

    采样器输出分析

    从切片采样获取随机样本后,很重要的一点是研究诸如收敛和混合之类的问题,以确定将样本视为是来自目标后验分布的一组随机实现是否合理。观察边缘轨迹图是检查输出的最简单方法。

    
    plot(trace(:,1))
    

    从这些图中可以明显看出,在处理过程趋于平稳之前,参数起始值的影响会维持一段时间(大约 50 个样本)才会消失。

    检查收敛以使用移动窗口计算统计量(例如样本的均值、中位数或标准差)也很有帮助。这样可以产生比原始样本轨迹更平滑的图,并且更容易识别和理解任何非平稳性。

    mvag = fier( (1/50)*os(50,1), 1, tace);
    plot(moav(:,1))
    

    由于这些是基于包含 50 次迭代的窗口计算的移动平均值,因此前 50 个值无法与图中的其他值进行比较。然而,每个图的其他值似乎证实参数后验均值在 100 次左右迭代后收敛至平稳分布。同样显而易见的是,这两个参数彼此相关,与之前的后验密度图一致。

    由于磨合期代表目标分布中不能合理视为随机实现的样本,因此不建议使用切片采样器一开始输出的前 50 个左右的值。您可以简单地删除这些输出行,但也可以指定一个“预热”期。在已知合适的预热长度(可能来自先前的运行)时,这种方式很简便。

    slcsapl(inial,nsmes,'pf',pot, ..'brin',50);
    plot(trace(:,1))
    
    

    这些跟踪图没有显示出任何不平稳,表明预热期已完成。

    但是,还需要了解跟踪图的另一方面。虽然截距的轨迹看起来像高频噪声,但斜率的轨迹好像具有低频分量,表明相邻迭代的值之间存在自相关。虽然也可以从这个自相关样本计算均值,但我们通常会通过删除样本中的冗余数据这一简便的操作来降低存储要求。如果它同时消除了自相关,我们还可以将这些数据视为独立值样本。例如,您可以通过只保留第 10 个、第 20 个、第 30 个等值来稀释样本。

    sceampe(...
                                                    'brin'50,'tin',10);
    

    要检查这种稀释的效果,可以根据轨迹估计样本自相关函数,并使用它们来检查样本是否快速混合。

     fftetendtrce,'cnsant');
     F .* coj(F);
    
    
    for i = 1:2
       lineles =  stem(:20, F(:i)  'filled' , 'o');
    
    

    第一个滞后的自相关值对于截距参数很明显,对于斜率参数更是如此。我们可以使用更大的稀释参数重复抽样,以进一步降低相关性。但为了完成本示例的目的,我们将继续使用当前样本。

    推断模型参数

    与预期相符,样本直方图模拟了后验密度图。

    hist(rce,[25,25]);
    
    view(-10,30)
    

    您可以使用直方图或核平滑密度估计值来总结后验样本的边缘分布属性。

    
    kdeiy(rae(:2))
    

    您还可以计算描述性统计量,例如随机样本的后验均值或百分位数。为了确定样本大小是否足以实现所需的精度,将所需的轨迹统计量作为样本数的函数来进行查看会很有帮助。

    csu= csm(rae);
    
    plot(csm(:,1)'./(1:sals))
    

    在这种情况下,样本大小 1000 似乎足以为后验均值估计值提供良好的精度。

    mean(te)
    

    总结

    您能够轻松地指定似然和先验。您也可以将它们结合起来用于推断后验分布。您可以通过马尔可夫链蒙特卡罗仿真在 MATLAB 中执行贝叶斯分析。


    最受欢迎的见解

    1.matlab使用贝叶斯优化的深度学习

    2.matlab贝叶斯隐马尔可夫hmm模型实现

    3.R语言Gibbs抽样的贝叶斯简单线性回归仿真

    4.R语言中的block Gibbs吉布斯采样贝叶斯多元线性回归

    5.R语言中的Stan概率编程MCMC采样的贝叶斯模型

    6.Python用PyMC3实现贝叶斯线性回归模型

    7.R语言使用贝叶斯 层次模型进行空间数据分析

    8.R语言随机搜索变量选择SSVS估计贝叶斯向量自回归(BVAR)模型

    9.matlab贝叶斯隐马尔可夫hmm模型实现

    展开全文
  • matlab之产品大全

    千次阅读 多人点赞 2020-12-16 19:30:59
    matlab大全链接:入口1或者入口2 这里仅对matlab存在的工具做一个简单梳理,方便日后使用。 Matlab版本:R2020b ... 您可以使用提供的线性和非线性模型库进行回归分析,也可以指定自己的自定义方程式。 该...

    matlab大全链接:入口1 或者  入口2

    这里仅对matlab2020存在的工具做一个简单梳理,方便日后使用。


    目录

    一、数学、统计和优化

    1.曲线拟合工具箱

    2.深度学习HDL工具箱

    3.深度学习工具箱(中文)

    4.全局优化工具箱

    5.优化工具箱(中文)

    6.偏微分方程工具箱

    7.统计和机器学习工具箱(中文)

    8.符号数学工具箱

    9.文本分析工具箱

    二、数据科学和深度学习

    1.深度学习HDL工具箱

    2.深度学习工具箱(中文)

    3.预测维修工具箱

    4.强化学习工具箱

    5.统计和机器学习工具箱(中文)

    6.文本分析工具箱

    三、信号处理与无线通信

    1.5G的工具箱

    2.天线的工具箱

    3.音频工具箱

    4.通信工具箱

    5.DSP系统工具箱

    6.LTE工具箱

    7.相控阵系统工具箱

    8.射频工具箱

    9.传感器融合和跟踪工具箱

    10.SerDes 工具箱

    11.信号处理工具箱(中文)

    12.小波工具箱

    13.WLAN工具箱

    1.音频工具箱

    2.通信工具箱

    3.DSP系统工具箱

    4.混合信号Blockset

    5.相控阵系统工具箱

    6.RF Blockset

    7.SerDes 工具箱

    8.SoC 块集无线

    9.无线HDL工具箱

    四、控制系统

    1.航空航天工具箱

    2.控制系统工具箱

    3.fuzzy逻辑工具箱

    4.模型预测控制工具箱

    5.基于模型的标定工具箱

    6.预测维修工具箱

    7.强化学习工具箱

    8.鲁棒控制工具箱

    9.系统提供的工具箱

    1.Aerospace Blockset

    2.电机控制Blockset

    3.动力总成块集

    4.simulink控制设计

    5.simulink设计优化

    6.优化车辆动力学块集

    五、图像处理和计算机视觉

    1.计算机视觉工具箱

    2.图像采集工具箱

    3.图像处理工具箱(中文)

    4.激光雷达工具箱

    5.映射工具箱

    6.Vision HDL工具箱

    六、并行计算

    1.MathWorks云中心

    2.MATLAB并行服务器

    3.并行计算工具箱

    七、测试和测量

    1.数据采集工具箱

    2.图像采集的工具箱

    3.仪器控制工具箱

    4.OPC工具箱

    5.ThingSpeak

    6.车辆网络工具箱

    八、计算金融学

    1.数据库工具箱

    2.数据处理工具箱

    3.计量经济学的工具箱

    4.金融工具的工具箱

    5.金融工具箱

    6.风险管理工具箱

    7.电子表格的链接

    8.交易的工具箱

    九、计算生物学

    1.生物信息学工具箱

    2.模拟生物学

    十、应用程序部署

    1.MATLAB编译器

    2.MATLAB编译器SDK

    3.MATLAB生产服务器

    4.MATLAB Web App服务器

    十一、基于事件建模

    1.SimEvents

    2.Stateflow

    十二、物理建模

    1.Simscape

    2.Simscape传动系统

    3.Simscape电气

    4.Simscape流体

    5.Simscape多体

    6.Simscape多体链接

    十三、机器人和自主系统

    1.自动驾驶工具箱

    2.激光雷达工具箱

    3.导航工具箱

    4.公路跑者

    5.机器人系统工具箱

    6.ROS工具箱

    7.传感器融合和跟踪工具箱

    8.无人机工具箱

    十四、实时仿真和测试

    1.Simulink Desktop实时

    2.Simulink实时

    十五、代码生成

    1.深度学习HDL工具箱

    2.Embedded Coder

    3.滤波器设计HDL编码器

    4.Fixed-Point Designer

    5.GPU编码器

    6.HDL编码器

    7.HDL验证器

    8.MATLAB Coder

    9.视觉HDL工具箱

    十六、验证、确认和测试

    1.HDL验证器

    2.多边形错误查找器

    3.Polyspace Bug Finder访问

    4.Polyspace Bug Finder服务器

    5.多边形验证码

    6.Polyspace代码验证访问

    7.Polyspace代码验证服务器

    8.Ada的Polyspace产品

    9.Simulink Check

    10.Simulink覆盖范围

    11.Simulink设计验证器

    12.Simulink测试

    十七、数据库访问和报告

    1.数据库工具箱

    2.MATLAB报告生成器

    十八、仿真图形和报告

    1.Simulink 3D动画

    2.Simulink报告生成器

    十九、系统工程

    1.Simulink要求

    2.状态流

    3.System Composer



    Matlab版本:R2020b

    应用如下:

    一、数学、统计和优化

    1.曲线拟合工具箱

    使用回归,插值和平滑使曲线和曲面适合数据

    Curve Fitting Toolbox™:提供了用于将曲线和曲面拟合到数据的应用程序和功能。 该工具箱可让您执行探索性数据分析,预处理和后处理数据,比较候选模型并删除异常值。 您可以使用提供的线性和非线性模型库进行回归分析,也可以指定自己的自定义方程式。 该库提供了优化的求解器参数和起始条件,以提高拟合质量。 该工具箱还支持非参数建模技术,例如样条,插值和平滑。

    建立拟合后,您可以应用各种后处理方法进行绘图,内插和外推; 估计置信区间; 并计算积分和导数。


    • 开始使用

    了解曲线拟合工具箱的基础

    • 线性和非线性回归

    使用线性或非线性库模型或自定义模型拟合曲线或曲面

    • 插补

    拟合插值曲线或曲面,估计已知数据点之间的值

    • 平滑处理

    使用平滑样条和局部回归进行拟合,使用移动平均值和其他过滤器对数据进行平滑

    • 适合后处理

    绘制,离群值,残差,置信区间,验证数据,积分和导数,生成MATLAB®代码

    • 花键

    构造带有或不带有数据的样条线; ppform,B形,张量积,有理和变形薄板样条


    2.深度学习HDL工具箱

    在FPGA和SoC上原型化并部署深度学习网络

    Deep Learning HDL Toolbox™提供了在FPGA和SoC上原型化和实现深度学习网络的功能和工具。 它提供了预构建的比特流,可在受支持的Xilinx®和Intel®FPGA和SoC器件上运行各种深度学习网络。 通过分析和评估工具,您可以通过探索设计,性能和资源利用之间的折衷来定制深度学习网络。

    深度学习HDL工具箱使您能够自定义深度学习网络的硬件实现,并生成可移植的,可综合的Verilog®和VHDL®代码,以部署在任何FPGA上(使用HDL Coder™和Simulink®)。


    • 开始使用

    了解深度学习HDL工具箱的基础

    • FPGA上的深度学习原型网络

    估算串联网络的性能。 使用MATLAB®从目标设备分析和检索推理结果

    • 深度学习处理器定制和IP生成

    配置,构建和生成自定义比特流和处理器IP内核,估算和基准化自定义深度学习处理器性能

    • DL处理器IP内核的系统集成

    手动将生成的深度学习(DL)处理器IP内核集成到系统设计中

    • 深度学习INT8量化

    校准,验证和部署量化的预训练系列深度学习网络

    • 深度学习HDL工具箱支持的硬件

    支持第三方硬件,例如Intel和Xilinx FPGA板


    3.深度学习工具箱(中文)

    解决多个最大值,多个最小值和不平滑的优化问题

    全局优化工具箱提供的功能可搜索包含多个最大值或最小值的问题的全局解决方案。工具箱求解器包括代理,模式搜索,遗传算法,粒子群,模拟退火,多次启动和全局搜索。您可以将这些求解器用于目标或约束函数是连续,不连续,随机,不具有导数或不包含模拟或黑盒函数的优化问题。对于具有多个目标的问题,您可以使用遗传算法或模式搜索求解器来识别Pareto前沿。

    您可以通过调整选项以及对适用的求解器自定义创建,更新和搜索功能来提高求解器效率。您可以将自定义数据类型与遗传算法和模拟退火求解器一起使用,以表示用标准数据类型不易表达的问题。混合函数选项使您可以通过在第一个求解器之后应用第二个求解器来改进解决方案。


    • 开始使用

    了解全局优化工具箱的基础

    • 优化问题设置

    选择求解器,定义目标函数和约束,并行计算

    • 全局或多个起点搜索

    多个起点求解器,用于基于约束或不受约束的基于梯度的优化

    • 直接搜寻

    模式搜索求解器,用于无导数优化,有约束或无约束

    • 遗传算法

    遗传算法求解器,用于混合整数或连续变量优化,有约束或无约束

    • 粒子群

    粒子群求解器可实现无导数无约束优化或有界优化

    • 替代优化

    具有边界和可选整数约束的昂贵目标函数的替代优化求解器

    • 模拟退火

    模拟退火求解器,用于无导数无约束优化或有界优化

    • 多目标优化

    通过遗传或模式搜索算法的帕累托集,有或没有约束


    4.全局优化工具箱

    设计、训练和分析深度学习网络

    Deep Learning Toolbox™ 提供了一个用于通过算法、预训练模型和 App 来设计和实现深度神经网络的框架。您可以使用卷积神经网络(ConvNet、CNN)和长短期记忆 (LSTM) 网络对图像、时序和文本数据执行分类和回归。您可以使用自动微分、自定义训练循环和共享权重来构建网络架构,如生成对抗网络 (GAN) 和孪生网络。使用 Deep Network Designer,您能够以图形方式设计、分析和训练网络。Experiment Manager 可帮助您管理多个深度学习试验,跟踪训练参数,分析结果,并比较不同试验的代码。您可以可视化层激活,并以图形方式监控训练进度

    您可以通过 ONNX™ 格式与 TensorFlow™ 和 PyTorch 交换模型,并从 TensorFlow-Keras 和 Caffe 导入模型。该工具箱支持使用 DarkNet-53、ResNet-50、NASNet、SqueezeNet 和许多其他预训练模型进行迁移学习。

    您可以在单 GPU 或多 GPU 工作站(安装了 Parallel Computing Toolbox™)上加快训练速度,或扩展到群集和云,包括 NVIDIA® GPU Cloud 和 Amazon EC2® GPU 实例(安装了 MATLAB® Parallel Server™)。


    • Deep Learning Toolbox 快速入门

    Deep Learning Toolbox 基础知识学习

    • 图像深度学习

    从头开始训练卷积神经网络或使用预训练的网络快速学习新任务

    • 时序、序列和文本深度学习

    创建和训练用于时序分类、回归和预测任务的网络

    • 深度学习调整和可视化

    管理试验,绘制训练进度、评估准确度、进行预测、调整训练选项以及将网络学习的特征可视化

    • 通过并行计算和云进行深度学习

    在本地使用多个 GPU 或在云中扩展深度学习,并以交互方式或批处理作业的形式训练多个网络

    • 深度学习应用

    扩展深度学习工作流在计算机视觉、图像处理、自动驾驶、信号和音频领域的应用

    • 深度学习导入、导出和自定义

    导入、导出和自定义深度学习网络,并自定义层、训练循环和损失函数

    • 深度学习数据预处理

    管理和预处理深度学习数据

    • 深度学习代码生成

    生成 MATLAB 代码或 CUDA® 和 C++ 代码,并部署深度学习网络

    • 函数逼近、聚类和控制

    使用浅层神经网络执行回归、分类和聚类,以及对非线性动态系统建模


    5.优化工具箱(中文)

    求解线性、二次、整数和非线性优化问题
    Optimization Toolbox™ 提供了多个函数,这些函数可在满足约束的同时求出可最小化或最大化目标的参数。该工具箱包含适用于下列各项的求解器:线性规划 (LP)、混合整数线性规划 (MILP)、二次规划 (QP)、非线性规划 (NLP)、约束线性最小二乘、非线性最小二乘和非线性方程。您可以用函数和矩阵来定义优化问题,也可以通过指定反映底层数学关系的变量表达式来定义

    您可以使用该工具箱提供的求解器求连续和离散问题的最优解执行权衡分析,并将优化方法融入算法和应用中。该工具箱允许您执行设计优化任务,包括参数估计、分量选择和参数调整。它可用于在投资组合优化、资源分配以及生产计划和调度等应用中求最优解。


    • Optimization Toolbox 快速入门

    Optimization Toolbox 基础知识学习

    • 基于问题的优化设置

    使用变量和表达式表示优化问题,以串行或并行方式求解

    • 基于求解器的优化问题设置

    选择求解器,定义目标函数和约束,并行计算

    • 非线性优化

    以串行或并行方式求解具有一个或多个目标的有约束或无约束非线性问题

    • 线性规划和混合整数线性规划

    求解具有连续变量和整数变量的线性规划问题

    • 二次规划

    用二次目标和线性约束求解问题

    • 最小二乘

    求解最小二乘(曲线拟合)问题

    • 非线性方程组

    以串行或并行方式求解非线性方程组

    • 优化结果

    了解求解器输出并改进结果


    6.偏微分方程工具箱

    使用有限元分析法求解偏微分方程

    Partial Differential Equation Toolbox™提供使用有限元分析来解决结构力学,传热和一般偏微分方程(PDE)的功能。

    您可以执行线性静态分析以计算变形,应力和应变。为了对结构动力学和振动进行建模,工具箱提供了直接时间积分求解器。您可以通过执行模态分析来找到固有频率和模态形状,从而分析组件的结构特征。您可以对传导主导的传热问题进行建模,以计算温度分布,热通量和通过表面的热流率。您还可以解决标准问题,例如扩散,静电和静磁以及自定义PDE

    偏微分方程工具箱可让您从STL或网格数据导入2D和3D几何。您可以自动生成具有三角形和四面体元素的网格。您可以使用有限元方法求解PDE,并对结果进行后处理以进行探索和分析。


    • 开始使用

    了解偏微分方程工具箱的基础

    • 几何和网格

    定义几何并使用三角形或四面体网格离散化

    • 结构力学

    解决线性静态,瞬态,模态分析和频率响应问题

    • 传播热量

    通过边界处的对流和辐射解决传导主导的传热问题

    • 电磁学

    解决建模电场和磁场的问题

    • 通用PDE

    解决一般线性和非线性PDE,以解决平稳,与时间有关和特征值问题


    7.统计和机器学习工具箱(中文)

    使用统计信息和机器学习分析数据并为数据建模

    Statistics and Machine Learning Toolbox™ 提供了用于描述数据、分析数据以及为数据建模函数和 App。您可以使用描述性统计量和绘图进行探索性数据分析,对数据进行概率分布拟合,生成进行蒙特卡罗仿真的随机数,以及执行假设检验回归算法和分类算法允许您从数据做出推断并构建预测模型。

    对于多维数据分析,Statistics and Machine Learning Toolbox 提供了特征选择、逐步回归、主成分分析 (PCA)、正则化以及其他降维方法,让您能够识别影响模型的变量或特征

    此工具箱提供有监督和无监督的机器学习算法,包括支持向量机 (SVM)、提升决策树和装袋决策树、k 最近邻、k 均值、k 中心点、层次聚类、高斯混合模型以及隐马尔可夫模型。可以使用许多统计算法机器学习算法来计算因为太大而无法存储在内存中的大型数据集。


    • Statistics and Machine Learning Toolbox 快速入门

    Statistics and Machine Learning Toolbox 基础知识学习

    • 描述性统计量和可视化

    数据的导入和导出、描述性统计量、可视化

    • 概率分布

    数据频数模型、随机样本生成、参数估计

    • 假设检验

    t 检验、F 检验、卡方拟合优度检验等

    • 聚类分析

    无监督学习方法,用于查找数据中的自然分组和模式

    • ANOVA

    方差与协方差分析、多元 ANOVA、重复测量 ANOVA

    • 回归

    有监督学习的线性、广义线性、非线性和非参数化方法

    • 分类

    用于二类问题和多类问题的有监督学习算法

    • 降维和特征提取

    PCA、因子分析、特征选择、特征提取等

    • 工业统计

    实验设计 (DOE);生存和可靠性分析;统计过程控制

    • 使用 tall 数组的大数据分析

    分析无法放入内存的数据

    • 加快统计计算速度

    统计函数的并行计算或分布式计算

    • 代码生成

    为 Statistics and Machine Learning Toolbox 函数生成 C/C++ 代码和 MEX 函数


    8.符号数学工具箱

    执行符号数学计算

    Symbolic Math Toolbox™提供了用于求解,绘制和操纵符号数学方程式的功能。您可以使用MATLAB®Live Editor创建,运行和共享符号数学代码。该工具箱提供了常见数学领域的功能,例如微积分,线性代数,代数和常微分方程,方程简化和方程操纵

    使用符号数学工具箱,您可以分析执行微分,积分,简化,变换和方程式求解。您可以使用SI和US单位系统执行尺寸计算和转换。您可以通过分析或使用可变精度算术来执行计算,结果以数学排版显示。

    您可以与其他MATLAB用户共享符号工作作为实时脚本,也可以将它们转换为HTML或PDF进行发布。您可以直接从符号表达式生成MATLAB函数,Simulink®功能块和Simscape™方程。


    • 开始使用

    了解符号数学工具箱的基础

    • MATLAB中的符号计算

    符号变量,表达式,函数,符号与数字之间的转换

    • 数学

    方程求解,公式简化,演算,线性代数等

    • 图形

    二维和三维图,数据探索和可视化技术

    • 代码生成

    在MATLAB,Simulink,Simscape,C,Fortran和LaTeX中使用符号结果

    • MuPAD到MATLAB的移植

    将MuPAD®笔记本迁移到MATLAB脚本


    9.文本分析工具箱

    分析和建模文本数据

    Text Analytics Toolbox™提供了用于预处理,分析和建模文本数据的算法和可视化效果。 使用工具箱创建的模型可以用于诸如情感分析,预测性维护和主题建模之类的应用程序中。

    文本分析工具箱包含用于处理来自设备日志,新闻提要,调查,操作员报告和社交媒体等来源的原始文本的工具。 您可以从流行的文件格式中提取文本,预处理原始文本,提取单个单词,将文本转换为数字表示形式,并建立统计模型

    使用LSA,LDA和词嵌入之类机器学习技术,您可以从高维文本数据集中找到聚类并创建特征。 可以将使用Text Analytics Toolbox创建的功能与其他数据源的功能组合起来,以构建利用文本,数字和其他类型数据的机器学习模型


    • 开始使用

    了解文本分析工具箱的基础

    • 文字数据准备

    将文本数据导入MATLAB®并进行预处理以进行分析

    • 建模与预测

    使用主题模型和词嵌入开发预测模型

    • 显示和演示

    使用词云和文本散点图可视化文本数据和模型

    • 语言支援

    文本分析工具箱中有关语言支持的信息


    二、数据科学和深度学习

    1.深度学习HDL工具箱

    在FPGA和SoC上原型化并部署深度学习网络
    深度学习HDL Toolbox™提供了在FPGA和SoC上原型化和实现深度学习网络的功能和工具。 它提供了预构建的比特流,可在受支持的Xilinx®和Intel®FPGA和SoC器件上运行各种深度学习网络。 通过分析和评估工具,您可以通过探索设计,性能和资源利用之间的折衷来定制深度学习网络。

    深度学习HDL工具箱使您能够自定义深度学习网络的硬件实现,并生成可移植的,可综合的Verilog®和VHDL®代码,以部署在任何FPGA上(使用HDL Coder™和Simulink®)。


    • 开始使用

    了解深度学习HDL工具箱的基础

    • FPGA上的深度学习原型网络

    估算串联网络的性能。 使用MATLAB®从目标设备分析和检索推理结果

    • 深度学习处理器定制和IP生成

    配置,构建和生成自定义比特流和处理器IP内核,估算和基准化自定义深度学习处理器性能

    • DL处理器IP内核的系统集成

    手动将生成的深度学习(DL)处理器IP内核集成到系统设计

    • 深度学习INT8量化

    校准,验证和部署量化的预训练系列深度学习网络

    • 深度学习HDL工具箱支持的硬件

    支持第三方硬件,例如Intel和Xilinx FPGA板


    2.深度学习工具箱(中文)

    设计、训练和分析深度学习网络
    Deep Learning Toolbox™ 提供了一个用于通过算法、预训练模型和 App 来设计和实现深度神经网络的框架。您可以使用卷积神经网络(ConvNet、CNN)和长短期记忆 (LSTM) 网络对图像、时序和文本数据执行分类和回归。您可以使用自动微分、自定义训练循环和共享权重来构建网络架构,如生成对抗网络 (GAN) 和孪生网络。使用 Deep Network Designer,您能够以图形方式设计、分析和训练网络。Experiment Manager 可帮助您管理多个深度学习试验,跟踪训练参数,分析结果,并比较不同试验的代码。您可以可视化层激活,并以图形方式监控训练进度。

    您可以通过 ONNX™ 格式与 TensorFlow™ 和 PyTorch 交换模型,并从 TensorFlow-Keras 和 Caffe 导入模型。该工具箱支持使用 DarkNet-53、ResNet-50、NASNet、SqueezeNet 和许多其他预训练模型进行迁移学习。

    您可以在单 GPU 或多 GPU 工作站(安装了 Parallel Computing Toolbox™)上加快训练速度,或扩展到群集和云,包括 NVIDIA® GPU Cloud 和 Amazon EC2® GPU 实例(安装了 MATLAB® Parallel Server™)。


    • Deep Learning Toolbox 快速入门

    Deep Learning Toolbox 基础知识学习

    • 图像深度学习

    从头开始训练卷积神经网络或使用预训练的网络快速学习新任务

    • 时序、序列和文本深度学习

    创建和训练用于时序分类、回归和预测任务的网络

    • 深度学习调整和可视化

    管理试验,绘制训练进度、评估准确度、进行预测、调整训练选项以及将网络学习的特征可视化

    • 通过并行计算和云进行深度学习

    在本地使用多个 GPU 或在云中扩展深度学习,并以交互方式或批处理作业的形式训练多个网络

    • 深度学习应用

    扩展深度学习工作流在计算机视觉、图像处理、自动驾驶、信号和音频领域的应用

    • 深度学习导入、导出和自定义

    导入、导出和自定义深度学习网络,并自定义层、训练循环和损失函数

    • 深度学习数据预处理

    管理和预处理深度学习数据

    • 深度学习代码生成

    生成 MATLAB 代码或 CUDA® 和 C++ 代码,并部署深度学习网络

    • 函数逼近、聚类和控制

    使用浅层神经网络执行回归、分类和聚类,以及对非线性动态系统建模


    3.预测维修工具箱

    设计和测试条件监视以及预测性维护算法

    Predictive Maintenance Toolbox™使您可以标记数据,设计条件指示器并估算机器的剩余使用寿命(RUL)。

    该工具箱提供了功能和一个交互式应用程序,可使用基于数据和基于模型的技术(包括统计,光谱和时间序列分析)来探索,提取和排序特征。您可以通过使用频率和时频方法从振动数据中提取特征来监视旋转机械(例如轴承和齿轮箱)的运行状况。要估算机器的故障时间,您可以使用生存期,相似度和基于趋势的模型来预测RUL。

    您可以分析和标记从本地文件,云存储和分布式文件系统导入的传感器数据。您还可以标记从Simulink®模型生成的模拟故障数据。该工具箱包含用于电动机,齿轮箱,电池和其他机器的参考示例,这些参考示例可重复使用以开发自定义的预测性维护和状态监视算法。


    • 开始使用

    了解预测性维护工具箱的基础

    • 管理系统数据

    导入测量数据,生成模拟数据,组织数据以在命令行和应用程序中使用

    • 预处理数据

    清理和转换数据,以准备在命令行和应用程序中提取条件指示器

    • 确定状况指标

    在命令行或应用程序中浏览数据以识别可以指示系统状态或预测未来状态的功能

    • 检测并预测故障

    训练用于状态监控和故障检测的决策模型; 预测剩余使用寿命(RUL)

    • 部署预测性维护算法

    实施和部署状态监控和预测维护算法


    4.强化学习工具箱

    使用强化学习设计和培训政策
    Reinforcement Learning Toolbox™使用强化学习算法(包括DQN,A2C和DDPG)为培训策略提供功能和模块。您可以使用这些策略为复杂的系统(例如,机器人和自治系统)实施控制器和决策算法。您可以使用深度神经网络,多项式或查找表来实施策略

    该工具箱使您能够通过与MATLAB®或Simulink®模型所代表的环境进行交互来训练策略。您可以评估算法,尝试使用超参数设置并监视训练进度。为了提高训练效果,您可以在云,计算机集群和GPU(使用Parallel Computing Toolbox™和MATLAB Parallel Server™)上并行运行模拟。

    通过ONNX™模型格式,可以从深度学习框架(如TensorFlow™Keras和PyTorch(带有Deep Learning Toolbox™))中导入现有策略。您可以生成优化的C,C ++和CUDA代码,以在微控制器和GPU上部署经过训练的策略。

    该工具箱包含参考示例,这些参考示例用于使用强化学习来设计用于机器人技术和自动驾驶应用程序的控制器。


    • 开始使用

    了解强化学习工具箱的基础

    • MATLAB环境

    使用MATLAB模型强化学习环境动力学

    • Simulink环境

    使用Simulink模型进行模型强化学习环境动力学

    • 代理商

    使用通用算法(例如SARSA,DQN,DDPG和A2C)创建和配置强化学习代理

    • 政策和价值功能

    定义策略和价值函数表示形式,例如深度神经网络和Q表

    • 培训与验证

    训练和模拟强化学习代理

    • 政策部署

    代码生成和部署经过培训的策略


    5.统计和机器学习工具箱(中文)

    使用统计信息和机器学习来分析数据并为数据建模
    Statistics and Machine Learning Toolbox™ 提供了用于描述数据、分析数据以及为数据建模的函数和 App。您可以使用描述性统计量和绘图进行探索性数据分析,对数据进行概率分布拟合,生成进行蒙特卡罗仿真的随机数,以及执行假设检验。回归算法和分类算法允许您从数据做出推断并构建预测模型。

    对于多维数据分析,Statistics and Machine Learning Toolbox 提供了特征选择、逐步回归、主成分分析 (PCA)、正则化以及其他降维方法,让您能够识别影响模型的变量或特征。

    此工具箱提供有监督和无监督的机器学习算法,包括支持向量机 (SVM)、提升决策树和装袋决策树、k 最近邻、k 均值、k 中心点、层次聚类、高斯混合模型以及隐马尔可夫模型。可以使用许多统计算法和机器学习算法来计算因为太大而无法存储在内存中的大型数据集。


    • Statistics and Machine Learning Toolbox 快速入门

    Statistics and Machine Learning Toolbox 基础知识学习

    • 描述性统计量和可视化

    数据的导入和导出、描述性统计量、可视化

    • 概率分布

    数据频数模型、随机样本生成、参数估计

    • 假设检验

    t 检验、F 检验、卡方拟合优度检验等

    • 聚类分析

    无监督学习方法,用于查找数据中的自然分组和模式

    • ANOVA

    方差与协方差分析、多元 ANOVA、重复测量 ANOVA

    • 回归

    有监督学习的线性、广义线性、非线性和非参数化方法

    • 分类

    用于二类问题和多类问题的有监督学习算法

    • 降维和特征提取

    PCA、因子分析、特征选择、特征提取等

    • 工业统计

    实验设计 (DOE);生存和可靠性分析;统计过程控制

    • 使用 tall 数组的大数据分析

    分析无法放入内存的数据

    • 加快统计计算速度

    统计函数的并行计算或分布式计算

    • 代码生成

    为 Statistics and Machine Learning Toolbox 函数生成 C/C++ 代码和 MEX 函数


    6.文本分析工具箱

    分析和建模文本数据
    Text Analytics Toolbox™提供了用于预处理,分析和建模文本数据的算法和可视化效果。 使用工具箱创建的模型可以用于诸如情感分析,预测性维护和主题建模之类的应用程序中。

    文本分析工具箱包含用于处理来自设备日志,新闻提要,调查,操作员报告和社交媒体等来源的原始文本的工具。 您可以从流行的文件格式中提取文本,预处理原始文本,提取单个单词,将文本转换为数字表示形式,并建立统计模型。

    使用LSA,LDA和词嵌入之类的机器学习技术,您可以从高维文本数据集中找到聚类并创建特征。 可以将使用Text Analytics Toolbox创建的功能与其他数据源的功能组合起来,以构建利用文本,数字和其他类型数据的机器学习模型。


    • 开始使用

    了解文本分析工具箱的基础

    • 文字数据准备

    将文本数据导入MATLAB®并进行预处理以进行分析

    • 建模与预测

    使用主题模型和词嵌入开发预测模型

    • 显示和演示

    使用词云和文本散点图可视化文本数据和模型

    • 语言支援

    文本分析工具箱中有关语言支持的信息


    三、信号处理与无线通信

    • MATLAB series

    1.5G的工具箱

    模拟,分析和测试5G通信系统
    5G Toolbox™为5G新无线电(NR)通信系统的建模,仿真和验证提供了符合标准的功能和参考示例。该工具箱支持链路级仿真,黄金参考验证,一致性测试和测试波形生成。

    使用工具箱,您可以配置,模拟,测量和分析端到端5G NR通信链路。您可以修改或自定义工具箱功能,并将其用作实现5G系统和设备的参考模型。

    该工具箱提供功能和参考示例,以帮助您表征上行链路和下行链路基带规范,并模拟RF设计和干扰源对系统性能的影响。您可以使用Wireless Waveform Generator应用程序以编程方式或交互方式生成波形并定制测试台。使用这些波形,您可以验证您的设计,原型和实现符合3GPP 5G NR规范。


    • 开始使用

    了解5G工具箱的基础知识

    • 下行通道

    5G NR下行链路物理信道和信号,传输信道和控制信息

    • 上行通道

    5G NR上行链路物理信道和信号,传输信道和控制信息

    • 物理层子组件

    用于5G NR信道处理的低级子组件

    • 信号接收

    用于处理接收到的5G NR信号的信道估计和均衡

    • 端到端仿真

    使用5G NR集群延迟线(CDL)和分接延迟线(TDL)信道模型进行链路级块错误率仿真

    • 系统级仿真

    5G NR多节点通信

    • 测试与量测

    5G NR波形生成,可视化和发射机性能分析

    • 代码生成和部署

    生成代码或独立可执行文件


    2.天线的工具箱

    设计,分析和可视化天线元件和天线阵列
    Antenna Toolbox™提供用于天线元件和阵列的设计,分析和可视化的功能和应用程序。您可以使用具有参数化几何形状的预定义元素或任意平面元素来设计独立天线并构建天线阵列。

    天线工具箱使用矩量法(MoM)来计算端口属性(例如阻抗),表面属性(例如电流和电荷分布)以及场属性(例如近场和远场辐射方向图)。您可以在2D和3D中可视化天线几何形状和分析结果。

    您可以将天线和阵列集成到无线系统中,并使用阻抗分析来设计匹配的网络。天线工具箱提供用于模拟波束形成和波束控制算法的辐射方向图。可以从您的设计生成Gerber文件,以制造印刷电路板(PCB)天线。您可以将天线安装在汽车或飞机等大型平台上,并分析结构对天线性能的影响。站点查看器使您可以使用各种传播模型来可视化3D地形图上的天线覆盖范围。


    • 开始使用

    了解天线工具箱的基础

    • 天线目录

    天线元件,支撑结构,参数化几何图形可视化,天线设计,电介质

    • 阵列目录

    有限和无限数组,布局可视化,相互耦合,嵌入式模式,模式乘法

    • 定制几何形状和PCB制造

    形状和布尔运算,自定义网格和几何形状,多端口天线,印刷电路板(PCB)堆栈,Gerber文件生成

    • 分析,基准测试和验证

    天线和阵列分析,网格划分,求解器,天线工具箱模拟与测量结果的比较

    • 天线和阵列优化

    最大化带宽,最小化SLL,执行阵列细化,最大化F / B比

    • 导入,导出和可视化

    读取,可视化和写入STL文件和MSI行星天线文件,以2D和3D测量方向图数据,创建交互式极坐标图

    • 安装天线和大型结构

    平台,无限阵列和无限地平面上的天线

    • 射频传播

    站点和地形可视化,传播模型规范和可视化,路径损耗,TIREM™,Longley-Rice,室外和室内光线跟踪


    3.音频工具箱

    设计和分析语音,声学和音频处理系统
    Audio Toolbox™提供了用于音频处理,语音分析和声学测量的工具。它包括用于音频信号处理(例如均衡和动态范围控制)和声学测量(例如脉冲响应估计,倍频程滤波和感知加权)的算法。它还提供了用于音频和语音特征提取(例如MFCC和音高)和音频信号转换(例如伽马通滤波器组和梅尔间隔频谱图)的算法。

    工具箱应用程序支持实时算法测试,脉冲响应测量和音频信号标记。该工具箱提供了到ASIO™,WASAPI,ALSA和CoreAudio声卡和MIDI设备的流接口,以及用于生成和托管标准音频插件(例如VST和音频单元)的工具。

    使用音频工具箱,您可以导入,标记和扩展音频数据集,以及提取特征并转换信号以进行机器学习和深度学习。您可以在调整参数和可视化信号的同时流式传输低延迟音频,从而实时制作音频处理算法的原型。您还可以通过将算法转换为音频插件以在外部主机应用程序(如数字音频工作站)中运行来验证算法。插件托管使您可以使用外部音频插件(例如常规对象)来处理MATLAB®阵列。声卡连接功能使您可以在真实的音频信号和声学系统上运行自定义测量。


    • 开始使用

    了解音频工具箱的基础

    • 音频I / O和波形生成

    记录和播放设备中的音频,读取和写入音频文件,生成波形

    • 音频处理算法设计

    音频处理工具,算法设计和模块化,流处理

    • 机器学习和音频深度学习

    数据集管理,标记和扩充;音频,语音和声学应用的分割和特征提取

    • 测量和空间音频

    声学,心理声学,房间冲动响应,HRTF,SPL计量

    • 仿真,调整和可视化

    实时原型制作和调音,MIDI,音频测试台

    • 乐器数字接口(MIDI)

    创建,发送和接收MIDI消息

    • 音频插件的创建和托管

    VST和AU的生成,测试,验证和托管

    • 代码生成和部署

    生成台式机,移动设备和嵌入式目标的独立应用程序


    4.通信工具箱

    设计和仿真通信系统的物理层
    Communications Toolbox™提供用于分析,设计,端到端仿真和验证通信系统的算法和应用程序。工具箱算法(包括信道编码,调制,MIMO和OFDM)使您能够组成和仿真基于标准或定制设计的无线通信系统的物理层模型。

    该工具箱提供了一个波形发生器应用,星座图和眼图,误码率以及其他用于验证设计的分析工具和范围。这些工具使您可以生成和分析信号,可视化通道特性并获得性能指标,例如误差矢量幅度(EVM)。该工具箱包括SISO和MIMO统计和空间通道模型。频道配置文件选项包括Rayleigh,Rician和WINNER II模型。它还包括RF损伤,包括RF非线性和载波偏移,以及补偿算法,包括载波和符号定时同步器。这些算法使您可以对链路级规范进行实际建模,并补偿信道降级的影响。

    通过将Communications Toolbox与RF仪器或硬件支持包一起使用,可以将发射器和接收器模型连接到无线电设备,并通过无线测试来验证设计。


    • 开始使用

    了解通信工具箱的基础

    • PHY组件

    物理层功能包括波形生成,源编码,差错控制编码,调制,MIMO,空时编码,滤波,均衡和同步

    • 射频组件建模

    行为射频无线电建模和损伤校正

    • 传播和渠道模型

    站点和地形可视化,传播模型规范(包括Longley-Rice),信号强度,信号覆盖图以及静态和衰落信道模型

    • 链接级仿真

    链路级通信系统仿真与分析实例

    • 系统级仿真

    DLL,MAC子层和LLC子层示例

    • 符合标准的系统

    符合各种标准的系统模型

    • 测试与量测

    波形生成,可视化和性能分析

    • 无线系统中的深度学习

    在无线通信系统中使用深度学习

    • 代码生成和部署

    生成台式机和嵌入式目标的独立应用程序

    • 支持的硬件–软件定义的无线电

    支持第三方软件定义的无线电硬件,例如Xilinx®,RTL-SDR,ADALM-PLUTO和USRP™无线电


    5.DSP系统工具箱

    设计和仿真流信号处理系统
    DSP System Toolbox™提供了用于在MATLAB®和Simulink®中设计,仿真和分析信号处理系统的算法,应用程序和范围。您可以为通信,雷达,音频,医疗设备,IoT和其他应用程序建模实时DSP系统。

    借助DSP System Toolbox,您可以设计和分析FIR,IIR,多速率,多级和自适应滤波器。您可以流传输来自变量,数据文件和网络设备的信号,以进行系统开发和验证。时间范围,频谱分析仪和逻辑分析仪使您可以动态地可视化和测量流信号。对于桌面原型和部署到嵌入式处理器(包括ARM®Cortex®架构),该工具箱支持C / C ++代码生成。它还支持从滤波器,FFT,IFFT和其他算法生成位精确的定点建模和HDL代码。

    算法可用作MATLAB函数,系统对象和Simulink块。


    • 开始使用

    了解DSP系统工具箱的基础

    • 信号生成,操纵和分析

    创建,导入,导出,显示和管理信号

    • 过滤器设计与分析

    FIR,IIR,频率转换

    • 过滤器实施

    单速率,多速率和自适应滤波器

    • 变换和光谱分析

    FFT,DCT,频谱分析,线性预测

    • 统计和线性代数

    测量,统计,矩阵数学,线性代数

    • 定点设计

    浮点到定点转换,定点算法设计

    • 代码生成

    仿真加速,代码生成,ARM Cortex-M处理器和ARM Cortex-A处理器的优化

    • 应用领域

    模拟雷达,通信和生物医学系统

    • DSP系统工具箱支持的硬件

    支持第三方硬件,例如ARM Cortex-M和ARM Cortex-A处理器


    6.LTE工具箱

    模拟,分析和测试LTE和LTE-Advanced无线通信系统的物理层
    LTE Toolbox™提供了符合标准的功能和应用程序,用于LTE,LTE-Advanced和LTE-Advanced Pro通信系统的设计,仿真和验证。 该工具箱可加速LTE算法和物理层(PHY)的开发,支持黄金参考验证和一致性测试,并能够生成测试波形。

    使用工具箱,您可以配置,模拟,测量和分析端到端通信链接。 您还可以创建和重用一致性测试平台,以验证您的设计,原型和实施是否符合LTE标准。

    通过将LTE Toolbox与RF仪器或硬件支持包结合使用,您可以将发射器和接收器模型连接到无线电设备,并通过无线发射和接收来验证您的设计。


    • 开始使用

    了解LTE工具箱的基础

    • 建模基础

    资源网格,资源提取,FDD和TDD双工模式,参数结构

    • 下行通道

    下行物理信号,物理信道,传输信道,控制信息和OFDM调制

    • 上行通道

    上行链路物理信号,物理信道,传输信道,控制信息和SC-FDMA调制

    • 侧链频道

    侧链物理信号,物理信道,传输信道,控制信息和SC-FDMA调制

    • NB-IoT频道

    NB-IoT传输和物理通道,物理信号以及SC-FDMA调制

    • 物理层子组件

    传输信道,物理信道和物理信号的下行链路和上行链路子组件

    • 信号接收与恢复

    帧同步,信道估计,ZF和MMSE均衡,小区标识搜索,MIB解码,SIB1恢复,HARQ组合

    • 端到端仿真

    传播渠道模型; RMC,FRC和E-TM配置以及波形生成;链路级BER和一致性测试

    • 测试与量测

    描述波形生成,可视化和发射机性能分析

    • UMTS测试与测量

    W-CDMA,HSPA和HSPA +的3G波形生成

    • 软件定义的无线电和HDL

    支持第三方硬件


    7.相控阵系统工具箱

    设计和仿真相控阵信号处理系统
    相控阵系统工具箱™提供了用于雷达,无线通信,电子战,声纳和医学成像应用中的传感器阵列系统的设计,仿真和分析的算法和应用程序。您可以设计相控阵系统,并使用合成或采集的数据分析其在不同情况下的性能。工具箱应用程序使您可以探索传感器阵列和波形的特征,并执行链路预算分析。产品内的示例为实现要求频率,PRF,波形和波束方向图敏捷性的所有相控阵多功能系统提供了起点。

    对于雷达,声纳和电子战系统设计,该工具箱可让您为地面,机载,舰载,潜艇和汽车系统的动力学和目标建模。它包括脉冲和连续波形以及用于波束形成,匹配滤波,到达方向(DOA)估计和目标检测的信号处理算法。该工具箱还包括用于发射器和接收器,传播通道,目标,干扰和杂波的模型

    对于5G,LTE和WLAN无线通信系统设计,该工具箱使您能够将天线阵列和波束成形算法合并到系统级仿真模型中。它具有设计和分析阵列几何形状和子阵列配置的功能,并提供了用于常规和混合波束成形,DOA估计和空间复用的阵列处理算法。


    • 开始使用

    了解相控阵系统工具箱的基础

    • 应用领域

    模拟雷达,声纳,电子战系统,汽车和MIMO通信系统

    • 相控阵设计与分析

    天线和麦克风,阵列几何形状,极化,发射器和接收器

    • 波形设计与分析

    脉冲和连续波形,交错波形,可变PRF,匹配滤波,模糊函数,频谱图

    • 波束成形和到达方向估计

    延迟和和,MVDR,LCMV,波束扫描,ESPRIT,MUSIC,DPCA,SMI,广义互相关

    • 检测,范围和多普勒估计

    目标检测,目标跟踪,CFAR,距离和多普勒估计,ROC曲线,雷达方程,声纳方程

    • 目标与环境

    通道传播,雷达横截面,声纳目标强度,水下声通道,下斜目标,杂波,干扰,物体运动

    • 算法加速和代码生成

    使用生成的C / C ++和MEX代码,使用GPU或生成HDL代码来加速仿真和应用程序


    8.射频工具箱

    设计,建模和分析RF组件的网络
    RF Toolbox™提供用于设计,建模,分析和可视化射频(RF)组件网络的功能,对象和应用程序。该工具箱支持无线通信,雷达和信号完整性项目。

    RF Toolbox使您可以构建RF组件网络,例如滤波器,传输线,匹配网络,放大器和混频器。可以使用诸如Touchstone文件,网络参数或物理属性之类的测量数据来指定组件。该工具箱提供了用于分析,处理和可视化RF数据的功能。您可以分析S参数。在S,Y,Z,T和其他网络参数之间转换;并使用矩形和极坐标图以及Smith®Charts可视化RF数据。您还可以去嵌入,检查和强制执行无源性,以及计算组和相位延迟。

    RF Budget Analyzer应用程序使您可以从噪声,功率和非线性方面分析收发器链,并生成RF Blockset™模型用于电路包络仿真。使用合理的函数拟合方法,您可以对背板,互连和线性组件进行建模,并将它们导出为Simulink®块,SPICE网表或Verilog®-A模块以进行时域仿真。


    • 开始使用

    了解RF Toolbox的基础

    • 数据导入和网络参数

    读取Touchstone文件; 导入,操作和转换网络参数,例如S参数

    • 电路设计与分析

    进行射频预算分析; 在频域中创建和分析RF电路,滤波器和匹配网络

    • 合理的拟合和信号完整性

    使用合理的函数拟合频率数据,计算时域响应,并将拟合后的数据用于信号完整性应用

    • 可视化和数据导出

    使用史密斯圆图,极坐标图和笛卡尔图可视化RF数据; 保存Touchstone文件


    9.传感器融合和跟踪工具箱

    设计,模拟和测试多传感器跟踪和定位系统
    传感器融合和跟踪工具箱™包含用于设计,仿真和测试系统的算法和工具,这些系统和工具融合了来自多个传感器的数据,以保持态势感知和定位。参考示例为监视和自主系统(包括机载,空降,地面,舰载和水下系统)的多对象跟踪和传感器融合开发提供了起点。

    您可以融合来自真实世界传感器的数据,包括主动和被动雷达,声纳,激光雷达,EO / IR,IMU和GPS。您还可以从虚拟传感器生成综合数据,以在不同情况下测试算法。该工具箱包括多对象跟踪器和估计过滤器,用于评估结合了网格级别,检测级别以及对象或跟踪级别融合的体系结构。它还提供了指标,包括OSPA和GOSPA,用于根据地面真实情况验证性能。

    对于仿真加速或快速原型制作,该工具箱支持C代码生成。


    • 开始使用

    了解传感器融合和跟踪工具箱的基础

    • 应用领域

    自主系统跟踪,监视系统跟踪,本地化和硬件连接的示例

    • 方向,位置和坐标系

    四元数,欧拉角,旋转矩阵和转换

    • 轨迹和场景生成

    基于地面真相的航点和速率的轨迹和场景

    • 传感器型号

    IMU,GPS,RADAR,ESM和EO / IR

    • 惯性传感器融合

    IMU和GPS传感器融合确定方向和位置

    • 估算过滤器

    卡尔曼和粒子滤波器,线性化函数和运动模型

    • 多对象追踪器

    多传感器多对象跟踪器,数据关联和跟踪融合

    • 可视化和分析

    多对象剧场剧情,检测和对象跟踪以及跟踪指标


    10.SerDes 工具箱

    设计SerDes系统并生成用于高速数字互连的IBIS-AMI模型
    SerDes Toolbox™提供了MATLAB®和Simulink®模型库以及一组分析工具和应用程序,用于设计和验证串行器/解串器(SerDes)系统或DDR5等高速存储器PHY。

    借助SerDes Designer应用程序,您可以使用统计分析来快速设计有线通信链接。该应用程序提供了参数化的模型和算法,可让您探索各种均衡器配置以改善通道性能。您可以评估指标,例如眼图,浴缸曲线和通道工作裕度(COM),包括抖动和串扰的影响

    借助基于MATLAB的构建块(例如CTLE,DFE,FFE和CDR),您可以使用数据表或测量数据描述所选的架构,并模拟控制和自适应算法。典型应用(例如PCIe,USB,以太网和DDR)的白盒示例提供了参考设计,您可以将这些参考设计用作自己设计的基础。

    SerDes Toolbox支持自动生成双重IBIS-AMI模型,以进行统计分析和时域仿真。这些模型可以与第三方通道模拟器一起使用,以进行系统集成和验证。


    • 开始使用

    了解SerDes工具箱的基础

    • 设计和仿真SerDes系统

    使用SerDes Designer应用程序设计和仿真SerDes系统

    • 定制SerDes系统

    修改从SerDes Designer应用程序导出的MATLAB脚本或Simulink模型

    • 创建和定制IBIS-AMI模型

    从Simulink定制,创建和导出IBIS-AMI模型

    • 行业标准IBIS-AMI模型

    开发行业标准的IBIS-AMI模型,例如PCI,DDR和以太网


    11.信号处理工具箱(中文)

    执行信号处理和分析
    Signal Processing Toolbox™ 提供了一些函数和 App,用来分析、预处理及提取均匀和非均匀采样信号的特征。该工具箱包含可用于滤波器设计和分析、重新采样、平滑处理、去趋势和功率谱估计的工具。该工具箱还提供了提取特征(如变化点和包络)、寻找波峰和信号模式、量化信号相似性以及执行 SNR 和失真等测量的功能。您还可以对振动信号执行模态和阶次分析。

    使用 Signal Analyzer App,您可以:在时域、频域和时频域同时预处理和分析多个信号,而无需编写代码;探查长信号;以及提取关注的区域。通过 Filter Designer App,您可以从多种算法和响应中进行选择来设计和分析数字滤波器。这两个 App 都生成 MATLAB® 代码。


    • Signal Processing Toolbox 快速入门

    Signal Processing Toolbox 基础知识学习

    • 信号分析和可视化

    使用 Signal Analyzer 来可视化、预处理和探查信号

    • 信号生成和预处理

    对信号进行创建、重新采样、平滑、去噪和去趋势处理

    • 测量和特征提取

    波峰、信号统计、脉冲和瞬态指标、功率、带宽、失真

    • 变换、相关性和建模

    互相关、自相关、傅里叶、DCT、Hilbert、Goertzel、参数化建模、线性预测编码

    • 数字和模拟滤波器

    FIR 和 IIR、单速率和多速率滤波器设计、分析和实现

    • 频谱分析

    功率谱、相干性、窗口

    • 时频分析

    频谱图、交叉频谱图、同步压缩、重排、Wigner-Ville、Hilbert-Huang、kurtogram

    • 振动分析

    阶数分析、时间同步平均、包络频谱、模态分析、雨流计数

    • 信号的机器学习和深度学习延伸

    信号标注、特征工程、数据集生成

    • 代码生成和 GPU 支持

    生成可移植的 C/C++/MEX 函数,并使用 GPU 来部署或加速处理


    12.小波工具箱

    使用小波分析和合成信号和图像
    Wavelet Toolbox™提供了用于分析和合成信号和图像的功能和应用程序。该工具箱包含用于连续小波分析,小波相干,同步压缩和数据自适应时频分析的算法。该工具箱还包括用于对信号和图像进行抽样和非抽样的离散小波分析的应用程序和功能,包括小波包和双树变换。

    使用连续小波分析,您可以研究频谱特征随时间演变的方式,识别两个信号中常见的时变模式,以及执行时域滤波。使用离散小波分析,您可以分析不同分辨率的信号和图像,以检测原始数据中不易看到的变化点,不连续性和其他事件。您可以在多个尺度上比较信号统计数据,并对数据进行分形分析以显示隐藏的模式。

    使用Wavelet Toolbox,您可以获得稀疏的数据表示形式,在保留重要特征的同时对数据进行降噪或压缩很有用。许多工具箱功能都支持C / C ++代码生成,用于桌面原型和嵌入式系统部署。


    • 开始使用

    了解Wavelet Toolbox的基础

    • 时频分析

    CWT,恒定Q变换,经验模式分解,小波相干,小波交叉谱

    • 离散多分辨率分析

    DWT,MODWT,双树小波变换,小波,小波包,多信号分析

    • 去噪和压缩

    小波收缩,非参数回归,块阈值,多信号阈值

    • 机器学习和深度学习

    小波散射,基于小波的机器学习和深度学习技术

    • 筛选银行

    正交和双正交小波和缩放滤波器,提升

    • 代码生成和GPU支持

    生成C / C ++和CUDA®代码以及MEX函数,并在图形处理单元(GPU)上运行函数


    13.WLAN工具箱

    模拟,分析和测试WLAN通信系统
    WLAN Toolbox™提供了用于无线LAN通信系统的设计,仿真,分析和测试的符合标准的功能。它包括适用于IEEE®802.11ax / ac / ad / ah和802.11b / a / g / n / j / p标准的可配置物理层波形。它还提供发射机,信道建模和接收机操作,包括信道编码(BCC和LDPC),调制(OFDM,DSSS和CCK),空间流映射,信道模型(TGay,TGax,TGac,TGah和TGn),和MIMO接收器

    该工具箱提供了参考设计,可帮助您执行基带链路级仿真和多节点系统级仿真。您可以生成和解析常见的MAC帧。您还可以执行信号测量,例如信道功率,频谱模板和占用的带宽,并创建测试平台以进行WLAN通信链路的端到端仿真。

    您可以研究射频设计和干扰对系统性能的影响。通过将WLAN Toolbox与RF仪器或硬件支持包一起使用,可以将发射器和接收器模型连接到无线电设备,并通过无线发射和接收来验证设计。


    • 开始使用

    了解WLAN Toolbox的基础

    • PHY建模

    物理层选项,参数化和波形生成

    • MAC建模

    802.11™MAC帧生成和解析的功能和配置对象

    • 信号传输

    802.11物理层传输处理功能

    • 信号接收

    802.11物理层接收处理功能

    • 传播渠道模型

    802.11的通道模型

    • 端到端仿真

    波形生成,链路级PER和通道建模

    • 系统级仿真

    多节点网络,协议栈,多层处理

    • 测试与量测

    波形生成,可视化和发射机性能分析

    • 代码生成和部署

    生成台式机和嵌入式目标的独立应用程序

    • 软件定义的无线电

    支持第三方硬件


    • Simulinke series

    1.音频工具箱

    设计和分析语音,声学和音频处理系统
    Audio Toolbox™提供了用于音频处理,语音分析和声学测量的工具。它包括用于音频信号处理(例如均衡和动态范围控制)和声学测量(例如脉冲响应估计,倍频程滤波和感知加权)的算法。它还提供了用于音频和语音特征提取(例如MFCC和音高)和音频信号转换(例如伽马通滤波器组和梅尔间隔频谱图)的算法。

    工具箱应用程序支持实时算法测试,脉冲响应测量和音频信号标记。该工具箱提供了到ASIO™,WASAPI,ALSA和CoreAudio声卡和MIDI设备的流接口,以及用于生成和托管标准音频插件(例如VST和音频单元)的工具。

    使用音频工具箱,您可以导入,标记和扩展音频数据集,以及提取特征并转换信号以进行机器学习和深度学习。您可以在调整参数和可视化信号的同时流式传输低延迟音频,从而实时制作音频处理算法的原型。您还可以通过将算法转换为音频插件以在外部主机应用程序(如数字音频工作站)中运行来验证算法。插件托管使您可以使用外部音频插件(例如常规对象)来处理MATLAB®阵列。声卡连接功能使您可以在真实的音频信号和声学系统上运行自定义测量。


    • 开始使用

    了解音频工具箱的基础

    • 音频I / O和波形生成

    记录和播放设备中的音频,读取和写入音频文件,生成波形

    • 音频处理算法设计

    音频处理工具,算法设计和模块化,流处理

    • 机器学习和音频深度学习

    数据集管理,标记和扩充;音频,语音和声学应用的分割和特征提取

    • 测量和空间音频

    声学,心理声学,房间冲动响应,HRTF,SPL计量

    • 仿真,调整和可视化

    实时原型制作和调音,MIDI,音频测试台

    • 乐器数字接口(MIDI)

    创建,发送和接收MIDI消息

    • 音频插件的创建和托管

    VST和AU的生成,测试,验证和托管

    • 代码生成和部署

    生成台式机,移动设备和嵌入式目标的独立应用程序


    2.通信工具箱

    设计和仿真通信系统的物理层
    Communications Toolbox™提供用于分析,设计,端到端仿真和验证通信系统的算法和应用程序。工具箱算法(包括信道编码,调制,MIMO和OFDM)使您能够组成和仿真基于标准或定制设计的无线通信系统的物理层模型。

    该工具箱提供了一个波形发生器应用,星座图和眼图,误码率以及其他用于验证设计的分析工具和范围。这些工具使您可以生成和分析信号,可视化通道特性并获得性能指标,例如误差矢量幅度(EVM)。该工具箱包括SISO和MIMO统计和空间通道模型。频道配置文件选项包括Rayleigh,Rician和WINNER II模型。它还包括RF损伤,包括RF非线性和载波偏移,以及补偿算法,包括载波和符号定时同步器。这些算法使您可以对链路级规范进行实际建模,并补偿信道降级的影响。

    通过将Communications Toolbox与RF仪器或硬件支持包一起使用,可以将发射器和接收器模型连接到无线电设备,并通过无线测试来验证设计。


    • 开始使用

    了解通信工具箱的基础

    • PHY组件

    物理层功能包括波形生成,源编码,差错控制编码,调制,MIMO,空时编码,滤波,均衡和同步

    • 射频组件建模

    行为射频无线电建模和损伤校正

    • 传播和渠道模型

    站点和地形可视化,传播模型规范(包括Longley-Rice),信号强度,信号覆盖图以及静态和衰落信道模型

    • 链接级仿真

    链路级通信系统仿真与分析实例

    • 系统级仿真

    DLL,MAC子层和LLC子层示例

    • 符合标准的系统

    符合各种标准的系统模型

    • 测试与量测

    波形生成,可视化和性能分析

    • 无线系统中的深度学习

    在无线通信系统中使用深度学习

    • 代码生成和部署

    生成台式机和嵌入式目标的独立应用程序

    • 支持的硬件–软件定义的无线电

    支持第三方软件定义的无线电硬件,例如Xilinx®,RTL-SDR,ADALM-PLUTO和USRP™无线电


    3.DSP系统工具箱

    设计和仿真流信号处理系统
    DSP System Toolbox™提供了用于在MATLAB®和Simulink®中设计,仿真和分析信号处理系统的算法,应用程序和范围。您可以为通信,雷达,音频,医疗设备,IoT和其他应用程序建模实时DSP系统。

    借助DSP System Toolbox,您可以设计和分析FIR,IIR,多速率,多级和自适应滤波器。您可以流传输来自变量,数据文件和网络设备的信号,以进行系统开发和验证。时间范围,频谱分析仪和逻辑分析仪使您可以动态地可视化和测量流信号。对于桌面原型和部署到嵌入式处理器(包括ARM®Cortex®架构),该工具箱支持C / C ++代码生成。它还支持从滤波器,FFT,IFFT和其他算法生成位精确的定点建模和HDL代码。

    算法可用作MATLAB函数,系统对象和Simulink块。


    • 开始使用

    了解DSP系统工具箱的基础

    • 信号生成,操纵和分析

    创建,导入,导出,显示和管理信号

    • 过滤器设计与分析

    FIR,IIR,频率转换

    • 过滤器实施

    单速率,多速率和自适应滤波器

    • 变换和光谱分析

    FFT,DCT,频谱分析,线性预测

    • 统计和线性代数

    测量,统计,矩阵数学,线性代数

    • 定点设计

    浮点到定点转换,定点算法设计

    • 代码生成

    仿真加速,代码生成,ARM Cortex-M处理器和ARM Cortex-A处理器的优化

    • 应用领域

    模拟雷达,通信和生物医学系统

    • DSP系统工具箱支持的硬件

    支持第三方硬件,例如ARM Cortex-M和ARM Cortex-A处理器


    4.混合信号Blockset

    设计和模拟模拟和混合信号系统
    Mixed-Signal Blockset™提供了用于设计和验证混合信号集成电路(IC)的组件和损伤模型,分析工具和测试平台。

    您可以对处于不同抽象级别的PLL,数据转换器和其他系统进行建模,并探索各种IC架构。您可以自定义模型以包括诸如噪声,非线性和量化效应之类的损害,并使用自上而下的方法来完善系统描述。

    使用提供的测试平台,您可以通过拟合测量特性或电路级仿真结果来验证系统性能并提高建模保真度。使用可变步长Simulink®求解器的快速系统级仿真使您可以调试实现并识别设计缺陷,然后再在晶体管级仿真IC。

    使用混合信号块集,您可以模拟混合信号组件以及复杂的DSP算法和控制逻辑。结果,模拟和数字设计团队都可以使用相同的可执行规范。


    • 开始使用

    了解混合信号模块组的基础知识

    • 锁相环

    设计和模拟模拟锁相环(PLL)系统

    • 数据转换器

    模拟逐次逼近寄存器(SAR)和闪存模数数据转换器(ADC)

    • 测量和测试平台

    分析模拟和混合信号系统的性能指标

    • 混合模拟和数字信号

    将模拟电路行为与数字模型相结合,以创建电子系统的更详细表示

    • 混合信号模块组模型

    使用混合信号模块组模型附加库的PLL,ADC,SerDes和SMPS系统的模型示例


    5.相控阵系统工具箱

    设计和仿真相控阵信号处理系统
    相控阵系统工具箱™提供了用于雷达,无线通信,电子战,声纳和医学成像应用中的传感器阵列系统的设计,仿真和分析的算法和应用程序。您可以设计相控阵系统,并使用合成或采集的数据分析其在不同情况下的性能。工具箱应用程序使您可以探索传感器阵列和波形的特征,并执行链路预算分析。产品内的示例为实现要求频率,PRF,波形和波束方向图敏捷性的所有相控阵多功能系统提供了起点。

    对于雷达,声纳和电子战系统设计,该工具箱可让您为地面,机载,舰载,潜艇和汽车系统的动力学和目标建模。它包括脉冲和连续波形以及用于波束形成,匹配滤波,到达方向(DOA)估计和目标检测的信号处理算法。该工具箱还包括用于发射器和接收器,传播通道,目标,干扰和杂波的模型。

    对于5G,LTE和WLAN无线通信系统设计,该工具箱使您能够将天线阵列和波束成形算法合并到系统级仿真模型中。它具有设计和分析阵列几何形状和子阵列配置的功能,并提供了用于常规和混合波束成形,DOA估计和空间复用的阵列处理算法。


    • 开始使用

    了解相控阵系统工具箱的基础

    • 应用领域

    模拟雷达,声纳,电子战系统,汽车和MIMO通信系统

    • 相控阵设计与分析

    天线和麦克风,阵列几何形状,极化,发射器和接收器

    • 波形设计与分析

    脉冲和连续波形,交错波形,可变PRF,匹配滤波,模糊函数,频谱图

    • 波束成形和到达方向估计

    延迟和和,MVDR,LCMV,波束扫描,ESPRIT,MUSIC,DPCA,SMI,广义互相关

    • 检测,范围和多普勒估计

    目标检测,目标跟踪,CFAR,距离和多普勒估计,ROC曲线,雷达方程,声纳方程

    • 目标与环境

    通道传播,雷达横截面,声纳目标强度,水下声通道,下斜目标,杂波,干扰,物体运动

    • 算法加速和代码生成

    使用生成的C / C ++和MEX代码,使用GPU或生成HDL代码来加速仿真和应用程序


    6.RF Blockset

    设计和仿真射频系统
    RF Blockset™(以前称为SimRF™)提供Simulink®模型库和仿真引擎,用于设计RF通信和雷达系统。

    RF模块组使您可以仿真RF收发器和前端。您可以对非线性RF放大器建模,以估计增益,噪声,偶数和奇数次互调失真,包括存储效应。对于RF混频器,您可以预测镜像抑制,倒数混频,本地振荡器相位噪声和DC偏移。可以使用数据手册规范或测量数据(例如多端口S参数)来表征RF模型。它们可用于精确建模自适应体系结构,包括自动增益控制(AGC),数字预失真(DPD)算法和波束成形。

    RF Budget Analyzer应用程序使您可以自动生成收发器模型和测量测试平台,以验证性能并设置电路包络多载波仿真。

    使用RF Blockset,您可以仿真不同抽象级别的RF系统。电路包络仿真可对具有任意拓扑的网络进行高保真,多载波仿真。等效基带库可实现单载波级联系统的快速,离散时间仿真。


    • 开始使用

    了解射频模块组的基础

    • 电路包络仿真

    多载波射频仿真,射频损伤

    • 等效基带仿真

    2端口级联链的单载波RF仿真

    • 理想的基带仿真

    模拟射频网络的单载波,直接连接到Simulink模块,生成C代码

    • 收发器的RF模块组模型

    型号AnalogDevices®收发器


    7.SerDes 工具箱

    设计SerDes系统并生成用于高速数字互连的IBIS-AMI模型
    SerDes Toolbox™提供了MATLAB®和Simulink®模型库以及一组分析工具和应用程序,用于设计和验证串行器/解串器(SerDes)系统或DDR5等高速存储器PHY。

    借助SerDes Designer应用程序,您可以使用统计分析来快速设计有线通信链接。该应用程序提供了参数化的模型和算法,可让您探索各种均衡器配置以改善通道性能。您可以评估指标,例如眼图,浴缸曲线和通道工作裕度(COM),包括抖动和串扰的影响。

    借助基于MATLAB的构建块(例如CTLE,DFE,FFE和CDR),您可以使用数据表或测量数据描述所选的架构,并模拟控制和自适应算法。典型应用(例如PCIe,USB,以太网和DDR)的白盒示例提供了参考设计,您可以将这些参考设计用作自己设计的基础。

    SerDes Toolbox支持自动生成双重IBIS-AMI模型,以进行统计分析和时域仿真。这些模型可以与第三方通道模拟器一起使用,以进行系统集成和验证。


    • 开始使用

    了解SerDes工具箱的基础

    • 设计和仿真SerDes系统

    使用SerDes Designer应用程序设计和仿真SerDes系统

    • 定制SerDes系统

    修改从SerDes Designer应用程序导出的MATLAB脚本或Simulink模型

    • 创建和定制IBIS-AMI模型

    从Simulink定制,创建和导出IBIS-AMI模型

    • 行业标准IBIS-AMI模型

    开发行业标准的IBIS-AMI模型,例如PCI,DDR和以太网


    8.SoC 块集无线

    设计,评估和实施SoC硬件和软件架构
    SoC Blockset™提供Simulink®块和可视化工具,用于对ASIC,FPGA和片上系统(SoC)的硬件和软件架构进行建模,仿真和分析。您可以使用内存模型,总线模型和I / O模型来构建系统架构,并与算法一起模拟该架构。

    SoC Blockset使您可以使用生成的测试流量或实际I / O数据来模拟内存以及内部和外部连接,以及调度和操作系统效果。您可以快速探索不同的系统架构,估计硬件和软件分区的接口复杂性,以及评估软件性能和硬件利用率。

    SoC Blockset可以导出Xilinx®和Intel®FPGA器件以及SoC平台(包括Zynq®-7000,UltraScale +™和Intel SoC FPGA)的参考设计。这些参考设计可以与Xilinx和Intel设计工具一起使用。


    • 开始使用

    了解SoC模块集的基础

    • 创建模型

    创建SoC应用程序的Simulink模型

    • 模拟和分析应用程序

    模拟SoC应用并分析性能

    • 在设备上实施

    生成代码并在SoC设备上部署SoC应用程序

    • 分析设备性能

    可视化和分析SoC设备上的SoC应用程序性能

    • SoC模块集支持的硬件

    支持第三方硬件,例如Xilinx SoC平台和Intel SoC设备


    9.无线HDL工具箱

    设计和实现用于FPGA,ASIC和SoC的5G和LTE通信子系统
    无线HDL Toolbox™(以前称为LTE HDL Toolbox™)为开发5G,LTE和基于OFDM的定制无线通信应用程序提供了经过硬件验证的预先验证的Simulink®模块和子系统。它包括参考应用程序,IP块以及基于帧和基于样本的处理之间的网关。

    您可以修改参考应用程序以集成到您自己的设计中。对工具箱算法的HDL实现进行了优化,以提高资源使用效率和性能,以进行原型设计或在FPGA,ASIC和SoC器件上进行生产部署。

    该工具箱算法旨在在VHDL®和Verilog®(带有HDL Coder™)中生成可读的,可合成的代码。为了对5G,LTE和基于OFDM的定制设计进行无线测试,您可以将发射器和接收器模型连接到无线电设备(带有Communications Toolbox™硬件支持包)。


    • 开始使用

    了解无线HDL工具箱的基础

    • 模型架构

    建立模型以设计具有流采样接口的无线通信硬件系统

    • HDL优化的系统设计

    选择用于无线通信硬件系统设计的算法

    • 参考应用

    将预先构建并经过验证的无线通信发送器和接收器子系统集成到您的系统设计中

    • HDL代码生成和部署

    使用HDL Coder生成HDL代码,使用HDL Verifier™进行验证,并使用硬件支持包进行原型设计


    四、控制系统

    • MATLAB series

    1.航空航天工具箱

     

    2.控制系统工具箱

     

    3.fuzzy逻辑工具箱

    设计和仿真模糊逻辑系统
    Fuzzy Logic Toolbox™提供了MATLAB®函数,应用程序和Simulink®模块,用于基于模糊逻辑的系统进行分析,设计和仿真。 该产品将指导您完成设计模糊推理系统的步骤。 提供了许多常用方法的功能,包括模糊聚类和自适应神经模糊学习。

    该工具箱使您可以使用简单的逻辑规则为复杂的系统行为建模,然后在模糊推理系统中实现这些规则。 您可以将其用作独立的模糊推理引擎。 另外,您可以在Simulink中使用模糊推理模块,并在整个动态系统的综合模型中模拟模糊系统。

    4.模型预测控制工具箱

     

    5.基于模型的标定工具箱

     

    6.预测维修工具箱

     

    7.强化学习工具箱

     

    8.鲁棒控制工具箱

     

    9.系统提供的工具箱

     

    • Simulink series

     

    1.Aerospace Blockset

     

    2.电机控制Blockset

     

    3.动力总成块集

     

    4.simulink控制设计

     

    5.simulink设计优化

     

    6.优化车辆动力学块集

     

    五、图像处理和计算机视觉

    1.计算机视觉工具箱

    设计和测试计算机视觉,3D视觉和视频处理系统
    Computer Vision Toolbox™提供了用于设计和测试计算机视觉,3D视觉和视频处理系统的算法,功能和应用。您可以执行对象检测和跟踪以及特征检测,提取和匹配。对于3D视觉,该工具箱支持单,立体和鱼眼镜头相机校准;立体视觉3D重建;以及激光雷达和3D点云处理。计算机视觉应用程序可自动执行地面真相标记和摄像机校准工作流程。

    您可以使用深度学习和机器学习算法(例如YOLO v2,Faster R-CNN和ACF)训练自定义对象检测器。对于语义分割,您可以使用深度学习算法,例如SegNet,U-Net和DeepLab。预先训练的模型可让您检测人脸,行人和其他常见物体。

    您可以通过在多核处理器和GPU上运行算法来加速算法。大多数工具箱算法都支持C / C ++代码生成,以与现有代码,桌面原型和嵌入式视觉系统部署集成。


    • 开始使用

    了解计算机视觉工具箱的基础

    • 特征检测与提取

    图像配准,兴趣点检测,提取特征描述符和点特征匹配

    • 深度学习,语义分割和检测

    深度学习和卷积网络,语义图像分割,对象检测,识别,地面真相标签,功能包,模板匹配和背景估计

    • 相机校准和3D视觉

    估计相机的本征,失真系数和相机的外部特性,从2D图像中提取3D信息,执行鱼眼校准,立体校正,深度估计,3D重建,三角剖分和运动结构

    • 激光雷达和点云处理

    对3D点云进行降采样,降噪,变换,可视化,配准,拟合几何形状并使用深度学习

    • 跟踪和运动估计

    光流,活动识别,运动估计和跟踪

    • Simulink的计算机视觉

    Simulink对计算机视觉应用程序的支持

    • 代码生成,GPU和第三方支持

    C / C ++和GPU代码生成,了解OCR语言数据支持,使用OpenCV接口,了解定点数据类型支持,并生成HDL代码

    • 计算机视觉工具箱支持的硬件

    支持第三方硬件,例如带有FMC HDMI CAM的Xilinx®Zynq®


    2.图像采集工具箱

    从行业标准的硬件中获取图像和视频
    Image Acquisition Toolbox™提供了将相机连接到MATLAB®和Simulink®的功能和模块。 它包含一个MATLAB应用程序,可让您交互式地检测和配置硬件属性。 然后,您可以生成等效的MATLAB代码,以在以后的会议中自动进行采集。 该工具箱支持多种采集模式,例如循环处理,硬件触发,后台采集以及在多个设备之间同步采集。

    图像采集工具箱支持所有主要标准和硬件供应商,包括USB3 Vision,GigEVision®和GenICam™GenTL。 您可以连接到机器视觉相机和图像采集卡,以及高端科学和工业设备。


    • 开始使用

    了解图像采集工具箱的基础

    • 设备连接

    建立和管理图像采集设备与MATLAB之间的连接

    • 图像预览和设备配置

    预览图像并调整采集参数,例如亮度,分辨率和关注区域(ROI)

    • 图像数据采集

    从受支持的硬件(包括GigE Vision硬件和Matrox硬件)中获取图像数据

    • Simulink中的图像采集

    将实时视频数据带入Simulink模型,生成代码

    • 创建自定义适配器

    使用图像采集工具箱适配器套件创建适配器

    • 图像采集工具箱支持的硬件

    支持第三方硬件

    • 图像采集工具箱中的故障排除

    解决“图像采集工具箱”中的意外问题


    3.图像处理工具箱(中文)

    执行图像处理、可视化和分析
    Image Processing Toolbox™ 为图像处理、分析、可视化和算法开发提供了一套全面的参考标准算法和工作流 App。您可以使用深度学习和传统图像处理技术执行图像分割、图像增强、去噪、几何变换和图像配准。工具箱支持处理二维、三维和任意大的图像。

    Image Processing Toolbox App 可让您自动完成常见的图像处理工作流。您可以交互方式分割图像数据、比较图像配准技术,以及对大型数据集进行批量处理。利用可视化函数和 App,您可以探查图像、三维体和视频;调整对比度;创建直方图;以及对关注区域 (ROI) 执行操作。

    您可以通过在多核处理器和 GPU 上运行算法来提高算法的执行速度。许多工具箱函数支持桌面原型和嵌入式视觉系统部署的 C/C++ 代码生成。


    • Image Processing Toolbox 快速入门

    Image Processing Toolbox 基础知识学习

    • 导入、导出和转换

    图像数据的导入和导出,图像类型和类的转换

    • 显示和探查

    用于图像显示和探查的交互式工具

    • 几何变换和图像配准

    使用强度相关性、特征匹配或控制点映射来缩放、旋转、执行其他 N 维变换和对齐图像

    • 图像滤波和增强

    对比度调整、形态学滤波、去模糊、基于关注区域的处理

    • 图像分割与分析

    区域分析、纹理分析、像素和图像统计量

    • 使用深度学习进行图像处理

    使用卷积神经网络执行图像处理任务,例如去除图像噪声和基于低分辨率图像创建高分辨率图像(需要 Deep Learning Toolbox™)

    • 三维体图像处理

    对三维体数据进行滤波、分割和执行其他图像处理运算

    • 代码生成

    为工具箱函数生成 C 代码和 MEX 函数

    • GPU 计算

    在图形处理单元 (GPU) 上运行图像处理代码


    4.激光雷达工具箱

    设计,分析和测试激光雷达处理系统
    Lidar Toolbox™提供了用于设计,分析和测试激光雷达处理系统的算法,功能和应用程序。您可以执行对象检测和跟踪,语义分割,形状拟合,激光雷达配准和障碍物检测。激光雷达工具箱支持结合了计算机视觉和激光雷达处理功能的工作流程的激光雷达/摄像机交叉校准。

    您可以使用PointSeg,PointPillar和SqueezeSegV2等深度学习和机器学习算法训练自定义检测和语义细分模型。 Lidar Labeler应用程序支持对激光雷达点云进行手动和半自动标记,以训练深度学习和机器学习模型。该工具箱可让您从Velodyne®激光雷达传输数据,并读取Velodyne和IBEO激光雷达传感器记录的数据。

    激光雷达工具箱提供的参考示例说明了激光雷达处理在感知和导航工作流程中的使用。大多数工具箱算法都支持C / C ++代码生成,以便与现有代码集成,桌面原型制作和部署。


    • 开始使用

    了解激光雷达工具箱的基础

    • 激光雷达和点云I / O

    读取,写入和可视化激光雷达数据

    • 激光雷达点云处理

    下采样,中值滤波,变换,从3-D点云中提取特征并进行对齐

    • 细分,检测和标记

    使用深度学习和几何算法在点云数据中分割,检测,标记和跟踪对象

    • 激光雷达相机校准

    执行校准,估计激光雷达-摄像机变换,并融合每个传感器的数据

    • 基于激光雷达的导航

    点云注册和地图构建,3-D同时定位和制图以及2-D激光雷达对象检测

    • 激光雷达工具箱支持的硬件

    支持第三方硬件


    5.映射工具箱

    分析和可视化地理信息
    Mapping Toolbox™提供了用于转换地理数据和创建地图显示的算法和功能您可以在地理环境中可视化数据,从60多个地图投影构建地图显示,并将来自各种来源的数据转换为一致的地理坐标系。

    映射工具箱支持用于管理地理数据的完整工作流。 您可以从各种文件格式和Web地图服务器导入矢量和栅格数据。 该工具箱使您可以使用修剪,插值,重采样,坐标转换和其他技术来处理和自定义数据。 可以将数据与来自多个来源的基础地图图层组合在一个地图显示中。 您可以采用shapefile,GeoTIFF和KML等文件格式导出数据。


    • 开始使用

    了解映射工具箱的基础

    • 文件导入和导出

    支持shapefile,KML,GeoTIFF,VMAP0和其他常见数据文件

    • 网络地图

    从Web Map Service(WMS)服务器检索地图数据并在交互式浏览器中查看Web地图

    • 地图显示

    2-D和3-D地图显示,自定义和交互

    • 数据分析

    数据子集,修剪,相交和空间分辨率调整

    • 几何大地测量

    2-D和3-D坐标系; 地球上的距离,面积和曲线

    • 坐标参考系统

    表示坐标参考系统,投影和非投影坐标,分析变形


    6.Vision HDL工具箱

    设计用于FPGA和ASIC的图像处理,视频和计算机视觉系统
    Vision HDL Toolbox™提供了用于在FPGA和ASIC上设计和实现视觉系统的像素流算法。 它提供了一个支持各种接口类型,帧大小和帧速率的设计框架。 工具箱中的图像处理,视频和计算机视觉算法使用适合HDL实现的体系结构。

    该工具箱算法旨在在VHDL®和Verilog®(带有HDL Coder™)中生成可读的,可合成的代码。 生成的HDL代码经过FPGA验证,适用于高达8k分辨率的帧大小和高帧率(HFR)视频。

    工具箱功能可作为MATLAB®函数,System对象和Simulink®块使用。


    • 开始使用

    了解Vision HDL Toolbox的基础

    • 视频格式和界面

    在基于帧的视频流和像素流之间转换

    • HDL优化的算法设计

    选择块或系统对象以进行流视频处理

    1. HDL代码生成和部署

    使用HDL Coder生成HDL代码,使用HDL Verifier™进行验证,使用硬件支持包进行原型设计


    六、并行计算

    1.MathWorks云中心

    设置Cloud Center以创建和访问Amazon云中的计算集群以进行并行计算。 您可以从客户端MATLAB®会话访问云群集,就像您自己的现场网络中的任何其他群集一样。 要了解更多信息,请参阅适用于Amazon EC2的MATLAB Parallel Server。

    要了解MathWorks®Cloud Center中的新功能和更改,请参阅Cloud Center发行说明。

    要通过Web应用程序访问Cloud Center,请访问https://cloudcenter.mathworks.com/login。


    • Cloud Center入门

    帮助您开始使用Cloud Center的主题

    • 创建和管理Cloud Center集群

    创建和管理云集群

    • 从MATLAB访问Cloud Center集群

    从MATLAB访问您的集群,并使用Parallel Computing Toolbox™向其提交工作

    • 与Cloud Center集群之间进行数据传输

    使用作业或不启动集群即可传输文件和数据

    • 云上的MATLAB

    使用适用于Amazon®Web Services和Microsoft®Azure®的参考架构或适用于NVIDIA®GPU的MATLAB深度学习容器在不同的云环境中运行MATLAB


    2.MATLAB并行服务器

    在集群和云上执行MATLAB和Simulink计算
    使用MATLAB®Parallel Server™,您可以将MATLAB程序和Simulink®仿真扩展到群集和云。您可以在桌面上为程序和模拟制作原型,然后在群集和云上运行它们,而无需重新编码。 MATLAB Parallel Server支持批处理作业,交互式并行计算以及具有大型矩阵的分布式计算。

    所有群集端许可均由MATLAB Parallel Server处理。您的桌面许可证配置文件在群集上动态启用,因此您无需为群集提供MATLAB许可证。许可模式包括支持无限扩展的功能。

    MATLAB Parallel Server在群集上将您的程序和模拟作为计划的应用程序运行。您可以使用MATLAB Parallel Server随附的MATLAB优化调度程序,也可以使用自己的调度程序。插件框架允许与流行的集群调度程序提交客户端直接通信。


    • 开始使用

    了解MATLAB Parallel Server的基础知识

    • 集群配置

    根据调度程序类型设置节点并启动进程以支持并行计算

    • MATLAB Job Scheduler集群自定义

    自定义使用MATLAB Job Scheduler的集群的可选设置

    • 在集群和云上运行代码

    在现有集群中扩展并运行计算密集型代码

    • 在MATLAB Parallel Server中进行故障排除

    解决MATLAB Parallel Server中的意外问题


    3.并行计算工具箱

    在多核计算机,GPU和计算机集群上执行并行计算
    使用Parallel Computing Toolbox™,您可以使用多核处理器,GPU和计算机群集来解决计算和数据密集型问题。高级构造(并行的for循环,特殊的数组类型和并行的数值算法)使您无需CUDA或MPI编程即可并行化MATLAB®应用程序。该工具箱可让您在MATLAB和其他工具箱中使用启用了并行功能的函数。您可以将工具箱与Simulink®一起使用,以并行运行模型的多个模拟。程序和模型可以交互方式和批处理方式运行。

    该工具箱可让您在本地运行的工作程序(MATLAB计算引擎)上执行应用程序,从而充分利用多核桌面的全部处理能力。无需更改代码,就可以在群集或云上运行相同的应用程序(使用MATLAB Parallel Server™)。您还可以将工具箱与MATLAB Parallel Server一起使用,以执行太大而无法容纳在一台计算机内存中的矩阵计算。


    • 开始使用

    了解并行计算工具箱的基础

    • 并行计算基础

    选择并行计算解决方案

    • 并行for-loop(parfor)

    通过在并行池中的工作程序上运行parfor来使用并行处理

    • 异步并行编程

    使用parfeval在后台评估函数

    • 大数据处理

    在Spark®和Hadoop®集群上使用分布式阵列,高层阵列,数据存储或mapreduce并行分析大数据集

    • 批量处理

    卸载执行功能以在后台运行

    • GPU计算

    通过在GPU上运行代码来加速代码

    • 集群和云

    发现集群资源,并使用集群配置文件

    • 性能分析

    提高并行代码的性能


    七、测试和测量

    1.数据采集工具箱

    连接到数据采集卡,设备和模块
    数据采集​​工具箱™提供了用于配置数据采集硬件,将数据读取到MATLAB®和Simulink®以及将数据写入DAQ模拟和数字输出通道的应用程序和功能。该工具箱支持多种DAQ硬件,包括来自National Instruments™和其他供应商的USB,PCI,PCIExpress®,PXI®和PXI-Express设备。

    通过工具箱应用程序,您可以交互式设置数据采集界面并将其配置到您的硬件。然后,您可以生成等效的MATLAB代码以自动执行数据采集。工具箱功能使您可以灵活地控制DAQ设备的模拟输入,模拟输出,计数器/计时器和数字I / O子系统。您可以访问特定于设备的功能并同步从多个设备获取的数据。

    您可以在获取数据时对其进行分析,也可以将其保存以进行后处理。您还可以自动化测试,并根据分析结果对测试设置进行迭代更新。


    • 开始使用

    了解数据采集工具箱的基础

    • 硬件发现和设置

    设置DataAcquisition接口,查找并连接到指定设备,配置数据

    • 模拟量输入和输出

    使用支持的供应商的设备采集并生成模拟信号

    • 数字量输入输出

    使用数据采集硬件采集并生成数字数据

    • 计数器和计时器输入和输出

    使用National Instruments设备获取计数器数据并生成脉冲

    • 多声道音频输入和输出

    使用Windows®声卡获取多声道音频数据并生成信号

    • 周期性波形产生

    使用Digilent®设备生成周期函数波形

    • 同时同步操作

    同时采集和生成模拟数据,同步采集和生成

    • Simulink数据采集

    建立模型以获取和生成模拟和数字数据

    • 数据采集​​工具箱支持的硬件

    支持第三方硬件

    • 数据采集​​工具箱中的故障排除

    解决“数据采集工具箱”中的意外问题


    2.图像采集的工具箱

    从行业标准的硬件中获取图像和视频
    Image Acquisition Toolbox™提供了将相机连接到MATLAB®和Simulink®的功能和模块。 它包含一个MATLAB应用程序,可让您交互式地检测和配置硬件属性。 然后,您可以生成等效的MATLAB代码,以在以后的会议中自动进行采集。 该工具箱支持多种采集模式,例如循环处理,硬件触发,后台采集以及在多个设备之间同步采集。

    图像采集工具箱支持所有主要标准和硬件供应商,包括USB3 Vision,GigEVision®和GenICam™GenTL。 您可以连接到机器视觉相机和图像采集卡,以及高端科学和工业设备。


    • 开始使用

    了解图像采集工具箱的基础

    • 设备连接

    建立和管理图像采集设备与MATLAB之间的连接

    • 图像预览和设备配置

    预览图像并调整采集参数,例如亮度,分辨率和关注区域(ROI)

    • 图像数据采集

    从受支持的硬件(包括GigE Vision硬件和Matrox硬件)中获取图像数据

    • Simulink中的图像采集

    将实时视频数据带入Simulink模型,生成代码

    • 创建自定义适配器

    使用图像采集工具箱适配器套件创建适配器

    • 图像采集工具箱支持的硬件

    支持第三方硬件

    • 图像采集工具箱中的故障排除

    解决“图像采集工具箱”中的意外问题


    3.仪器控制工具箱

    控制测试和测量仪器,并与计算机外围设备和工业自动化设备通信
    Instrument Control Toolbox™使您可以将MATLAB®直接连接到仪器,例如示波器,函数发生器,信号分析仪,电源和分析仪器。该工具箱通过仪器驱动程序(例如IVI和VXIplug&play)或通过基于文本的SCPI命令通过常用的通信协议(例如GPIB,VISA,TCP / IP和UDP)连接到您的仪器。您也可以在不编写代码的情况下从测试设备控制和获取数据。

    使用仪器控制工具箱,您可以在MATLAB中生成数据以发送到仪器或将数据读取到MATLAB中进行分析和可视化。您可以基于LXI,PXI和AXIe标准自动执行测试,验证硬件设计并构建测试系统。

    该工具箱提供了对TCP / IP,UDP,I2C,SPI和Bluetooth®串行协议的内置支持,可与MATLAB的其他计算机和印刷电路板(PCB)进行远程通信。它还包括用于MODBUS®协议的功能和应用程序,从而可以与工业自动化设备(例如可编程逻辑控制器(PLC)和可编程自动化控制器(PAC))进行通信。


    • 开始使用

    了解仪器控制工具箱的基础

    • 仪器连接与通讯

    连接,配置和与仪器通信的基本步骤

    • 基于接口的仪器通讯

    低级协议,例如蓝牙,TCP / IP,UDP,I2C,SPI,MODBUS,串行端口,GPIB和VISA

    • 基于驾驶员的仪器通讯

    带有IVI,VXIplug&play或通用驱动程序的直观的面向语言的命令

    • Simulink中的直接接口通讯

    在Simulink®模型中发送和接收数据

    • 仪器控制工具箱支持的硬件

    支持第三方硬件

    • 仪器控制工具箱中的故障排除

    解决仪器控制工具箱中的意外问题


    4.OPC工具箱

    从OPC服务器和数据历史记录器读取和写入数据
    OPC Toolbox™可直接从MATLAB®和Simulink®访问实时和历史OPC数据。 您可以从诸如分布式控制系统,监控和数据采集系统以及可编程逻辑控制器之类的设备读取,写入和记录OPC数据。

    使用OPC Toolbox,您可以处理来自实时服务器和数据历史学家的数据,这些数据符合OPC数据访问(DA)标准,OPC历史数据访问(HDA)标准和OPC统一体系结构(UA)标准。 该工具箱使您可以使用各种安全模式,算法和身份验证方法安全地连接到OPC UA服务器。

    该产品包含Simulink模块,可让您对在线监督控制进行建模并执行硬件在环控制器测试。


    • 开始使用

    了解OPC工具箱的基础

    • 服务器连接和浏览

    连接到OPC服务器并浏览其名称空间

    • 资料存取

    访问OPC DA服务器上的数据

    • 历史数据访问

    访问OPC HDA服务器上的数据

    • 统一架构

    访问OPC UA服务器上的数据

    • OPC工具箱中的故障排除

    解决OPC工具箱中的意外问题


    5.ThingSpeak

    带有MATLAB Analytics的物联网平台
    ThingSpeak是一种物联网分析平台服务,可让您聚合,可视化和分析云中的实时数据流。 您可以从设备将数据发送到ThingSpeak™,创建实时数据的即时可视化图像,并使用Twitter®和Twilio®等Web服务发送警报。 借助ThingSpeak内的MATLAB®分析,您可以编写和执行MATLAB代码以执行预处理,可视化和分析。 ThingSpeak使工程师和科学家无需设置服务器或开发Web软件即可原型化和构建IoT系统。


    • 开始使用

    了解ThingSpeak的基础

    • 配置帐户和渠道

    关于ThingSpeak频道,用户和许可证的信息

    • 将数据写入通道

    使用REST和MQTT API使用软件或设备更新频道

    • 从通道读取数据

    使用REST和MQTT API通过软件或设备读取频道

    • 准备和分析数据

    在MATLAB中过滤,转换和响应数据

    • 可视化数据

    在MATLAB中转换和可视化数据

    • 对数据采取行动

    使用ThingSpeak应用触发操作或转换和可视化数据

    • 使用MATLAB进行专业分析

    ThingSpeak示例显示了附加工具箱中可用的高级工具的使用

    • API参考

    使用REST和MQTT API更新ThingSpeak通道并绘制存储在通道中的数字数据的图表


    6.车辆网络工具箱

    使用 CAN、J1939 和 XCP 协议与车载网络通信

    Vehicle Network Toolbox™ 提供 MATLAB® 函数和 Simulink® 模块以发送、接收、编码和解码 CAN、CAN FD、J1939 和 XCP 报文。通过该工具箱,您可以使用行业标准 CAN 数据库文件识别和解析特定信号,然后使用 CAN Bus Monitor App 可视化解码后的信号。使用 A2L 描述文件,您可以通过 CAN 或以太网上的 XCP 连接到 ECU。您可以访问存储在 MDF 文件中的报文和测量数据。

    该工具箱可简化与车载网络的通信,使您能够监控、筛选和分析实时 CAN 总线数据,或记录和录制报文以便以后分析和重播。您可以模拟虚拟 CAN 总线上的报文流或连接到实时网络或 ECU。Vehicle Network Toolbox 支持 Vector、Kvaser、PEAK-System 和 National Instruments® 提供的 CAN 接口设备。


    • Vehicle Network Toolbox 快速入门

    Vehicle Network Toolbox 基础知识学习

    • CAN 和 CAN FD 通信

    使用 CAN 或 CAN FD 协议的车载网络通信

    • XCP Communication

    使用 XCP 协议的车载网络通信

    • J1939 通信

    使用 J1939 协议的车载网络通信

    • 标准文件格式

    访问测量数据格式 (MDF)、ASAM 标定数据格式 (CDF) 和二进制记录格式 (BLF) 文件

    • Vehicle Network Toolbox 支持的硬件

    对第三方硬件的支持


    八、计算金融学

    1.数据库工具箱

    与关系数据库和非关系数据库交换数据
    Database Toolbox™提供了用于与关系数据库和非关系数据库交换数据的功能和一个应用程序。 它通过自动在数据库和MATLAB®数据类型之间转换来实现这种交换。

    数据库工具箱支持任何符合ODBC或JDBC的关系数据库。 它还为Apache™Cassandra®,MongoDB®和Neo4j®提供NoSQL支持。 提供了MySQL®和PostgreSQL的本机接口。

    使用数据库浏览器应用程序,您无需编写代码即可浏览关系数据,然后生成MATLAB代码以自动化或操作数据库工作流程。 对于大型数据工作流,您可以拆分SQL查询并并行访问数据(使用Parallel Computing Toolbox™和MATLAB Parallel Server™)。


    • 开始使用

    了解数据库工具箱的基础

    • 关系数据库

    通过配置驱动程序并使用SQL,探索Microsoft®Access™,Microsoft SQLServer®和Oracle®等数据库中的数据

    • 柱状数据库

    使用适用于ApacheCassandra®数据库的数据库工具箱界面浏览宽列数据库中的数据

    • 文件资料库

    使用MongoDB的数据库工具箱界面浏览和管理MongoDB中的文档集合

    • 图数据库

    使用与Neo4j的MATLAB接口或针对Neo4j Bolt协议的数据库工具箱接口,在Neo4j数据库中浏览,管理,存储和分析图形数据

    • 数据库应用程序部署

    创建和部署独立的数据库应用程序以与他人共享MATLAB代码

    • 数据库工具箱中的故障排除

    解决数据库工具箱中的意外问题


    2.数据处理工具箱

    从数据服务提供商访问财务数据
    Datafeed Toolbox™提供对领先金融数据提供商的当前,日内,历史和实时市场数据的访问。通过将这些数据馈送集成到MATLAB®中,您可以执行分析,开发模型并创建反映当前财务和市场行为的可视化。该工具箱还提供了将MATLAB数据导出到某些数据服务提供商的功能。

    您可以从MATLAB建立连接以检索历史数据或订阅来自数据服务提供商的实时流。通过单个函数调用,工具箱可让您自定义查询,以在指定时间段内访问多个证券中的所有或选定字段。您还可以检索指定时间间隔的日内变动数据并将其存储为时间序列数据。

    支持的数据提供者包括Bloomberg®,FactSet®,FRED®,HaverAnalytics®,IQFEED®,KxSystems®,Inc.,Quantl®,SIX Financial Information和Refinitiv™。


    • 开始使用

    了解数据Feed工具箱的基础

    • 彭博社

    彭博社提供的当前市场,实时,盘中报价,历史和安全查询数据

    • 事实集

    来自FactSet的历史和实时数据

    • 重新初始化

    Refinitiv的实时,当前市场,日内波动和历史数据

    • 其他服务提供商

    来自其他金融数据服务提供商的数据


    3.计量经济学的工具箱

    使用统计方法对金融和经济系统进行建模和分析
    Econometrics Toolbox™提供用于分析和建模时间序列数据的功能。 它为模型选择提供了广泛的可视化和诊断功能,包括自相关性和异方差性,单位根和平稳性,协整,因果关系和结构变化的测试。 您可以使用各种建模框架来估计,模拟和预测经济系统。 这些框架包括回归,ARIMA,状态空间,GARCH,多元VAR和VEC以及转换模型。 该工具箱还提供了贝叶斯工具,用于开发从新数据中学习的时变模型。


    • 开始使用

    了解计量经济学工具箱的基础

    • 数据预处理

    格式化,绘制和转换时间序列数据

    • 选型

    规格测试和模型评估

    • 时间序列回归模型

    贝叶斯线性回归模型和非球面扰动的回归模型

    • 条件均值模型

    自回归(AR),移动平均(MA),ARMA,ARIMA,ARIMAX和季节性模型

    • 条件方差模型

    GARCH,指数GARCH(EGARCH)和GJR模型

    • 多元模型

    协整分析,向量自回归(VAR),向量误差校正(VEC)和贝叶斯VAR模型

    • 马尔可夫模型

    离散时间马尔可夫链,马尔可夫切换自回归和状态空间模型


    4.金融工具的工具箱

    设计,定价和对冲复杂的金融工具
    Financial Instruments Toolbox™提供用于定价,建模,对冲和分析现金流量固定收益证券和衍生工具(包括股票,利率,信贷和能源工具)的功能。 对于利率工具,您可以计算各种工具类型的价格,收益率,利差和敏感度值,包括可转换债券,抵押支持证券,国库券,债券,掉期,上限,下限和浮动利率票据。 对于衍生工具,您可以使用二项式树,三项式树,Shifted SABR,Heston,蒙特卡洛模拟和其他模型来计算价格,隐含波动率和希腊文。 您还可以连接到Numerix®CrossAsset集成层,用于固定收益证券,OTC衍生品,结构性产品和可变年金产品的评估和风险管理。


    • 开始使用

    了解金融工具箱的基础

    • 收益率曲线

    从市场数据中引导收益曲线,为收益曲线模型估算参数,从历史数据中模拟收益曲线

    • 利率工具

    利率工具的价格,敏感度和期限结构

    • 股票衍生品

    股票期权的价格和敏感性

    • 能源衍生品

    能源期权的价格和敏感性

    • 信用衍生产品和信用敞口

    信用违约掉期定价和违约概率曲线,交易对手信用风险敞口

    • 抵押贷款支持证券

    抵押贷款通过现金流量,CMO工具定价

    • Numerix接口

    使用Numerix CROSSASSET的Numerix工具和风险模型

    • 使用模块化对象的价格工具

    使用简化的工作流为利率,权益,商品,外汇或信用衍生工具定价


    5.金融工具箱

    分析财务数据并开发财务模型
    Financial Toolbox™提供用于财务数据的数学建模和统计分析的功能。 您可以考虑营业额,交易成本,半连续约束以及最小或最大资产数量来分析,回测和优化投资组合。 该工具箱使您可以估算风险,对信用记分卡建模,分析收益曲线,定价固定收益工具和欧洲期权以及衡量投资绩效。

    随机微分方程(SDE)工具使您可以建模和模拟各种随机过程。 时间序列分析功能使您可以对丢失的数据执行转换或回归,并在不同的交易日历和日计数约定之间进行转换。


    • 开始使用

    了解财务工具箱的基础

    • 数据预处理

    日期和货币的金融市场数据

    • 金融时间表

    时间表,日期转换和合并,图表技术指标

    • 财务数据分析

    现金流量和绩效指标,回归分析,财务数据图表

    • 投资组合优化和资产分配

    创建投资组合,评估资产构成,执行均值方差,CVaR或均值绝对偏差投资组合优化,回测投资策略

    • 信用风险

    信用风险,信用评级的过渡概率,信用质量阈值,信用记分卡

    • 定价和分析金融工具

    收益率曲线,固定收益证券的估值,股票衍生品的定价

    • 随机微分方程(SDE)模型

    参数模型,例如几何布朗运动(GBM)和Heston波动率


    6.风险管理工具箱

    开发风险模型并进行风险模拟
    Risk Management Toolbox™提供了用于信用和市场风险的数学建模和仿真的功能。 您可以对违约概率建模,创建信用记分卡,执行信用投资组合分析以及回测模型以评估潜在的财务损失。 该工具箱可让您评估公司和消费者的信用风险以及市场风险。 它包括一个用于对信用计分卡的变量进行自动和手动分箱的应用程序。 它还包括用于分析信贷资产组合风险的仿真工具和用于评估风险价值(VaR)和预期缺口(ES)的回测工具。


    • 开始使用

    了解风险管理工具箱的基础

    • 消费信贷风险

    消费信贷产品违约造成的损失风险

    • 企业信用风险

    因企业信贷产品违约和企业信用评级迁移而造成损失的风险

    • 市场风险

    市场价格变动造成损失的风险

    • 保险风险

    死亡和未付索赔造成损失的风险

    • 违约概率的生命周期模型

    根据寿命分析估算损失准备金


    7.电子表格的链接

    从Microsoft Excel使用MATLAB
    Spreadsheet Link™将Excel®电子表格软件与MATLAB®工作区连接起来,使您能够从Excel电子表格访问MATLAB环境。 使用Spreadsheet Link软件,您可以利用熟悉的Excel界面在MATLAB和Excel之间交换数据,同时访问MATLAB的计算速度和可视化功能。


    • 开始使用

    了解电子表格链接的基础

    • 启动和关机

    启动和关闭选项

    • 客制化

    更改偏好

    • 数据导出到MATLAB

    在不离开Microsoft®Excel环境的情况下导出,删除或修改MATLAB工作区中的数据

    • 从MATLAB导入数据

    将数据从MATLAB工作区导入到Microsoft Excel环境

    • Microsoft Excel中的MATLAB函数

    使用Microsoft Excel中的数据执行MATLAB函数并在电子表格中显示结果

    • 电子表格链接中的故障排除

    解决电子表格链接中的意外问题


    8.交易的工具箱

    获取价格,分析交易成本,并将订单发送到交易系统
    Trading Toolbox™提供了用于分析交易成本,访问交易和报价价格数据,定义订单类型以及将订单发送到金融交易市场的功能。该工具箱可让您将流数据和基于事件的数据集成到MATLAB®中,从而使您能够开发金融交易策略和算法,以实时分析和响应市场。您可以构建可在多种资产类别,工具类型和交易市场上使用的算法或自动交易策略,同时与行业标准或专有交易执行平台集成。

    使用交易工具箱,您可以在下订单之前分析和估算交易成本,以及交易后的属性成本。您可以分析与市场影响,时机,流动性和价格升值相关的交易成本,并使用成本曲线使单个资产或资产组合的交易成本降至最低。

    交易工具箱可让您访问可交易工具数据的实时流,包括报价,交易量,交易,市场深度和工具元数据。您可以定义订单类型并指定订单发送和填写过程。


    • 开始使用

    了解交易工具箱的基础

    • 交易成本分析

    进行交易成本,敏感性和交易后执行分析

    • 彭博社

    通过Bloomberg®EMSX创建和维护订单,路线和策略

    • CQG

    通过CQG®访问市场数据并提交订单

    • FIX传单

    使用FIX Flyer™通过FIX消息访问市场数据,提交订单和请求信息

    • 盈透证券

    使用IB Trader WorkstationSM通过InteractiveBrokers®访问市场数据,提交订单和请求信息

    • 交易技术

    通过TradingTechnologies®X_TRADER®访问市场数据并提交订单

    • 风数据馈送服务(WDS)

    通过Wind Financial Terminal访问市场数据并管理订单


    九、计算生物学

    1.生物信息学工具箱

    读取,分析和可视化基因组和蛋白质组数据
    Bioinformatics Toolbox™提供了用于下一代测序(NGS),微阵列分析,质谱和基因本体的算法和应用程序。 使用工具箱功能,您可以从标准文件格式(例如SAM,FASTA,CEL和CDF)以及在线数据库(例如NCBI Gene Expression Omnibus和GenBank®)读取基因组和蛋白质组数据。 您可以使用序列浏览器,空间热图和聚类图来探索和可视化这些数据。 该工具箱还提供了统计技术,可用于检测峰值,为缺失数据估算值以及选择特征。

    您可以组合工具箱功能以支持常见的生物信息学工作流程。 您可以使用ChIP-Seq数据来识别转录因子。 分析RNA-Seq数据以鉴定差异表达的基因; 识别微阵列数据中的拷贝数变异和SNP; 并使用质谱数据对蛋白质谱进行分类。


    • 开始使用

    了解生物信息学工具箱的基础

    • 高通量测序

    下一代测序(NGS)数据的基因表达,转录因子和甲基化分析,包括RNA-Seq和ChIP-Seq

    • 芯片分析

    基因芯片数据的基因表达和遗传变异分析

    • 序列分析

    基因组和蛋白质组学序列,比对和系统发育

    • 结构分析

    可视化和操纵蛋白质和其他生物分子的3-D结构; RNA二级结构预测和可视化

    • 质谱和生物分析

    分离技术产生的带有峰的痕迹的数据,包括MS,LC / MS,NMR,色谱法和电泳


    2.模拟生物学

    建模,模拟和分析生物系统
    SimBiology®提供用于建模,模拟和分析动态系统的应用程序和编程工具,重点是定量系统药理学(QSP),基于生理的药代动力学(PBPK)和药代动力学/药代动力学(PK / PD)应用。您可以使用SimBiology框图编辑器以交互方式构建模型,也可以使用MATLAB®语言以编程方式构建模型。您可以从头开始创建模型,也可以将其导入为SBML格式的文件,也可以基于SimBiology中提供的模型示例进行构建。

    SimBiology提供了多种技术来分析复杂度和大小各异的基于ODE的模型。您可以运行模拟以评估目标可行性,预测药物疗效和安全性以及确定最佳给药方案。您可以使用局部和全局敏感性分析来识别关键途径和参数,并通过运行参数扫描来评估生物学变异性。要估计参数,您可以使用非线性回归和非线性混合效应技术拟合数据并执行非房室分析(NCA)。


    • 开始使用

    了解SimBiology的基础知识

    • SimBiology应用

    交互式应用程序可简化动态系统的构建,仿真和分析

    • 造型

    导入,构建和导出系统动力学的机制或PKPD表示形式

    • 模拟

    模拟对生物变异性或不同剂量条件的响应,扫描参数范围,计算灵敏度

    • 估算值

    分组或合并数据的最小二乘估计以及总体参数的最大似然估计

    • 部署方式

    为独立应用程序部署SimBiology模型


    十、应用程序部署

    1.MATLAB编译器

    从MATLAB程序构建独立的可执行文件和Web应用程序
    MATLAB®Compiler™使您可以将MATLAB程序共享为独立的应用程序和Web应用程序。 使用MATLAB编译器,您还可以将MATLAB程序打包和部署为MapReduce和Spark™大数据应用程序以及Microsoft®Excel®插件。 最终用户可以使用MATLAB Runtime免费运行您的应用程序。

    要提供对MATLAB Web应用程序的基于浏览器的访问,可以使用MATLAB Compiler随附的开发版MATLAB Web App Server托管它们。 可以将MATLAB程序打包到软件组件中,以便与其他编程语言集成(使用MATLAB Compiler SDK™)。 通过MATLAB Production Server™支持大规模部署到企业系统。


    • 开始使用

    了解MATLAB编译器的基础知识

    • 独立应用

    从MATLAB函数创建独立的应用程序

    • Excel加载项

    从MATLAB函数创建Microsoft Excel加载项

    • Hadoop集群上的MapReduce应用程序

    针对Hadoop®集群创建并执行打包的MATLAB MapReduce应用程序

    • Spark应用

    针对启用Spark的Hadoop集群创建并执行已编译的MATLAB应用程序

    • 网络应用

    打包MATLAB应用程序以部署到MATLAB Web App Server

    • MATLAB运行时

    使用MATLAB Runtime在未安装MATLAB的计算机上运行打包的MATLAB应用程序


    2.MATLAB编译器SDK

    从MATLAB程序构建软件组件
    MATLAB®Compiler SDK™扩展了MATLAB Compiler™的功能,使您可以从MATLAB程序构建C / C ++共享库,Microsoft®.NET程序集和Java®类。 这些组件可以与自定义应用程序集成,然后部署到台式机,Web和企业系统中。

    MATLAB Compiler SDK包括MATLAB Production Server™的开发版本,用于在将应用程序代码和Excel®加载项部署到Web应用程序和企业系统之前对其进行测试和调试。

    使用MATLAB Compiler SDK中的软件组件创建的应用程序可以与不需要MATLAB的用户免费共享。 这些应用程序使用MATLAB Runtime,这是一组共享库,可以执行已编译的MATLAB应用程序或组件。 要从MATLAB生成C和C ++源代码,请使用MATLAB Coder™


    • 开始使用

    了解MATLAB Compiler SDK的基础

    • 打包MATLAB函数

    打包MATLAB函数以用于以其他语言编码的应用程序中

    • C共享库集成

    将打包的MATLAB函数集成到C应用程序中

    • C ++共享库集成

    将打包的MATLAB函数集成到C ++应用程序中

    • .NET程序集集成

    将已编译的MATLAB函数集成到.NET应用程序中

    • Java包集成

    将编译的MATLAB函数集成到Java应用程序中

    • Python软件包集成

    将已编译的MATLAB函数集成到Python®应用程序中

    • COM组件集成

    将COM组件集成到应用程序中

    • 使用MATLAB Production Server进行企业部署

    在服务器上运行MATLAB代码,并使用各种客户端进行访问

    • 分发应用程序

    分发使用编译的MATLAB函数的应用程序

    • 在MATLAB Compiler SDK中进行故障排除

    解决MATLAB Compiler SDK中的意外问题


    3.MATLAB生产服务器

    将MATLAB算法集成到Web,数据库和企业应用程序中
    使用MATLAB®Production Server™,您可以将自定义分析功能整合到在专用服务器或云中运行的Web,数据库和生产企业应用程序中。 您可以在MATLAB中创建算法,使用MATLAB Compiler SDK™将其打包,然后将其部署到MATLAB Production Server,而无需重新编码或创建自定义基础结构。 然后,用户可以自动访问最新版本的分析。

    MATLAB Production Server同时管理多个MATLAB Runtime版本。 因此,可以将在不同版本的MATLAB中开发的算法集成到您的应用程序中。 该服务器在多处理器和多核计算机上运行,提供低延迟的并发工作请求处理。 您可以将服务器部署在其他计算节点上,以扩展容量并提供冗余。


    • 开始使用

    了解MATLAB Production Server的基础

    • 可部署档案创建

    从MATLAB代码创建档案以部署到服务器

    • 服务器管理

    创建和管理一个或多个托管可部署档案的服务器实例

    • 客户端编程

    创建客户端程序以访问服务器实例上托管的MATLAB功能

    • Excel整合

    创建可与MATLAB Production Server一起使用的Excel®加载项

    • 云部署

    在Microsoft®Azure®和AWS®上部署MATLAB Production Server


    4.MATLAB Web App服务器

    将MATLAB应用程序和Simulink仿真共享为基于浏览器的Web应用程序
    MATLAB®Web App Server™使您可以将MATLAB应用程序和Simulink®仿真托管为交互式Web应用程序。 您可以使用App Designer创建应用程序,使用MATLAB Compiler™打包应用程序,并使用MATLAB Web App Server托管它们。 您的最终用户可以使用浏览器访问和运行Web应用程序,而无需安装其他软件。

    MATLAB Web App Server支持与OpenID Connect和LDAP等身份验证标准集成,因此您可以控制对Web应用程序的访问。 您可以托管和共享使用不同版本的MATLAB和Simulink开发的多个应用。


    • 开始使用

    了解MATLAB Web App Server的基础

    • 服务器管理

    设置,配置和管理MATLAB Web App Server

    • 安全

    减轻在MATLAB Web App Server上运行Web应用程序的风险

    • 故障排除

    解决MATLAB Web App Server的意外问题


    十一、基于事件建模

    1.SimEvents

    建模和仿真离散事件系统
    SimEvents®提供了离散事件仿真引擎和组件库,用于分析事件驱动的系统模型并优化性能特征,例如延迟,吞吐量和数据包丢失。 队列,服务器,交换机和其他预定义的块使您可以对路由,处理延迟以及调度和通信的优先级建模。

    使用SimEvents,您可以研究任务定时和资源使用情况对分布式控制系统,软件和硬件体系结构以及通信网络的性能的影响。 您还可以对与预测,产能计划和供应链管理有关的决策进行运营研究。


    • 开始使用

    了解SimEvents的基础

    • 队列,服务和路由建模

    生成和销毁实体,使用实体属性,路由和延迟实体,编写事件操作

    • 资源分配建模

    合并实体,使用资源进行建模,对实体进行分组,创建复合实体和批处理实体

    • 仿真,调试和可视化

    模拟和调试您的SimEvents模型,创建自定义可视化工具以观察实体和事件

    • 统计与数据分析

    计算实体,使用Sequence Viewer块

    • 与Simulink的接口

    使用基于时间和基于事件的组件创建模型,选择求解器,保存仿真状态

    • 块创作

    使用离散事件系统对象创建自定义队列和服务器

    • 应用领域

    示例模型说明了SimEvents软件的特定功能和应用


    2.Stateflow

    使用状态机与流程图对决策逻辑进行建模和仿真
    Stateflow® 提供了一种图形语言,包括状态转移图、流程图、状态转移表和真值表。您可以使用 Stateflow 来说明 MATLAB® 算法和 Simulink® 模型如何响应输入信号、事件和基于时间的条件。

    Stateflow 使您能够设计和开发监控、任务调度、故障管理、通信协议、用户界面和混合系统。

    使用 Stateflow,您可以对组合和时序决策逻辑进行建模,使其可作为 Simulink 模型中的模块进行仿真或作为 MATLAB 中的对象执行。图形动画使您能够在执行逻辑时对其进行分析和调试。编辑时和运行时检查可确保在实现前具有设计一致性和完整性。


    • Stateflow 快速入门

    Stateflow 基础知识学习

    • 图编程

    对组合和时序逻辑的状态机进行编程

    • 设计复杂逻辑

    遵循监督逻辑的通用设计模式

    • Simulink 中的仿真

    将 Stateflow 图作为 Simulink 模型中的模块进行仿真

    • 在 MATLAB 中执行

    将独立的 Stateflow 图作为对象在 MATLAB 中执行

    • 验证和代码生成

    测试、调试、记录数据并生成代码


    十二、物理建模

    1.Simscape

    建模和模拟多域物理系统
    Simscape™使您可以在Simulink®环境中快速创建物理系统的模型。使用Simscape,您可以基于直接与框图和其他建模范例集成的物理连接来构建物理组件模型。您可以通过将基本组件组装到示意图中来对诸如电动机,桥式整流器,液压执行器和制冷系统之类的系统进行建模。 Simscape附加产品提供了更复杂的组件和分析功能。

    Simscape可帮助您开发控制系统并测试系统级性能。您可以使用基于MATLAB®的Simscape语言创建自定义组件模型,该语言支持基于文本的物理建模组件,域和库的创作。您可以使用MATLAB变量和表达式对模型进行参数化,并在Simulink中为物理系统设计控制系统。要将模型部署到其他仿真环境,包括硬件在环(HIL)系统,Simscape支持C代码生成。


    • 开始使用

    了解Simscape的基础

    • 物理建模

    模型构建技术和最佳实践,特定领域的建模,物理单元

    • 桌面模拟

    解算器选择,变量初始化,修整和线性化,数据记录

    • 实时仿真

    固定步骤,固定成本的模拟; 硬件在环仿真

    • 部署方式

    代码生成,与附加产品模块共享模型

    • 客制化

    使用Simscape语言进行自定义组件和领域建模


    2.Simscape传动系统

    建模和仿真旋转和平移机械系统
    Simscape™Driveline™提供了用于建模和仿真旋转和平移机械系统的组件库。它包括蜗轮,导螺杆和车辆部件(例如发动机,轮胎,变速器和变矩器)的模型。您可以使用这些组件对直升机动力传动系统,工业机械,汽车动力总成和其他应用中的机械动力传递进行建模。您可以使用Simscape系列产品中的组件将电气,液压,气动和其他物理系统集成到模型中。

    Simscape Driveline可帮助您开发控制系统并测试系统级性能。您可以使用基于MATLAB®的Simscape语言创建自定义的组件模型,该语言支持基于文本的物理建模组件,域和库的创作。您可以使用MATLAB变量和表达式对模型进行参数化,并在Simulink®中为物理系统设计控制系统。要将模型部署到其他仿真环境,包括硬件在环(HIL)系统,Simscape Driveline支持C代码生成。


    • 开始使用

    了解Simscape Driveline的基础知识

    • 应用领域

    示例模型说明了特定的功能和应用

    • 传动系建模

    模型构建技术和最佳实践

    • 制动器和制动器

    旋转,平移摩擦和棘爪限制,减慢或停止运动

    • 离合器

    传动轴与库仑摩擦力耦合

    • 联轴器和驱动器

    动态传递扭矩和运动

    • 引擎

    发动机是动力传动系统的动力来源

    • 齿轮

    耦合简单和复杂运动

    • 惯性和负荷

    传动系统负载可变且不平衡

    • 感测器

    传动系统组件的旋转和平移测量

    • 资料来源

    平移和旋转系统的随机噪声和正弦振动

    • 轮胎和车辆

    简单和复杂的轮胎,车身

    • 变速箱

    动力传输,齿轮比

    • 传动系模拟

    仿真性能,解决仿真问题

    • 实时仿真

    实时部署的仿真性能


    3.Simscape电气

    建模和仿真电子,机电和电力系统
    Simscape™Electrical™(以前称为SimPowerSystems™和SimElectronics®)提供了用于对电子,机电和电力系统进行建模和仿真的组件库。它包括半导体,电动机和组件的模型,这些模型适用于机电致动,智能电网和可再生能源系统等应用。您可以使用这些组件来评估模拟电路体系结构,开发具有电驱动器的机电系统,并分析电网级别的电能的产生,转换,传输和消耗。

    Simscape Electrical可帮助您开发控制系统并测试系统级别的性能。您可以使用MATLAB®变量和表达式对模型进行参数设置,并在Simulink®中为电气系统设计控制系统。您可以使用Simscape系列产品中的组件将机械,液压,热力和其他物理系统集成到模型中。要将模型部署到其他仿真环境中,包括硬件在环(HIL)系统,Simscape Electrical支持C代码生成。

    Simscape Electrical是与蒙特利尔Hydro-Québec合作开发的。


    • 开始使用

    了解Simscape Electrical的基础知识

    • 应用领域

    电子,机电和电力系统应用的设备和系统示例

    • 建模和仿真基础

    模型构建技术,最佳实践和参数化方法

    • 电气块库

    电子,机电和电力系统模块,与其他Simscape模块兼容

    • 控制

    使用控制器,数学转换和脉宽调制来构建网络控制系统

    • 仿真与分析

    性能改进,分析工具和技术

    • 实时仿真

    Simulink Real-Time™Simscape检查,Simscape HDL Workflow Advisor

    • 专用电源系统

    使用专用组件和算法对电力系统进行建模


    4.Simscape流体

    建模和仿真流体系统
    Simscape™Fluids™提供用于建模和仿真流体系统的组件库。它包括液压泵,阀门,执行器,管道和热交换器的模型。您可以使用这些组件来开发流体动力系统,例如前装载器,动力转向和起落架致动系统。 Simscape Fluids还使您能够开发发动机冷却,变速箱润滑和燃油供应系统。您可以使用Simscape系列产品中的组件将机械,电气,热和其他物理系统集成到模型中。

    Simscape Fluids可帮助您开发控制系统并测试系统级别的性能。您可以使用基于MATLAB®的Simscape语言创建自定义的组件模型,该语言支持基于文本的物理建模组件,域和库的创作。您可以使用MATLAB变量和表达式对模型进行参数化,并在Simulink®中为液压系统设计控制系统。为了将模型部署到其他仿真环境,包括硬件在环(HIL)系统,Simscape Fluids支持C代码生成。


    • 开始使用

    了解Simscape Fluids的基础

    • 流体网络建模基础

    流体系统的建模技术,约束和最佳实践

    • 流体网络接口

    用于连接不同流体域的流体网络的专用组件

    • 等温液体成分

    在等温液态域中建模流体网络的专用组件

    • 导热液体成分

    用于在“热液体”领域建模流体网络的专用组件

    • 两相流体成分

    在两相流体域中建模流体网络的专用组件

    • 气体成分

    用于在气域中建模流体网络的专用组件

    • 液压(等温)组件

    在液压领域(等温液体)中建模流体网络的专用组件


    5.Simscape多体

    建模和仿真多体机械系统
    Simscape™Multibody™为3D机械系统(如机器人,车辆悬架,建筑设备和飞机起落架)提供了多体仿真环境。您可以使用代表实体,关节,约束,受力元件和传感器的块来对多实体系统建模。 Simscape Multibody制定并解决了整个机械系统的运动方程。您可以将完整的CAD装配体(包括所有质量,惯性,关节,约束和3D几何体)导入到模型中。自动生成的3D动画使您可以可视化系统动态。

    Simscape Multibody可帮助您开发控制系统并测试系统级性能。您可以使用MATLAB®变量和表达式对模型进行参数化,并在Simulink®中为多体系统设计控制系统。您可以使用Simscape系列产品中的组件将液压,电气,气动和其他物理系统集成到模型中。要将模型部署到其他仿真环境,包括硬件在环(HIL)系统,Simscape Multibody支持C代码生成。


    • 开始使用

    了解Simscape Multibody的基础知识

    • 多体建模

    模拟实体,使用关节和约束对其进行组装,指定并感知感兴趣的动态量

    • 仿真与分析

    运行模拟,可视化模型并进行运动学分析

    • 模型导入

    将多体模型导入Simscape多体环境

    • 部署方式

    准备部署模型


    6.Simscape多体链接

    导出CAD组件以在Simscape Multibody软件中使用
    Simscape™Multibody™Link是一个CAD插件,用于从SolidWorks®,AutodeskInventor®和PTC®Creo™软件导出CAD装配。 该插件会生成一个XML文件,详细说明您的CAD装配件的结构和属性以及用于可视化各种CAD零件的3-D几何文件。 然后,您可以将文件导入Simscape Multibody软件,该软件分析XML数据并自动生成等效的多体模型。


    • 开始使用

    了解Simscape Multibody Link的基础

    • Autodesk Inventor

    以与Simscape Multibody软件兼容的格式导出Autodesk®Inventor®装配体模型

    • PTC Creo

    以与Simscape Multibody软件兼容的格式导出PTC Creo装配体模型

    • 扎实的作品

    以与Simscape Multibody软件兼容的格式导出您的SolidWorks装配体模型


    十三、机器人和自主系统

    1.自动驾驶工具箱

    设计,模拟和测试ADAS和自动驾驶系统
    Automated Driving Toolbox™提供了用于设计,模拟和测试ADAS和自动驾驶系统的算法和工具。您可以设计和测试视觉和激光雷达感知系统,以及传感器融合,路径规划和车辆控制器。可视化工具包括鸟瞰图,传感器覆盖范围,检测和轨迹范围以及视频,激光雷达和地图显示。该工具箱使您可以导入和使用HERE HD Live Map数据和OpenDRIVE®道路网络。

    使用地面真理标签应用程序,您可以自动标记地面真理,以训练和评估感知算法。对于硬件在环(HIL)测试和感知,传感器融合,路径规划和控制逻辑的桌面模拟,您可以生成和模拟驾驶场景。您可以在逼真的3D环境中模拟摄像头,雷达和激光雷达传感器的输出,并在2.5D模拟环境中模拟对象和车道边界的传感器检测。

    自动驾驶工具箱提供了常见ADAS和自动驾驶功能(包括FCW,AEB,ACC,LKA和停车代客)的参考应用示例。该工具箱支持C / C ++代码生成以进行快速原型制作和HIL测试,并支持传感器融合,跟踪,路径规划和车辆控制器算法。


    • 开始使用

    了解自动驾驶工具箱的基础

    • 地面真相标签

    交互式地面真相标记多个信号

    • 场景模拟

    在模拟环境中创作场景,生成传感器数据,测试算法

    • 检测与追踪

    相机传感器配置,视觉,激光雷达处理,跟踪和传感器融合

    • 本地化和映射

    SLAM,HERE HD Live Map数据分析,地图可视化

    • 规划与控制

    车辆成本图,最佳RRT *路径规划,横向和纵向控制器

    • 应用领域

    自适应巡航控制,自动紧急制动,自动停车代客,高速公路车道跟踪


    2.激光雷达工具箱

    设计,分析和测试激光雷达处理系统
    Lidar Toolbox™提供了用于设计,分析和测试激光雷达处理系统的算法,功能和应用程序。您可以执行对象检测和跟踪,语义分割,形状拟合,激光雷达配准和障碍物检测。激光雷达工具箱支持结合了计算机视觉和激光雷达处理功能的工作流程的激光雷达/摄像机交叉校准。

    您可以使用PointSeg,PointPillar和SqueezeSegV2等深度学习和机器学习算法训练自定义检测和语义细分模型。 Lidar Labeler应用程序支持对激光雷达点云进行手动和半自动标记,以训练深度学习和机器学习模型。该工具箱使您可以流式传输来自Velodyne®激光雷达的数据,并读取Velodyne和IBEO激光雷达传感器记录的数据。

    激光雷达工具箱提供的参考示例说明了激光雷达处理在感知和导航工作流程中的使用。大多数工具箱算法都支持C / C ++代码生成,以与现有代码集成,桌面原型制作和部署。


    • 开始使用

    了解激光雷达工具箱的基础

    • 激光雷达和点云I / O

    读取,写入和可视化激光雷达数据

    • 激光雷达点云处理

    下采样,中值滤波,变换,从3-D点云中提取特征并进行对齐

    • 细分,检测和标记

    使用深度学习和几何算法在点云数据中分割,检测,标记和跟踪对象

    • 激光雷达相机校准

    执行校准,估计激光雷达-摄像机变换,并融合每个传感器的数据

    • 基于激光雷达的导航

    点云注册和地图构建,3-D同时定位和制图以及2-D激光雷达对象检测

    • 激光雷达工具箱支持的硬件

    支持第三方硬件


    3.导航工具箱

    设计,模拟和部署用于计划和导航的算法
    Navigation Toolbox™提供用于设计运动计划和导航系统的算法和分析工具。 该工具箱包含可自定义的搜索和基于采样的路径规划器。 它还包含用于多传感器姿态估计的传感器模型和算法。 您可以使用自己的数据创建2D和3D地图表示,也可以使用工具箱中包含的同时定位和地图绘制(SLAM)算法生成地图。 提供了用于自动驾驶和机器人技术应用的参考示例。

    您可以生成度量标准以比较路径的最佳性,平滑性和性能基准。 SLAM地图构建器应用程序可让您交互式地可视化和调试地图生成。 您可以通过将算法直接部署到硬件(使用MATLAB®Coder™或Simulink®Coder)来测试算法。


    • 开始使用

    了解导航工具箱的基础

    • 传感器型号

    IMU,GPS和距离传感器的校准和仿真

    • 本地化和姿势估计

    惯性导航,姿态估计,扫描匹配,蒙特卡洛定位

    • 制图

    2-D和3-D占用图,以自我为中心的图,光线投射

    • SLAM

    2-D和3-D同时定位和映射

    • 运动计划

    路径指标,RRT路径规划者,路径跟随

    • 坐标变换和轨迹

    四元数,旋转矩阵,变换,轨迹生成


    4.公路跑者

    设计3D场景以进行自动驾驶模拟
    RoadRunner是一个交互式编辑器,可让您设计3D场景以模拟和测试自动驾驶系统。您可以通过创建特定于区域的道路标志和标记来自定义道路场景。您可以插入标志,信号,护栏和道路损坏,以及树叶,建筑物和其他3D模型。 RoadRunner提供了用于在交叉路口设置和配置交通信号灯的时间,相位和车辆路径的工具。

    RoadRunner支持激光雷达点云,航空影像和GIS数据的可视化。您可以使用OpenDRIVE®导入和导出道路网络。使用RoadRunner构建的3D场景可以以FBX®,glTF™,OpenFlight,OpenSceneGraph,OBJ和USD格式导出。导出的场景可用于自动驾驶模拟器和游戏引擎,包括CARLA,VIRES VTD,NVIDIA DRIVESim®,LGSVL,百度Apollo®,Unity®和UnrealEngine®。

    使用RoadRunner资产库,您可以使用大量逼真的,视觉上一致的3D模型快速填充3D场景。


    • 开始使用

    了解RoadRunner的基础知识

    • 用户界面

    UI组件,布局自定义以及编辑的一般方面

    • 基本原理

    摄像机移动,对象选择以及项目和场景创建

    • 资产

    3D模型,纹理,GIS文件和多个RoadRunner场景共享的其他数据

    • 工具类

    用于创建和修改道路,车道,路口,道具和地形的工具

    • 出口

    将RoadRunner场景导出为各种文件格式和目标模拟器

    • 输入

    将场景数据(例如OpenDRIVE道路)导入RoadRunner

    • 技巧和窍门

    使用RoadRunner的提示和技巧

    • RoadRunner资产库

    使用3D模型库填充RoadRunner场景

    • RoadRunner场景生成器

    从高清地图自动生成3D道路模型


    5.机器人系统工具箱

    设计,模拟和测试机器人应用程序
    Robotics System Toolbox™提供了用于设计,模拟和测试操纵器,移动机器人和类人机器人的工具和算法。对于机械手和类人机器人,该工具箱包含用于碰撞检查,轨迹生成,正向和反向运动学以及使用刚体树表示的动力学的算法。对于移动机器人,它包括用于映射,定位,路径规划,路径跟踪和运动控制的算法。工具箱提供了常见工业机器人应用程序的参考示例。它还包括一个可购买的工业机器人模型库,您可以导入,可视化和模拟。

    您可以通过组合提供的运动学模型和动态模型来开发功能性机器人原型。通过直接连接到Gazebo机器人模拟器,该工具箱可让您共同仿真机器人应用程序。为了在硬件上验证您的设计,您可以连接到机器人平台并生成和部署代码(使用MATLAB®Coder™或Simulink®Coder)。


    • 开始使用

    了解机器人系统工具箱的基础

    • 机械手算法设计

    刚体树模型,逆运动学,动力学,轨迹

    • 移动机器人算法设计

    映射,路径规划,路径跟踪,状态估计

    • 机器人建模与仿真

    运动模型和运动模型,凉亭联合仿真

    • 坐标变换和轨迹

    四元数,旋转矩阵,变换,轨迹生成

    • 代码生成

    生成C / C ++代码和MEX函数以加速算法

    • 机器人系统工具箱支持的硬件

    支持第三方硬件


    6.ROS工具箱

    设计,模拟和部署基于ROS的应用程序
    ROS工具箱提供了一个接口,将MATLAB®和Simulink®与机器人操作系统(ROS和ROS 2)连接起来,使您能够创建ROS节点网络。 该工具箱包含MATLAB函数和Simulink块,以导入,分析和播放rosbag文件中记录的ROS数据。 您还可以连接到实时ROS网络以访问ROS消息。

    该工具箱可让您通过桌面仿真以及连接到外部机器人仿真器(例如凉亭)来验证ROS节点。 ROS Toolbox支持C ++代码生成(使用Simulink Coder™),使您能够从Simulink模型自动生成ROS节点并部署到仿真或物理硬件。 对Simulink外部模式的支持使您可以在模型在硬件上运行时查看消息并更改参数。


    • 开始使用

    了解ROS工具箱的基础

    • 网络连接与探索

    设置ROS网络并与之交互

    • 发布者和订阅者

    创建,发送和接收消息,主题和网络信息

    • 服务与行动

    发送请求,执行任务并获得有关服务和操作的反馈

    • ROS日志文件和转换

    分析rosbags,转换树和时间序列数据

    • ROS专用消息

    访问来自专用传感器和输入的消息

    • ROS自定义消息支持

    创建ROS自定义消息

    • Simulink中的ROS

    使用Simulink访问ROS网络和消息

    • ROS应用实例

    模拟ROS和Gazebo应用程序,连接到TurtleBot®硬件

    • ROS工具箱支持的硬件

    支持第三方硬件


    7.传感器融合和跟踪工具箱

    设计,模拟和测试多传感器跟踪和定位系统
    传感器融合和跟踪工具箱™包括用于设计,仿真和测试系统的算法和工具,这些系统和工具融合了来自多个传感器的数据,以保持态势感知和定位。参考示例为监视和自主系统(包括机载,空降,地面,舰载和水下系统)的多对象跟踪和传感器融合开发提供了起点。

    您可以融合来自真实世界传感器的数据,包括主动和被动雷达,声纳,激光雷达,EO / IR,IMU和GPS。您还可以从虚拟传感器生成综合数据,以在不同情况下测试算法。该工具箱包括多对象跟踪器和估计过滤器,用于评估结合了网格级别,检测级别以及对象级别或跟踪级别融合的体系结构。它还提供了指标,包括OSPA和GOSPA,用于根据地面真实情况验证性能。

    为了加快仿真速度或快速制作原型,该工具箱支持C代码生成。


    • 开始使用

    了解传感器融合和跟踪工具箱的基础

    • 应用领域

    自主系统跟踪,监视系统跟踪,本地化和硬件连接的示例

    • 方向,位置和坐标系

    四元数,欧拉角,旋转矩阵和转换

    • 轨迹和场景生成

    基于地面真相的航点和速率的轨迹和场景

    • 传感器型号

    IMU,GPS,RADAR,ESM和EO / IR

    • 惯性传感器融合

    IMU和GPS传感器融合确定方向和位置

    • 估算过滤器

    卡尔曼和粒子滤波器,线性化函数和运动模型

    • 多对象追踪器

    多传感器多对象跟踪器,数据关联和跟踪融合

    • 可视化和分析

    多对象剧场剧情,检测和对象跟踪以及跟踪指标


    8.无人机工具箱

    设计,模拟和部署无人机应用
    无人机工具箱提供了用于设计,仿真,测试和部署无人机(UAV)和无人机应用程序的工具和参考应用程序。您可以设计自主飞行算法,无人机任务和飞行控制器。 Flight Log Analyzer应用程序使您可以交互地分析3D飞行路径,遥测信息和来自常见飞行日志格式的传感器读数。

    对于自动飞行算法和飞行控制器的桌面模拟和在环硬件(HIL)测试,您可以生成和模拟无人机场景。您可以在逼真的3D环境或2.5D模拟环境中模拟相机,激光雷达,IMU和GPS传感器输出。

    UAV Toolbox提供了常见UAV使用的参考应用示例,例如使用多旋翼无人机的自主无人机包装交付。该工具箱支持C / C ++代码生成,用于快速原型制作,HIL测试以及独立部署到Pixhawk®Autopilot等硬件。


    • 开始使用

    了解无人机工具箱的基础

    • 飞行日志分析

    导入,分析和绘制遥测日志

    • 场景模拟

    在模拟环境中创作场景,生成传感器数据,测试算法

    • 规划与控制

    制导模型和导航,轨迹和航路点跟踪

    • 数据处理与可视化

    转换坐标系,生成轨迹,可视化点云和变换

    • MAVLink支持

    微型飞机链接通信协议,方言和消息

    • UAV工具箱支持的硬件

    支持第三方硬件


    十四、实时仿真和测试

    1.Simulink Desktop实时

    在计算机上实时运行Simulink模型
    Simulink®Desktop Real-Time™提供了一个实时内核,用于在Windows®或Mac笔记本电脑或台式机上执行Simulink模型。 它包括连接到一系列I / O设备的库块。 您可以创建和调整实时系统,以使用计算机进行快速原型制作或硬件在环仿真。

    Simulink Desktop Real-Time通过Simulink支持高达1 kHz采样率的实时性能,而通过Simulink Coder™支持高达20 kHz的实时性能。


    • 开始使用

    了解Simulink Desktop Real-Time的基础知识

    • 实时仿真的模型准备

    预定义和自定义I / O驱动程序块,代码生成参数,实时内核

    • 实时仿真

    实时目标; 正常,加速器和外部模式; 采样率; 实时范围参数

    • 参数调整

    可调块参数,可调全局参数,仪表板块,MATLAB®脚本

    • 信号记录

    数据记录到工作区或文件,外部模式范围触发

    • Simulink Desktop Real-Time中的故障排除

    解决使用Simulink Desktop Real-Time产品时遇到的问题


    2.Simulink实时

    构建,运行和测试实时应用程序
    Simulink®Real-Time™允许您从Simulink模型创建实时应用程序,并在连接到物理系统的Speedgoat目标计算机硬件上运行它们。 它专为实时仿真和测试任务而设计,包括快速控制原型(RCP),DSP和视觉系统原型以及硬件在环(HIL)仿真。

    借助Simulink Real-Time,您可以使用Speedgoat I / O驱动程序块扩展Simulink模型,并自动构建实时应用程序。 测试可以自动化或在配备了实时内核,多核CPU,I / O和协议接口以及FPGA的Speedgoat目标计算机上交互运行。

    Simulink Real-Time和Speedgoat目标计算机硬件旨在共同工作,以创建用于台式机,实验室和现场环境的实时系统。 该软件和硬件解决方案支持最新版本的MATLAB®和Simulink。


    • 开始使用

    了解Simulink Real-Time的基础知识

    • Speedgoat目标计算机和I / O硬件

    选择Speedgoat目标计算机和I / O硬件

    • 系统配置

    开发和目标计算机配置,目标计算机启动方法,置信度测试

    • 实时执行的模型准备

    驱动程序和通信协议块,用于创建自定义块的技术

    • 实时应用程序创建和执行

    实时应用程序的构建和运行,可从开发和目标计算机进行控制

    • 控制与仪表

    使用Simulink Real-Time和MATLAB语言进行交互式信号和参数检测,信号跟踪和记录以及参数调整

    • 独立运行

    打包为独立可执行文件或与MATLAB一起部署的实时应用程序和App Designer应用程序

    • 性能优化

    通过使用执行事件探查器和并发执行来优化执行

    • Simulink Real-Time中的故障排除

    解决使用Simulink Real-Time产品时遇到的问题

     


    十五、代码生成

    1.深度学习HDL工具箱

    在FPGA和SoC上原型化并部署深度学习网络
    深度学习HDL Toolbox™提供了在FPGA和SoC上原型化和实现深度学习网络的功能和工具。 它提供了预构建的比特流,可在受支持的Xilinx®和Intel®FPGA和SoC器件上运行各种深度学习网络。 通过分析和评估工具,您可以通过探索设计,性能和资源利用率之间的折衷来定制深度学习网络。

    深度学习HDL工具箱使您能够自定义深度学习网络的硬件实现,并生成可移植的,可综合的Verilog®和VHDL®代码,以部署在任何FPGA上(使用HDL Coder™和Simulink®)。


    • 开始使用

    了解深度学习HDL工具箱的基础

    • FPGA上的深度学习原型网络

    估算串联网络的性能。 使用MATLAB®从目标设备分析和检索推理结果

    • 深度学习处理器定制和IP生成

    配置,构建和生成自定义比特流和处理器IP内核,估算和基准化自定义深度学习处理器性能

    • DL处理器IP内核的系统集成

    手动将生成的深度学习(DL)处理器IP内核集成到系统设计中

    • 深度学习INT8量化

    校准,验证和部署量化的预训练系列深度学习网络

    • 深度学习HDL工具箱支持的硬件

    支持第三方硬件,例如Intel和Xilinx FPGA板


    2.Embedded Coder

    生成针对嵌入式系统优化的 C 和 C++ 代码
    Embedded Coder® 为大规模生产中使用的嵌入式处理器生成可读、紧凑且快速的 C 和 C++ 代码。它对 MATLAB® Coder™ 和 Simulink® Coder 进行了高级优化,以精确控制生成的函数、文件和数据。这些优化可以提高代码效率,简化与现有代码、数据类型和标定参数的集成。您可以结合使用第三方开发工具编译可执行文件,以在您的嵌入式系统或快速原型构建板上实现即交即用式部署。

    Embedded Coder 对 AUTOSAR、MISRA C® 和 ASAP2 软件标准提供内置支持。它还提供可追溯性报告和代码文档,以及支持 DO178、IEC 61508 和 ISO 26262 软件开发的自动化软件验证。Embedded Coder 代码是可移植的,并且可以在任何处理器上编译和执行。此外,它还为特定硬件提供具有高级优化和设备驱动程序的支持包。


    • Embedded Coder 快速入门

    Embedded Coder 基础知识学习

    • 从 Simulink 模型中生成代码

    从 Simulink 模型中为嵌入式系统生成 C/C++ 代码

    • 从 MATLAB 代码中生成代码

    从 MATLAB 代码中为嵌入式系统生成 C/C++ 代码

    • Embedded Coder 支持的硬件

    对第三方硬件的支持


    3.滤波器设计HDL编码器

    生成定点滤波器的HDL代码
    滤波器设计HDL Coder™生成可合成的便携式VHDL®和Verilog®代码,以在FPGA或ASIC上实现用MATLAB®设计的定点滤波器。 它会自动创建VHDL和Verilog测试平台,以模拟,测试和验证生成的代码。


    • 开始使用

    了解滤波器设计HDL编码器的基础知识

    • 代码生成基础

    HDL代码生成启动,语言选择,HDL代码生成脚本

    • 筛选器配置选项

    单速率,多速率,级联,其他高级数字滤波器

    • 优化

    资源使用率,时钟速度,芯片面积,延迟

    • 客制化

    文件名和位置,标识符和注释,端口和重置,HDL语言构造

    • 验证

    HDL测试平台生成,以及与第三方EDA工具的协同仿真

    • 综合和工作流程自动化

    编译,仿真和综合脚本生成


    4.Fixed-Point Designer

    定点和浮点算法的建模和优化
    Fixed-Point Designer™ 提供用于在嵌入式硬件上优化和实现定点和浮点算法的数据类型和工具。其中包括定点和浮点数据类型以及特定于目标的数值设置。使用 Fixed-Point Designer,您可以执行定点位真的目标感知仿真。然后,在硬件上实现设计之前,您可以测试和调试量化效应,如溢出和精度丢失。

    Fixed-Point Designer 提供 App 和工具,用于分析双精度算法并将它们转换为精度降低的浮点或定点。优化工具使您能够选择满足数值精度要求和目标硬件约束的数据类型。为了高效实现,您可以用硬件最优模式(如压缩查找表)来代替计算成本高昂的设计构造。

    C 和 HDL 生产代码可以直接从您的定点和浮点优化模型中生成


    • Fixed-Point Designer 快速入门

    Fixed-Point Designer 基础知识学习

    • 定点和浮点基础知识

    了解定点和浮点概念

    • MATLAB 代码的定点设计

    使用 MATLAB® 设计和仿真定点系统

    • Simulink 模型的定点设计

    使用 Simulink® 设计和仿真定点系统

    • MATLAB 代码的单精度设计

    将双精度 MATLAB 代码转换为单精度 MATLAB 代码

    • Simulink 的单精度设计

    将 Simulink 中的双精度系统转换为单精度


    5.GPU编码器

    为NVIDIA GPU生成CUDA代码
    GPU Coder™从MATLAB®代码和Simulink®模型生成优化的CUDA®代码。生成的代码包括CUDA内核,用于深度学习,嵌入式视觉和信号处理算法的可并行化部分。为了获得高性能,生成的代码将调用优化的NVIDIA®CUDA库,包括TensorRT,cuDNN,cuFFT,cuSolver和cuBLAS。该代码可以作为源代码,静态库或动态库集成到您的项目中,并且可以针对嵌入在NVIDIA Jetson,NVIDIA DRIVE和其他平台上的台式机,服务器和GPU进行编译。您可以在MATLAB中使用生成的CUDA来加速深度学习网络和算法的其他计算密集型部分。 GPU Coder可让您将手写CUDA代码合并到算法和生成的代码中。

    与EmbeddedCoder®一起使用时,GPU Coder可让您通过软件在环(SIL)和处理器在环(PIL)测试来验证所生成代码的数字行为。


    • 开始使用

    了解GPU Coder的基础知识

    • GPU的MATLAB算法设计

    用于代码生成的MATLAB语言语法和函数

    • 内核创建

    创建CUDA GPU内核的算法结构和模式

    • 性能

    解决代码生成问题,缩短代码执行时间并减少生成代码的内存使用量

    • 使用GPU Coder进行深度学习

    生成用于深度学习神经网络的CUDA代码

    • 部署方式

    将生成的代码部署到NVIDIATegra®硬件目标

    • GPU Coder支持的硬件

    支持第三方硬件,例如NVIDIA Drive和Jetson平台


    6.HDL编码器

    生成用于FPGA和ASIC设计的VHDL和Verilog代码
    HDL Coder™通过MATLAB®函数,Simulink®模型和Stateflow®图表生成可移植的,可合成的VHDL®和Verilog®代码。 生成的HDL代码可用于FPGA编程或ASIC原型设计。

    HDL Coder提供了一个工作流程顾问,可自动执行Xilinx®,Microsemi®和Intel®FPGA的编程。 您可以控制HDL体系结构和实施,突出显示关键路径并生成硬件资源利用率估算值。 HDL Coder可在您的Simulink模型与生成的Verilog和VHDL代码之间提供可追溯性,从而能够对遵循DO-254和其他标准的高完整性应用程序进行代码验证。

    可通过IEC认证套件(针对ISO 26262和IEC 61508)获得对行业标准的支持。


    • 开始使用

    了解HDL Coder的基础知识

    • 从MATLAB生成HDL代码

    从MATLAB算法生成HDL代码

    • 从Simulink生成HDL代码

    从Simulink模型生成HDL代码

    • 软硬件协同设计

    在目标硬件平台上部署分区的硬件和软件

    • HDL编码器支持的硬件

    支持第三方硬件,例如Intel,Microsemi和Xilinx FPGA板

    • 工具资格认证

    通过Simulink Check获得DO和IEC认证


    7.HDL验证器

    使用HDL仿真器和FPGA板测试和验证Verilog和VHDL
    HDL Verifier™使您可以测试和验证用于FPGA,ASIC和SoC的Verilog®和VHDL®设计。 您可以将HDL模拟器与协同仿真对照在MATLAB®或Simulink®中运行的测试平台来验证RTL。 这些相同的测试平台可与FPGA和SoC开发板一起使用,以验证硬件中的HDL实现。

    HDL Verifier提供了用于在Xilinx®和Intel®板上调试和测试FPGA实施的工具。 您可以使用MATLAB来写入和读取内存映射的寄存器,以在硬件上测试设计。 您可以将探针插入设计并设置触发条件,以将内部信号上传到MATLAB中以进行可视化和分析。

    HDL Verifier生成用于RTL测试台的验证模型,包括通用验证方法(UVM)测试台。 这些模型在支持SystemVerilog直接编程接口(DPI)的模拟器中本地运行。


    • 开始使用

    了解HDL Verifier的基础知识

    • 协同仿真验证

    HDL仿真器与MATLAB和Simulink之间的协同仿真

    • 使用FPGA硬件进行验证

    将FPGA板与MATLAB和Simulink连接以进行硬件设计的验证和调试

    • 使用UVM和SystemVerilog组件进行验证

    生成UVM或SystemVerilog DPI组件

    • 将验证与HDL代码生成集成

    生成测试平台以验证使用HDL Coder™生成的HDL代码

    • 交易级模型生成

    生成SystemC TLM虚拟原型

    • HDL验证器支持的硬件

    支持第三方硬件,例如Xilinx,Intel和Microsemi®FPGA板


    8.MATLAB Coder

    从 MATLAB 代码生成 C 和 C++ 代码
    MATLAB® Coder™ 可从 MATLAB 代码生成适用于各种硬件平台(从桌面计算机系统到嵌入式硬件)的 C 和 C++ 代码。它支持大多数 MATLAB 语言和广泛的工具箱。您可以将生成的代码作为源代码、静态库或动态库集成到您的工程中。生成的代码是可读且可移植的。您可以将它与现有 C 和 C++ 代码及库的关键部分结合使用。您还可以将生成的代码打包为 MEX 函数以在 MATLAB 中使用。

    与 Embedded Coder® 结合使用时,MATLAB Coder 可提供代码自定义、特定于目标的优化、代码可追溯性以及软件在环 (SIL) 和处理器在环 (PIL) 验证。

    要将 MATLAB 程序部署为独立应用程序,请使用 MATLAB Compiler™。要生成与其他编程语言集成的软件组件,请使用 MATLAB Compiler SDK™。


    • MATLABCoder 快速入门

    MATLAB Coder 基础知识学习

    • 用于代码生成的 MATLAB 编程

    用于代码生成的 MATLAB 语言语法和函数;数据定义

    • 代码生成

    C/C++ 和 MEX 代码生成、修复错误、行为验证

    • 部署

    使用并运行生成的 C/C++ 代码

    • 性能

    缩短代码生成时间,提高执行速度,减少所生成代码的内存使用量

    • MATLAB 算法加速

    使用生成的 MEX 函数加速代码执行

    • 数值转换

    定点转换、单精度转换(需要 Fixed-Point Designer™)

    • 使用 MATLAB Coder 进行深度学习

    生成用于深度学习神经网络的 C++ 代码(需要 Deep Learning Toolbox™)

    • MATLAB Coder 支持的硬件

    对第三方硬件的支持


    9.视觉HDL工具箱

    设计用于FPGA和ASIC的图像处理,视频和计算机视觉系统
    Vision HDL Toolbox™提供了用于在FPGA和ASIC上设计和实现视觉系统的像素流算法。 它提供了一个支持各种接口类型,帧大小和帧速率的设计框架。 工具箱中的图像处理,视频和计算机视觉算法使用适合HDL实现的体系结构。

    该工具箱算法旨在在VHDL®和Verilog®(带有HDL Coder™)中生成可读的,可合成的代码。 生成的HDL代码经过FPGA验证,适用于高达8k分辨率的帧大小和高帧率(HFR)视频。

    工具箱功能可作为MATLAB®函数,System对象和Simulink®块使用。


    • 开始使用

    了解Vision HDL Toolbox的基础

    • 视频格式和界面

    在基于帧的视频流和像素流之间转换

    • HDL优化的算法设计

    选择块或系统对象以进行流视频处理

    • HDL代码生成和部署

    使用HDL Coder生成HDL代码,使用HDL Verifier™进行验证,使用硬件支持包进行原型设计


    十六、验证、确认和测试

    1.HDL验证器

    使用HDL仿真器和FPGA板测试和验证Verilog和VHDL
    HDL Verifier™使您可以测试和验证用于FPGA,ASIC和SoC的Verilog®和VHDL®设计。 您可以将HDL模拟器与协同仿真对照在MATLAB®或Simulink®中运行的测试平台来验证RTL。 这些相同的测试平台可与FPGA和SoC开发板一起使用,以验证硬件中的HDL实现。

    HDL Verifier提供了用于在Xilinx®和Intel®板上调试和测试FPGA实施的工具。 您可以使用MATLAB来写入和读取内存映射的寄存器,以在硬件上测试设计。 您可以将探针插入设计并设置触发条件,以将内部信号上传到MATLAB中以进行可视化和分析。

    HDL Verifier生成用于RTL测试台的验证模型,包括通用验证方法(UVM)测试台。 这些模型在支持SystemVerilog直接编程接口(DPI)的模拟器中本地运行。


    • 开始使用

    了解HDL Verifier的基础知识

    • 协同仿真验证

    HDL仿真器与MATLAB和Simulink之间的协同仿真

    • 使用FPGA硬件进行验证

    将FPGA板与MATLAB和Simulink连接以进行硬件设计的验证和调试

    • 使用UVM和SystemVerilog组件进行验证

    生成UVM或SystemVerilog DPI组件

    • 将验证与HDL代码生成集成

    生成测试平台以验证使用HDL Coder™生成的HDL代码

    • 交易级模型生成

    生成SystemC TLM虚拟原型

    • HDL验证器支持的硬件

    支持第三方硬件,例如Xilinx,Intel和Microsemi®FPGA板


    2.多边形错误查找器

    通过静态分析识别软件错误
    Polyspace®Bug Finder™可以识别C和C ++嵌入式软件中的运行时错误,并发问题,安全漏洞和其他缺陷。通过使用静态分析(包括语义分析),Polyspace Bug Finder可以分析软件控制,数据流和过程间行为。通过在发现缺陷后立即突出显示它们,可以让您在开发过程的早期对错误进行分类和修复。

    Polyspace Bug Finder会检查是否符合编码规则标准,例如MISRAC®,MISRA C ++,JSF ++,CERT®C,CERT C ++和自定义命名约定。它生成的报告包括发现的错误,违反代码规则的行为以及包括循环复杂性在内的代码质量指标。 Polyspace Bug Finder可以与Eclipse™IDE一起使用,以分析桌面上的代码。

    对于自动生成的代码,可以将Polyspace结果追溯到Simulink®模型和dSPACE®TargetLink®块。


    • 开始使用

    了解Polyspace Bug Finder的基础知识

    • 配置和运行分析

    检查代码是否存在Polyspace用户界面,命令行或其他开发环境中的缺陷

    • 查看分析结果

    修复或证明缺陷,组织结果,结果参考

    • 工具资格认证

    通过Polyspace Bug Finder的DO和IEC认证

    • Polyspace Bug Finder中的故障排除

    解决Polyspace Bug Finder中的意外问题


    3.Polyspace Bug Finder访问

    查看代码分析结果并监视软件质量指标
    Polyspace®Bug Finder™Access™提供Web浏览器界面,用于Polyspace静态代码分析结果和质量指标。 它包括一个用于存储分析结果的中央存储库,可进行基于团队的协作。 Polyspace Bug Finder Server™的结果可以发布到Polyspace Bug Finder Access,以进行分类和解决。 借助Polyspace Bug Finder Access,您可以在缺陷跟踪系统(例如Jira)中创建和分配故障单。

    Polyspace Bug Finder访问仪表板显示可用于监视软件质量,项目状态,缺陷数量和代码度量(例如代码行,圈复杂度和递归)的信息。 仪表板可帮助您以图形方式跟踪对编码规则标准(例如MISRA C:2012和AUTOSAR C ++ 14)以及安全标准(例如CERT-C和ISO / IEC TS 17961)的遵守情况。


    • 开始使用

    了解Polyspace Bug Finder访问的基础

    • 在Polyspace Bug Finder访问中查看结果

    在网络浏览器上查看Polyspace Bug Finder的结果,添加评论和创建故障单,上传和打开结果,生成报告

    • 安装和管理Polyspace访问

    安装软件,管理许可证,配置服务


    4.Polyspace Bug Finder服务器

    通过在服务器计算机上运行的静态分析来识别软件缺陷
    Polyspace®Bug Finder™Server™是一种静态分析引擎,可识别C和C ++中常见的错误类别,包括运行时错误,并发问题和其他编码缺陷。 Polyspace Bug Finder服务器还检查源代码是否遵守编码规则(MISRA C,MISRA C ++,JSF ++),安全规则(CWE,CERT-C,CERT-C ++,ISO / IEC 17961)和自定义规则。

    使用Polyspace Bug Finder服务器,您可以在项目,文件和功能级别上监视代码度量,包括圈复杂度,堆栈使用率和HIS度量。 您可以配置服务器以与各种编译器,目标处理器和RTOS环境一起使用,并使用诸如Jenkins之类的工具通过连续集成系统自动执行。 代码分析结果可以发布到Polyspace Bug Finder Access™进行分类和解决。


    • 开始使用

    了解Polyspace Bug Finder服务器的基础

    • 在服务器上配置和运行分析

    在命令行或在持续集成平台(如Jenkins)中设置Bug Finder的自动运行

    • 工具资格认证

    使Polyspace Bug Finder服务器获得DO和IEC认证

    • Polyspace Bug Finder服务器中的故障排除

    解决在运行Polyspace Bug Finder服务器时出现的意外问题


    5.多边形验证码

    证明软件中没有运行时错误
    Polyspace®Code Prover™是一种可靠的静态分析工具,可证明C和C ++源代码中没有溢出,被零除,越界数组访问以及其他运行时错误。它不需要程序执行,代码检测或测试用例即可产生结果。 Polyspace Code Prover使用基于形式化方法的语义分析和抽象解释来验证软件的过程,控制和数据流行为。您可以使用它来验证手写代码,生成的代码或两者的组合。每个代码语句均以颜色进行编码,以指示其是否存在运行时错误,是否已失败,无法访问或未经验证。

    Polyspace Code Prover显示变量和函数返回值的范围信息,并可以证明哪些变量超出了指定范围限制。代码验证结果可用于跟踪质量指标并检查是否符合软件质量目标。 Polyspace Code Prover可以与Eclipse™IDE一起使用,以在您的桌面上验证代码。


    • 开始使用

    了解Polyspace Code Prover的基础知识

    • 配置和运行分析

    在Polyspace用户界面,命令行或其他开发环境中检查代码是否存在运行时错误

    • 查看分析结果

    调查和修复分析结果中的运行时错误,组织结果,结果参考

    • 工具资格认证

    通过DO和IEC认证的Polyspace代码验证者资格

    • Polyspace Code Prover中的故障排除

    解决Polyspace Code Prover中的意外问题


    6.Polyspace代码验证访问

    查看代码验证结果并监视软件质量指标
    Polyspace®Code Prover™Access™为Polyspace代码验证结果提供了一个Web浏览器界面,可证明源代码中没有严重的运行时错误。 它包括一个用于存储分析结果的中央存储库,可进行基于团队的协作。 Polyspace Code Prover Server™的结果可以发布到Polyspace Code Prover Access中进行分类和解析。 使用Polyspace Code Prover Access,您可以在缺陷跟踪系统(例如Jira)中创建和分配故障单。

    Polyspace Code Prover Access仪表板显示可用于监视软件质量的信息。 仪表板可帮助您根据运行时错误以图形方式跟踪总体项目状态,并根据软件质量目标(SQO)阈值衡量进度。


    • 开始使用

    了解Polyspace代码验证访问的基础

    • 在Polyspace Code Prover Access中查看结果

    在网络浏览器上查看Polyspace Code Prover结果,添加评论和创建故障单,下载和上传结果,生成报告

    • 管理Polyspace代码验证访问软件

    软件安装,许可证管理,服务配置


    7.Polyspace代码验证服务器

    证明软件中没有运行时错误
    Polyspace®Code Prover™Server™是一种可靠的静态分析引擎,可证明C和C ++代码中不存在溢出,被零除,越界,数组访问以及某些其他运行时错误。 它对所有可能的控制和数据流(包括多线程代码)执行过程间分析,以将每个操作标识为始终安全,始终有故障,无法访问或易受攻击。 Polyspace Code Prover Server标识没有运行时错误,被证明为失败,无法访问或未经证明的代码段。

    Polyspace Code Prover Server可以在服务器级计算机上运行,并且可以使用Jenkins等工具集成到构建和连续集成系统中,以进行自动验证。 分析结果可以发布到Polyspace Code Prover Access™进行分类和解决。


    • 开始使用

    了解Polyspace Code Prover Server的基础知识

    • 在服务器上配置和运行分析

    在命令行或在持续集成平台(如Jenkins)中设置自动运行Code Prover

    • 工具资格认证

    通过Polyspace Code Prover Server的DO和IEC认证

    • Polyspace Code Prover服务器中的故障排除

    解决在运行Polyspace Code Prover Server时出现的意外问题


    8.Ada的Polyspace产品

    证明源代码中没有运行时错误
    Polyspace®Client™for Ada使用不需要程序执行的静态代码分析来提供代码验证,以证明源代码中不存在溢出,零除,越界数组访问以及某些其他运行时错误。 ,代码检测或测试用例。 Polyspace Client for Ada使用基于形式方法的抽象解释技术来验证代码。在编译和测试之前,可以将其用于手写代码,生成的代码或两者的组合。

    适用于Ada的Polyspace Server™提供了代码验证,可证明源代码中不存在溢出,零除,越界数组访问以及某些其他运行时错误。为了获得更快的性能,Polyspace Server for Ada允许您安排验证任务在计算机群集上运行。使用Ada的Polyspace客户端将作业提交到服务器。您可以将作业集成到自动生成过程中,并设置电子邮件通知。您可以通过Web浏览器查看缺陷和回归。然后,您可以使用客户端下载并可视化验证结果。


    • 开始使用

    了解Ada的Polyspace产品的基础知识

    • 运行验证

    从Polyspace用户界面,命令行或其他开发环境中检测运行时错误

    • 审查结果

    调查和修复验证结果中的运行时错误,组织结果,结果参考

    • 报告和指标

    通过软件开发生命周期监控代码质量

    • Polyspace软件管理

    软件安装,激活,许可证配置,客户端/服务器和Web界面配置

    • 适用于Ada的Polyspace产品中的故障排除

    解决Ada的Polyspace产品中的意外问题


    9.Simulink Check

    确认符合行业指导规范和建模标准
    Simulink® Check™ 提供行业认可的检查和指标,用于标识开发过程中违反标准和规范的情况。支持的高完整性软件开发标准包括 DO-178、ISO 26262、IEC 61508、IEC 62304 和 MathWorks 咨询委员会 (MAB) 建模规范。编辑时检查可在您编辑时识别合规性问题。您可以创建自定义检查,以确保符合您自己的标准或规范。

    Simulink Check 提供大小和复杂度等指标,您可以使用这些指标来评估模型的架构和标准合规性。合并的 Metrics Dashboard 可用于评估设计状态和质量。自动模型重构可用于更换重复的设计元素,降低设计复杂度,并识别可重用的内容。Model Slicer 工具可隔离模型中有问题的行为,并生成简化模型以用于调试。


    • SimulinkCheck 快速入门

    Simulink Check 基础知识学习

    • 检查模型合规性

    验证模型是否符合安全标准和规范

    • 自定义模型检查

    创建 Model Advisor 检查和配置、使之自动执行并部署给用户测量模型或代码覆

    • 收集模型指标

    收集模型指标数据并创建自定义模型指标

    • 重构模型

    识别建模克隆件和模式以变换模型

    • 用依存关系分析简化模型

    跟踪端口、信号和模块的依存关系,将较大的模型分割成简化的独立模型

    • 验证和确认

    使用 Simulink 产品测试模型和代码,检查设计错误,检查是否符合标准,测量覆盖率,并验证系统

    • 工具鉴定与认证

    针对 DO 和 IEC 认证鉴定 Simulink 检查


    10.Simulink覆盖范围

    测量模型和生成代码中的测试覆盖率
    Simulink®Coverage™执行模型和代码覆盖率分析,以测量模型和生成的代码中的测试完整性。它应用行业标准度量标准,例如决策,条件,修改的条件/决策覆盖率(MCDC)和关系边界覆盖率,以评估模型,软件在环(SIL)和处理器内置模型中模拟测试的有效性-环路(PIL)。您可以使用缺少的覆盖率数据来查找测试中的差距,缺少要求或意外的功能。

    Simulink Coverage会生成交互式报告,以显示您的模型,C / C ++ S函数,MATLAB®函数以及由EmbeddedCoder®生成的代码已执行了多少。您可以突出显示块和子系统中的覆盖率结果以可视化测试中的差距。要评估测试的完整性,您可以累积来自多个测试运行的覆盖率数据,以及查看通过单元和系统测试实现的覆盖率。覆盖范围的结果可以追溯到需求和测试。您可以应用过滤器以从覆盖范围中排除阻止并证明报告中缺少的覆盖范围。


    • 开始使用

    了解Simulink Coverage的基础知识

    • 收集覆盖率数据

    测量模型和代码覆盖率以指示设计中未经测试的元素

    • 评估覆盖率结果

    生成覆盖率报告,查看模型中的覆盖率突出显示,过滤覆盖率收集结果

    • 自动化覆盖工作流程

    使用脚本或函数自动执行coverage收集

    • 验证与确认

    使用Simulink产品测试模型和代码,检查设计错误,对照标准进行检查,衡量覆盖范围并验证系统

    • 工具资格认证

    使Simulink Coverage获得DO和IEC认证


    11.Simulink设计验证器

    识别设计错误,证明需求合规并生成测试
    Simulink®Design Verifier™使用形式化方法来识别模型中隐藏的设计错误。 它检测模型中导致整数溢出,死逻辑,数组访问冲突和被零除的块。 它可以正式验证设计是否满足功能要求。 对于每个设计错误或违反要求的情况,它都会生成一个仿真测试用例以进行调试。

    Simulink Design Verifier生成用于模型覆盖率和自定义目标的测试用例,以扩展现有的基于需求的测试用例。 这些测试用例驱动您的模型满足条件,决策,修改后的条件/决策(MCDC)和自定义覆盖率目标。 除了覆盖目标之外,您还可以指定自定义测试目标以自动生成基于需求的测试用例。


    • 开始使用

    了解Simulink Design Verifier的基础知识

    • 系统模型验证

    识别和配置模型组件以进行分析

    • 设计错误检测

    静态检测运行时错误和无效逻辑,得出设计范围

    • 测试案例生成

    从模型生成系统的测试用例,扩展和组合测试用例以形成完整的测试套件

    • 基于需求的验证

    根据需求验证设计,指定分析输入约束

    • 复杂度管理

    处理不兼容问题,优化大型和复杂模型的分析

    • 结果解释和使用

    记录并查看分析结果,生成报告,创建测试工具模型

    • 验证与确认

    使用Simulink产品测试模型和代码,检查设计错误,对照标准进行检查,衡量覆盖范围并验证系统

    • 工具资格认证

    使Simulink设计验证器通过IEC认证


    12.Simulink测试

    开发,管理和执行基于仿真的测试
    Simulink®Test™提供了用于创作,管理和执行系统的,基于仿真的模型,生成的代码以及仿真或物理硬件测试的工具。它包括仿真,基准测试和等效测试模板,可让您使用软件在环(SIL),处理器在环(PIL)进行功能,单元,回归和背对背测试,以及实时硬件在环(HIL)模式。

    使用Simulink Test,您可以创建非侵入式测试工具以隔离被测组件。您可以使用基于文本的语言来定义基于需求的评估,并以多种格式(包括Microsoft®Excel®)指定测试输入,预期输出和容差。 Simulink Test包括一个Test Sequence模块,可让您构建复杂的测试序列和评估,以及一个用于管理和执行测试的测试管理器。观察器块使您可以访问设计中的任何信号,而无需更改模型或模型接口。可以并行或在连续集成系统上组织和执行大量测试。


    • 开始使用

    了解Simulink测试的基础

    • 测试创作

    创建和导入数据,开发测试序列,记录信号,评估仿真和输出

    • 测试执行

    多版本测试,并行和分布式执行,覆盖率,实时测试

    • 结果,报告和测试管理

    报告和存档测试规范和测试结果,打包测试文件,与变更管理系统一起使用

    • 测试脚本

    自定义测试环境,自动化测试

    • 持续集成

    与CI兼容的测试,自动化,使用MATLAB®Unit Test Framework运行Simulink测试

    • 工具资格认证

    通过Simulink Test获得DO和IEC认证


    十七、数据库访问和报告

    1.数据库工具箱

    与关系数据库和非关系数据库交换数据
    Database Toolbox™提供了用于与关系数据库和非关系数据库交换数据的功能和一个应用程序。 它通过自动在数据库和MATLAB®数据类型之间转换来实现这种交换。

    数据库工具箱支持任何符合ODBC或JDBC的关系数据库。 它还为Apache™Cassandra®,MongoDB®和Neo4j®提供NoSQL支持。 提供了MySQL®和PostgreSQL的本机接口。

    使用Database Explorer应用程序,您无需编写代码就可以浏览关系数据,然后生成MATLAB代码以自动化或操作数据库工作流程。 对于大型数据工作流,您可以拆分SQL查询并并行访问数据(使用Parallel Computing Toolbox™和MATLAB Parallel Server™)。


    • 开始使用

    了解数据库工具箱的基础

    • 关系数据库

    通过配置驱动程序并使用SQL,探索Microsoft®Access™,Microsoft SQLServer®和Oracle®等数据库中的数据

    • 柱状数据库

    使用适用于ApacheCassandra®数据库的数据库工具箱界面浏览宽列数据库中的数据

    • 文件资料库

    使用MongoDB的数据库工具箱界面浏览和管理MongoDB中的文档集合

    • 图数据库

    使用与Neo4j的MATLAB接口或针对Neo4j Bolt协议的数据库工具箱接口,在Neo4j数据库中浏览,管理,存储和分析图形数据

    • 数据库应用程序部署

    创建和部署独立的数据库应用程序以与他人共享MATLAB代码

    • 数据库工具箱中的故障排除

    解决数据库工具箱中的意外问题


    2.MATLAB报告生成器

    从MATLAB应用程序设计并自动生成报告
    MATLAB®Report Generator™提供了将报告功能集成到MATLAB应用程序中的功能和API。 您可以开发以PDF,Microsoft®Word,MicrosoftPowerPoint®和HTML生成报告的程序。 MATLAB Report Generator使您能够从MATLAB代码中动态捕获结果和图形,并将这些结果记录在一个报告中,该报告可以与组织中的其他人共享。 您可以使用预构建的,可自定义的Word和HTML模板,也可以根据组织的模板和标准来设计报告。


    • 开始使用

    了解MATLAB Report Generator的基础

    • 报表生成器开发

    创建生成报告的MATLAB程序

    • 演示生成器开发

    创建和更新Microsoft PowerPoint演示文稿

    • MATLAB报告生成器任务示例

    报告生成器样本任务和相关代码

    • 交互式报表程序生成器

    使用报表浏览器交互式程序生成器创建报表生成器


    十八、仿真图形和报告

    1.Simulink 3D动画

    可视化虚拟现实环境中的动态系统行为

    Simulink®3D Animation™将Simulink模型和MATLAB®算法链接到虚拟现实场景中的3D图形对象。您可以通过在桌面或实时仿真过程中更改位置,旋转,比例和其他对象属性来为虚拟世界设置动画。您还可以感知虚拟世界中的碰撞和其他事件,并将其反馈到MATLAB和Simulink算法中。来自虚拟摄像机的视频可以流式传输到Simulink进行处理。

    Simulink 3D Animation包括用于渲染和与虚拟场景交互的编辑器和查看器。使用3D世界编辑器,您可以导入CAD和URDF文件格式,以及创作从3D对象组装而成的详细场景。可以使用立体视觉沉浸式观看3D世界。您可以在MATLAB图形中合并多个3D场景视图,并使用强制反馈操纵杆,太空鼠标或其他硬件设备与虚拟世界进行交互。 Simulink 3D Animation支持X3D,这是一种ISO标准文件格式和运行时体系结构,用于表示3D场景和对象并与之通信。


    • 开始使用

    了解Simulink 3D动画的基础知识

    • 建立虚拟现实世界

    为Simulink,Simscape™Multibody™和MATLAB编写虚拟现实世界; 导入CAD模型

    • 导入CAD和机器人模型

    从CAD(计算机辅助设计)工具(包括CATIA)和机器人视觉表示(URDF文件)导出非VRML模型,以与Simulink 3D Animation一起使用

    • 链接到模型

    将虚拟现实世界连接到Simulink和Simscape多体动态系统模型

    • 与虚拟现实世界互动

    创建MATLAB虚拟世界对象并与之交互,将虚拟世界数据输入Simulink模型

    • 查看动态系统仿真

    查看和浏览代表动态系统仿真的虚拟现实世界

    • 共享可视化

    保存和共享动画; 重新分发独立应用程序


    2.Simulink报告生成器

    根据Simulink模型和Stateflow图表设计并自动生成报告
    Simulink®Report Generator™提供了功能和API,使您能够在报告中包括框图,Stateflow®图表,MATLAB®功能块,真值表,数据字典和其他模型元素。您可以使用PDF,Microsoft®Word,MicrosoftPowerPoint®和HTML设计和生成报告。您可以生成标准报告(例如系统设计说明),以及包含设计工件(例如生成的代码,需求可追溯性,文档和测试结果)的自定义报告。还可以包括DO-178,ISO 26262,IEC 61508和相关行业标准的工件。

    Simulink报告生成器使您可以创建Web视图,使您可以在没有Simulink许可证的情况下从Web浏览器查看,导航和共享Simulink模型。您可以将模型Web视图嵌入HTML代码生成,需求,覆盖率和其他类型的报告中。


    • 开始使用

    了解Simulink Report Generator的基础

    • 创建模型Web视图

    创建和导航模型的交互式Web视图,并创建嵌入式Web视图报告

    • 生成标准报告

    使用预定义的报告程序生成记录模型的报告

    • 创建报告程序

    创建程序以生成记录Simulink模型和Stateflow图表的报告

    • Simulink报告生成器任务示例

    报告生成器样本任务和相关代码

    • 工具资格认证

    验证Simulink Report Generator以获得DO认证


    十九、系统工程

    1.Simulink要求

    编写,管理和跟踪对模型,生成的代码和测试用例的需求
    Simulink需求使您可以在Simulink中编写,分析和管理需求。您可以使用自定义属性创建富文本要求,并将它们链接到设计,代码和测试。可以从外部来源导入需求,当需求更改时,您会收到自动通知。您可以一起查看需求和设计,通过拖放建立链接,用需求内容注释图,分析需求可追溯性以及在需求,设计,生成的代码和测试之间导航。

    Simulink需求指示何时对链接的需求,设计或测试进行更改。它计算需求的实施和验证状态,使您能够评估项目的完整性。


    • 开始使用

    了解Simulink要求的基础

    • 需求定义

    作者需求,从外部文档创建需求,定义需求层次

    • 需求可追溯性

    链接需求和模型元素,指定关系,添加标记,检查模型和代码的可追溯性,检查一致性

    • 基于需求的测试

    基于需求的模型验证,解释和报告测试结果

    • 需求比较和变更跟踪

    需求审查和比较,跟踪更改并提供理由,生成报告以供批准和批准

    • 需求管理界面

    旧版RMI界面支持的需求可追溯性

    • 验证与确认

    使用Simulink产品测试模型和代码,检查设计错误,对照标准进行检查,衡量覆盖范围并验证系统

    • 工具资格认证

    验证DO和IEC认证的Simulink要求


    2.状态流

    使用状态机与流程图对决策逻辑进行建模和仿真

    Stateflow® 提供了一种图形语言,包括状态转移图、流程图、状态转移表和真值表。您可以使用 Stateflow 来说明 MATLAB® 算法和 Simulink® 模型如何响应输入信号、事件和基于时间的条件。

    Stateflow 使您能够设计和开发监控、任务调度、故障管理、通信协议、用户界面和混合系统。

    使用 Stateflow,您可以对组合和时序决策逻辑进行建模,使其可作为 Simulink 模型中的模块进行仿真或作为 MATLAB 中的对象执行。图形动画使您能够在执行逻辑时对其进行分析和调试。编辑时和运行时检查可确保在实现前具有设计一致性和完整性。


    • Stateflow 快速入门

    Stateflow 基础知识学习

    • 图编程

    对组合和时序逻辑的状态机进行编程

    • 设计复杂逻辑

    遵循监督逻辑的通用设计模式

    • Simulink 中的仿真

    将 Stateflow 图作为 Simulink 模型中的模块进行仿真

    • 在 MATLAB 中执行

    将独立的 Stateflow 图作为对象在 MATLAB 中执行

    • 验证和代码生成

    测试、调试、记录数据并生成代码


    3.System Composer

    设计和分析系统和软件架构
    System Composer™可为基于模型的系统工程和软件设计定义,分析和规范体系结构和组成。 使用System Composer,您可以在优化架构模型的同时分配需求,然后可以在Simulink®中对其进行设计和仿真。

    使用System Composer,您可以创建或导入可使用组件和接口描述系统的体系结构模型。 您还可以从Simulink设计或C / C ++代码的架构元素填充架构模型。 您可以创建模型的自定义实时视图,以研究特定的设计或分析问题。 使用这些体系结构模型,您可以分析需求,通过定型捕获属性,执行贸易研究以及生成规格和ICD。


    • 开始使用

    了解System Composer的基础

    • 作者架构模型

    使用组件,端口和接口表示系统架构

    • 链接和管理需求

    将体系结构模型元素与功能和非功能需求相关联

    • 扩展建筑元素

    使用构造型将自定义属性添加到建筑元素

    • 创建自定义视图

    使用组件,端口和接口查看体系结构模型的各个部分

    • 分配和分析架构模型

    使用分配建立模型元素之间的关系,验证系统设计要求

    • 作者模型行为

    将架构模型与Simulink模型中指定的功能相关联

    • 导入和导出架构模型

    从第三方工具导入模型并通过System Composer更改将其导出


     

     

     

    展开全文
  • 跳跃扩散模型是一种用来对期权合约进行估价或定价的模型,它混合了两种定价技术:一种是更传统的扩散模型,在这种模型中,因素以平稳和相对一致的方式发挥作用;另一种是跳跃过程模型,在这种模型中,一次性事件会...
  • 贝叶斯推断 贝叶斯推断是结合有关模型或模型参数的...使用 slicesample 函数,您可以通过马尔可夫链蒙特卡罗模拟在 MATLAB 中执行贝叶斯分析。甚至在使用标准随机数生成函数难以抽样的后验分布问题中也可以使用此函数。
  • −EPθ​​[hj​]=n=1∑N​[P(hj​=1∣v(n))−v∑​P(v)P(hi​=1∣v)](12) 配分函数   上式的前一项在全部数据集上平均值即可,后一项等于 ∑v,hvihjPθ(v,h)\sum_{\mathtt{v},\mathtt{h}}v_ih_jP_\theta(\...
  • 例如,马尔可夫链蒙特卡罗的一个非常重要的区域仅适用于R,Matlab和SAS,除非您想依赖网络上随机用户编写的复杂宏。本页末尾的表格非常详细地比较了五个包。 R&MATLAB R和Matlab是迄今为止最丰富的系统。它们...
  • LDA主题模型之随机模拟算法

    千次阅读 2018-03-12 22:23:25
    ​   在计算机技术已经如此强大的今天,生成大量随机数是很容易的事情,这样一来,这种模拟能力就能被用于解决一些数学上难以解决的问题(例如蝙蝠侠图案的面积),这种随机模拟的方法又叫做蒙特卡洛方法。...
  • 转载请注明出处:Bin的专栏,http://blog.csdn.net/xbinworld本文是对参考资料中多...PRML的第11章也是sampling,有时间后面写到PRML的笔记中去:)背景随机模拟也可以叫做蒙特卡罗模拟(Monte Carlo Simulation)。这...
  • 为模拟恶劣的嘈杂环境,在蒙特卡罗模拟的0.1 Mio随机实现中,高斯白噪声的信噪比从15dB变为0dB。 C.结果 在所考虑的蜂窝电话和无人机检测应用中,感兴趣的性能标准是在输入信号的给定电平下的真阳性率(TPR)和相应...
  • 电子通信领域经典书籍推荐

    万次阅读 2011-06-07 10:35:00
    全书共分为10章,主要讲解了盲多用户检测、群-盲多用户检测、空时多用户检测、turbo多用户检测、高斯信道中的鲁棒性多用户检测、窄带干扰抑制、蒙特卡罗-贝叶斯信号处理、衰落信道中的信号处理以及编码OFDM系统中...
  • 在许多情况下,我们没有足够的计算能力评估空间中所有n维像素的后验概率 。在这些情况下,我们倾向于利用称为Markov-Chain Monte Carlo ...此方法使用参数空间中的随机跳跃来(最终)确定后验分布。MCMC的关键如下:
  • 本文总结了常用的数学模型方法和它们的主要用途,主要包括数学和统计上的建模方法,关于在数学...总的来说,常用主成分分析来降维,综合评价的方法有因子分析法、层次分析法、....,用蒙特卡罗方法来随机模拟求解;...
  • 理解硬间隔最大化解的存在唯一性 理解线性支持向量机软间隔最大化的思想、对应的优化问题、对偶问题和相应算法 了解核函数在非线性支持向量机中的应用和对应的算法 了解序列最小最优化算法的基本思想 作业: 【代码...
  • 了解核函数在非线性支持向量机中的应用和对应的算法 了解序列最小最优化算法的基本思想 作业: 【代码复现】 自编程/调用sklearn实现逻辑斯缔回归模型,尝试改变参数,选择不同算法 【代码复现】 手算/自编程/调用...
  • 高斯过程回归 通俗理解核方法 核方法的主要思想 九、SVM支持向量机 范数 SVM一系列 理解SVM的三层境界 支持向量机(SVM)从入门到放弃再到掌握 支持向量机原理篇之手撕线性SVM 支持向量机实战篇之再撕非线性SVM ...
  • 登峰杯数学建模竞赛

    千次阅读 2016-08-18 16:31:01
    :通过使用编制的Matlab建立模型,讨论相应的决策准则。 问题3: 将上述讨论推广到更一般的问题决策。 问题4: 形成结论,给面临问题1和2的人作为决策参考。   1.2 前言 当人们在决策判断时,总是...
  • 图像处理的一些方法

    2015-12-07 15:07:00
    Atam教授:核希尔伯特空间( 再生Hilbert空间),蒙塔卡罗方法,KNN,多维线性回归,PSF方法回归,特征之间的非线性关系,deep learning,香农信息熵,回归贝叶斯,稀疏字典构造Jayaram:模糊连通性原理,稀疏分解,...
  • 计算机数学课程收集

    千次阅读 2018-11-13 15:37:02
    解线性代数方程组的直接法与迭代法,线性最小二乘法,矩阵特征值的乘幂法,雅可比法等,非线性方程及非线性方程组的数值求解方法如:牛顿迭代法等。       课程号:20102140 课程名:拓扑学 ...
  • A Fast Learning Algorithm for Deep Belief Nets

    千次阅读 2018-01-15 23:30:50
    模型对输入向量进行了一个非线性的转换,并且将其作为序列中下一个模型的输入向量。 下图是一个多层的生成模型,其中最上方的两层通过无向连接进行交互,而其他连接都是有向的。每层内没有连接,并且为简化分析,...
  • 统计系本科生参考书整理

    千次阅读 2017-04-06 11:35:53
    推荐的书单包括统计系本科生课程密切相关的中文书籍或者中译本:统计历史,统计学入门(数学专业的统计书),数学分析,线性代数,概率论,数理统计,随机过程,R语言,大数据,金融统计,金融数学,生存分析,...
  • Coding and Paper Letter(六十四)

    千次阅读 2019-04-19 17:43:05
    20.R语言包robustlmm,提供了以稳健方式估计线性混合效应模型的功能。 robustlmm 21.Petri Kiuru在LakeKuivajärvi应用MyLake-C,重点关注气体转移速度。此版本的MyLake包括溶解氧和有机碳的新描述(有3个DOC池...
  • sklearn Gaussian Processes(高斯过程)

    千次阅读 2018-11-25 22:42:22
    KRR学习由相应内核引起的空间中的线性函数,该空间对应于原始空间中的非线性函数。基于平均误差损失与脊正弦化,选择内核空间中的线性函数。GPR使用内核来定义先验分布在目标函数上的协方差,并使用观察到的训练数据...
  • KRR学习由相应内核引起的空间中的线性函数,该空间对应于原始空间中的非线性函数。 基于平均误差损失与脊正弦化,选择内核空间中的线性函数。 GPR使用内核来定义先验分布在目标函数上的协方差,并使用观察到的训练...
  • 机器学习(ML)、深度学习(DL)和图像处理(opencv)专用...Adam(adaptive moment estimation,适应性矩估计),Adam是一种可以替代传统随机梯度下降过程的一阶优化算法,它能基于训练数据迭代地更新神经网络权重。Ad...

空空如也

空空如也

1 2 3
收藏数 51
精华内容 20
关键字:

蒙托卡罗求非线性平稳随机matlab

matlab 订阅
友情链接: im2jpeg.rar