知识库 > 数学方法 > 数值计算 > 矩阵的分解

乔列斯基分解    

  • 当A是对称正定矩阵时,这时由A的正定型以及LU分解的唯一性,可知,其中L是单位下三角,D为对角阵,且每一个元都大于0.
    如果记,我们有:.
    广义乔列斯基分解,就是对称非正定的矩阵,其中L是单位下三角,D为对角阵,且不是每一个元都大于0.

    chol(H:Array,L:Array,p:Int,options:Array,sneg:Array):Array;
    说明:进行乔列斯基分解,H对称正定,则可以得到三角阵L
    参数:
    H:需要被分解的对称矩阵,正定矩阵的分解才能成功
    L:变参返回乔列斯基分解得到的三角阵
    p:变参返回H的分解信息,-1表示全部分解成功,否则表示分解到第p步
    options:三角阵选项,默认'upper'为上三角,'lower' 为下三角
    sneg:当 H 非正定时 计算曲率方向,正定时为空

    例题:

    H := corr(rand(100,4));
    chol(H,L,p);        //乔列斯基分解
    if p = -1 then return L;    //p=-1表示分解成功

    运行得到:
    array((1.00,0.1,-0.13,-0.03),(0,0.99,0.03,-0.04),(0,0,0.99,0.04), (0,0,0,1.00))为上三角矩阵.
    当A是对称正定矩阵时,这时由A的正定型以及LU分解的唯一性,可知,其中L是单位下三角,D为对角阵,且每一个元都大于0.
    如果记,我们有:.
    广义乔列斯基分解,就是对称非正定的矩阵,其中L是单位下三角,D为对角阵,且不是每一个元都大于0.

    chol(H:Array,L:Array,p:Int,options:Array,sneg:Array):Array;
    说明:进行乔列斯基分解,H对称正定,则可以得到三角阵L
    参数:
    H:需要被分解的对称矩阵,正定矩阵的分解才能成功
    L:变参返回乔列斯基分解得到的三角阵
    p:变参返回H的分解信息,-1表示全部分解成功,否则表示分解到第p步
    options:三角阵选项,默认'upper'为上三角,'lower' 为下三角
    sneg:当 H 非正定时 计算曲率方向,正定时为空

    例题:

    H := corr(rand(100,4));
    chol(H,L,p);        //乔列斯基分解
    if p = -1 then return L;    //p=-1表示分解成功

    运行得到:
    array((1.00,0.1,-0.13,-0.03),(0,0.99,0.03,-0.04),(0,0,0.99,0.04), (0,0,0,1.00))为上三角矩阵.