囧小错吧 关注:136贴子:6,649

表示我是来做伸手党的= =

只看楼主收藏回复

小错姐应该会MATLAB哈。。
我在找一个分解函数,就是chol分解的m文件。。
可是在网上找了好久都木有找到
于是。。我就来这儿了。。。
不是我想做伸手党,是因为我实在是布吉岛怎么写啊啊啊啊。。。
万能的吧友大家帮帮俺吧~


IP属地:湖北1楼2013-07-01 17:08回复
    忘记说了。。。这个是说对于正定矩阵A,可以求出L,使得A等于L与L的转置之积
    然后由等式可以得出元素之间的相关关系,但是代码实在是不知道肿么写= =


    IP属地:湖北2楼2013-07-01 17:11
    回复
      我不懂,z神懂这个。@zzy717565


      3楼2013-07-01 17:33
      收起回复
        @zzy717565 表示那个函数是MATLAB内置函数。。。找不到它的代码


        IP属地:湖北4楼2013-07-02 10:23
        收起回复
          剩下代码传不上来好拙计。。。
          %乔列斯基分解function result=try2(A)[m,n]=size(A);
          if m~=n
          disp('please input a positive and square matrix')
          end
          return
          G=zeros(n,n);
          G(1,1)=sqrt(A(1,1));
          G(2:n,1)=A(2:n,1)/G(1,1);
          for j=2:n-1
          G(j,j)=sqrt(A(j,j)-sum(G(j,1:j-1)^2));
          for i=j+1:n
          G(i,j)=(A(i,j)-sum(G(i,1:j-1)*G(j,1:j-1)))/G(j,j);
          end
          end
          G(n,n)=sqrt(A(n,n)-sum((G(n,1:n-1))^2));
          G
          @zzy717565 麻烦啦~


          IP属地:湖北6楼2013-07-03 18:50
          收起回复
            end和return的顺序反了把


            IP属地:江苏来自Android客户端7楼2013-07-03 19:53
            收起回复
              我是这样的哈,先建立一个函数文件try2


              IP属地:湖北8楼2013-07-03 19:58
              收起回复
                然后,进入命令区

                其实主要就是想知道这个函数能不能用
                然后之后检验的话也很方便
                嗯,大致就是这样。。。
                之后的涉及到更麻烦的代码还没有写。。因为要调用这个函数。。


                IP属地:湖北9楼2013-07-03 20:00
                收起回复
                  来截个图显摆一下。。太不容易了


                  IP属地:湖北10楼2013-07-03 20:14
                  收起回复
                    首先,开始那个,用了一个不是对角阵的矩阵试了一下~

                    是木有问题哒~
                    然后我又尝试完善一下,然后。。又有问题了= =
                    要判断是不是正定矩阵,我采用的是直接调用matlab里面的函数eig来求= =
                    但是把它存在一个矩阵中,然后再判断,发现又不对了= =
                    明明判断特征值如果是小于0之后就应该跳出循环才对,但是一用到return就报错,然后如果不用return的话,就有答案。。。
                    比如说。。

                    下面的虽然是三角矩阵,但是很明显是错误的,就不说了,因为这儿我给出的这个矩阵本来就不是正定的= =
                    所以应该要跳出来才对
                    对于判断是否是正定矩阵,我是用以下方法做的:

                    如果在第二个判定之后加上return,
                    系统就报错,
                    出现了以下情况:

                    表示我又搞不懂了。。。。
                    @zzy717565 呃= =确实不大明白。。百度找了好久都木有找到原因。。。


                    IP属地:湖北11楼2013-07-03 23:34
                    收起回复
                      第二个判定的return应该加在那句disp的后面


                      IP属地:江苏来自Android客户端12楼2013-07-04 07:06
                      收起回复
                        我好废柴。。
                        不过居然加精啦~好开森


                        IP属地:湖北14楼2013-07-04 10:58
                        收起回复
                          又发现一个很奇怪的问题,按我们题目上给的一个四阶对称正定矩阵,用一开始可以运行成功的函数,居然报错了!
                          这。。。可是三阶正定矩阵是完全没有问题的啊
                          贴上报错信息。。

                          唉~桑感。。。


                          IP属地:湖北15楼2013-07-04 12:00
                          回复


                            IP属地:湖北16楼2013-07-04 12:01
                            收起回复


                              一开始最简单的代码,但是代入四阶矩阵之后就不可用了= =


                              IP属地:湖北17楼2013-07-04 12:33
                              收起回复