//
//	File:       WaveCoeffs.cc   (auto-generated by MTE.cc)
//
//	Purpose:    Contains coefficients useful for wavelet/galerkin radiosity
//
//	Author:     Andrew Willmott, (c) 1996-1997
//

// === Quad (Tensor) Push/Pull Matrices =======================================

const Mat2d M2_LINE_P0(
        1.0, 0.0, 
        0.0, 0.5
    );

const Mat2d M2_LINE_P1(
        1.0, 0.5, 
        0.0, 0.5
    );

const Mat2d M2_LINE_L0(
        1.25, 0.5, 
        -1.5, -0.5
    );

const Mat2d M2_LINE_L1(
        -0.25, -0.25, 
        1.5, 1.0
    );


const Mat2d F2_LINE_P0(
        1.25, -0.25, 
        0.75, 0.25
    );

const Mat2d F2_LINE_P1(
        0.25, 0.75, 
        -0.25, 1.25
    );

const Mat2d F2_LINE_L0(
        0.5625, 0.3125, 
        -0.0625, 0.1875
    );

const Mat2d F2_LINE_L1(
        0.1875, -0.0625, 
        0.3125, 0.5625
    );


const Mat3d M3_LINE_P0(
        1.0, 0.0, -0.25, 
        0.0, 0.5, 0.0, 
        0.0, 0.0, 0.25
    );

const Mat3d M3_LINE_P1(
        1.0, 0.5, 0.0, 
        0.0, 0.5, 0.5, 
        0.0, 0.0, 0.25
    );

const Mat3d M3_LINE_L0(
        1.25, -0.4375, -1, 
        -1.5, 1.375, 2.0, 
        0.0, -1.875, -1.75
    );

const Mat3d M3_LINE_L1(
        -0.25, 0.6875, 0.875, 
        1.5, -0.875, -1.75, 
        0.0, 1.875, 2.0
    );


const Mat3d F3_LINE_P0(
        1.375, -0.5, 0.125, 
        0.625, 0.5, -0.125, 
        0.125, 1.0, -0.125
    );

const Mat3d F3_LINE_P1(
        -0.125, 1.0, 0.125, 
        -0.125, 0.5, 0.625, 
        0.125, -0.5, 1.375
    );

const Mat3d F3_LINE_L0(
        0.583333, 0.291667, 0.125, 
        -0.0833333, 0.25, 0.333333, 
        0.0, -0.0416667, 0.0416667
    );

const Mat3d F3_LINE_L1(
        0.0416666, -0.0416666, 0.0, 
        0.333333, 0.25, -0.0833333, 
        0.125, 0.291667, 0.583333
    );


// === Quad (Tensor) Transfer Matrices ========================================

const Mat2d M2_LINE_R(
        1.36603, -0.366025, 
        -1.73205, 1.73205
    );

const Mat2d M2_LINE_S(
        0.5, 0.105662, 
        0.5, 0.394338
    );


const Mat3d M3_LINE_R(
        2.58994, -2.88889, 1.29895, 
        -4.62433, 6.66667, -2.04234, 
        3.33333, -6.66667, 3.33333
    );

const Mat3d M3_LINE_S(
        0.277778, 0.031306, -0.0890644, 
        0.444444, 0.222222, -0.037037, 
        0.277778, 0.246472, 0.126101
    );


const Matd M2_LINE_U(4, 2, 
        0.211325, 0.211325, 
        0.788675, 0.211325, 
        0.211325, 0.788675, 
        0.788675, 0.788675
    );

const Matd M3_LINE_U(9, 2, 
        0.112702, 0.112702, 
        0.5, 0.112702, 
        0.887298, 0.112702, 
        0.112702, 0.5, 
        0.5, 0.5, 
        0.887298, 0.5, 
        0.112702, 0.887298, 
        0.5, 0.887298, 
        0.887298, 0.887298
    );


// === Triangular Push/Pull Matrices ==========================================

const Mat3d M2_TRI_P0(
        1.0, 0.0, 0.0, 
        0.5, 0.5, 0.0, 
        0.5, 0.0, 0.5
    );

const Mat3d M2_TRI_P1(
        0.5, 0.5, 0.0, 
        0.0, 1.0, 0.0, 
        0.0, 0.5, 0.5
    );

const Mat3d M2_TRI_P2(
        0.5, 0.0, 0.5, 
        0.0, 0.5, 0.5, 
        0.0, 0.0, 1.0
    );

const Mat3d M2_TRI_P3(
        0.0, 0.5, 0.5, 
        0.5, 0.0, 0.5, 
        0.5, 0.5, 0.0
    );

const Mat3d M2_TRI_L0(
        0.5, 0.375, 0.375, 
        -0.125, 0.0, -0.125, 
        -0.125, -0.125, 0.0
    );

const Mat3d M2_TRI_L1(
        0.0, -0.125, -0.125, 
        0.375, 0.5, 0.375, 
        -0.125, -0.125, 0.0
    );

const Mat3d M2_TRI_L2(
        0.0, -0.125, -0.125, 
        -0.125, 0.0, -0.125, 
        0.375, 0.375, 0.5
    );

const Mat3d M2_TRI_L3(
        0.0, 0.125, 0.125, 
        0.125, 0.0, 0.125, 
        0.125, 0.125, 0.0
    );


const Mat4d F2_TRI_P0(
        1.6875, 0.1875, 0.1875, -1.0625, 
        0.6875, 0.1875, -0.3125, 0.4375, 
        0.6875, -0.3125, 0.1875, 0.4375, 
        0.9375, -0.0625, -0.0625, 0.1875
    );

const Mat4d F2_TRI_P1(
        0.1875, 0.6875, -0.3125, 0.4375, 
        0.1875, 1.6875, 0.1875, -1.0625, 
        -0.3125, 0.6875, 0.1875, 0.4375, 
        -0.0625, 0.9375, -0.0625, 0.1875
    );

const Mat4d F2_TRI_P2(
        0.1875, -0.3125, 0.6875, 0.4375, 
        -0.3125, 0.1875, 0.6875, 0.4375, 
        0.1875, 0.1875, 1.6875, -1.0625, 
        -0.0625, -0.0625, 0.9375, 0.1875
    );

const Mat4d F2_TRI_P3(
        -0.3125, 0.1875, 0.1875, 0.9375, 
        0.1875, -0.3125, 0.1875, 0.9375, 
        0.1875, 0.1875, -0.3125, 0.9375, 
        -0.0625, -0.0625, -0.0625, 1.1875
    );

const Mat4d F2_TRI_L0(
        0.317274, 0.140191, 0.140191, 0.178385, 
        0.00477431, 0.077691, -0.047309, -0.00911458, 
        0.00477431, -0.047309, 0.077691, -0.00911458, 
        -0.0768229, 0.0794271, 0.0794271, 0.0898438
    );

const Mat4d F2_TRI_L1(
        0.077691, 0.00477431, -0.047309, -0.00911458, 
        0.140191, 0.317274, 0.140191, 0.178385, 
        -0.047309, 0.00477431, 0.077691, -0.00911458, 
        0.0794271, -0.0768229, 0.0794271, 0.0898438
    );

const Mat4d F2_TRI_L2(
        0.077691, -0.047309, 0.00477431, -0.00911458, 
        -0.047309, 0.077691, 0.00477431, -0.00911458, 
        0.140191, 0.140191, 0.317274, 0.178385, 
        0.0794271, 0.0794271, -0.0768229, 0.0898438
    );

const Mat4d F2_TRI_L3(
        -0.0351562, 0.0898437, 0.0898438, 0.0273437, 
        0.0898438, -0.0351562, 0.0898438, 0.0273437, 
        0.0898438, 0.0898437, -0.0351563, 0.0273438, 
        0.105469, 0.105469, 0.105469, 0.167969
    );


const Matd M3_TRI_P0(6, 6, 
        1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 
        0.25, 0.25, 0.0, 0.5, 0.0, 0.0, 
        0.25, 0.0, 0.25, 0.0, 0.0, 0.5, 
        0.5, 0.0, 0.0, 0.5, 0.0, 0.0, 
        0.25, 0.0, 0.0, 0.25, 0.25, 0.25, 
        0.5, 0.0, 0.0, 0.0, 0.0, 0.5
    );

const Matd M3_TRI_P1(6, 6, 
        0.25, 0.25, 0.0, 0.5, 0.0, 0.0, 
        0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 
        0.0, 0.25, 0.25, 0.0, 0.5, 0.0, 
        0.0, 0.5, 0.0, 0.5, 0.0, 0.0, 
        0.0, 0.5, 0.0, 0.0, 0.5, 0.0, 
        0.0, 0.25, 0.0, 0.25, 0.25, 0.25
    );

const Matd M3_TRI_P2(6, 6, 
        0.25, 0.0, 0.25, 0.0, 0.0, 0.5, 
        0.0, 0.25, 0.25, 0.0, 0.5, 0.0, 
        0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 
        0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 
        0.0, 0.0, 0.5, 0.0, 0.5, 0.0, 
        0.0, 0.0, 0.5, 0.0, 0.0, 0.5
    );

const Matd M3_TRI_P3(6, 6, 
        0.0, 0.25, 0.25, 0.0, 0.5, 0.0, 
        0.25, 0.0, 0.25, 0.0, 0.0, 0.5, 
        0.25, 0.25, 0.0, 0.5, 0.0, 0.0, 
        0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 
        0.25, 0.0, 0.0, 0.25, 0.25, 0.25, 
        0.0, 0.25, 0.0, 0.25, 0.25, 0.25
    );

const Matd M3_TRI_L0(6, 6, 
        0.6875, 0.125, 0.125, 0.375, 0.125, 0.375, 
        0.0625, -0.125, 0.0625, -0.0625, -0.0625, 0.0625, 
        0.0625, 0.0625, -0.125, 0.0625, -0.0625, -0.0625, 
        -0.3125, 0.4375, -0.1875, 0.125, 0.125, -0.25, 
        0.0625, -0.0625, -0.0625, 0.0, 0.0, 0.0, 
        -0.3125, -0.1875, 0.4375, -0.25, 0.125, 0.125
    );

const Matd M3_TRI_L1(6, 6, 
        -0.125, 0.0625, 0.0625, -0.0625, 0.0625, -0.0625, 
        0.125, 0.6875, 0.125, 0.375, 0.375, 0.125, 
        0.0625, 0.0625, -0.125, 0.0625, -0.0625, -0.0625, 
        0.4375, -0.3125, -0.1875, 0.125, -0.25, 0.125, 
        -0.1875, -0.3125, 0.4375, -0.25, 0.125, 0.125, 
        -0.0625, 0.0625, -0.0625, 0.0, 0.0, 0.0
    );

const Matd M3_TRI_L2(6, 6, 
        -0.125, 0.0625, 0.0625, -0.0625, 0.0625, -0.0625, 
        0.0625, -0.125, 0.0625, -0.0625, -0.0625, 0.0625, 
        0.125, 0.125, 0.6875, 0.125, 0.375, 0.375, 
        -0.0625, -0.0625, 0.0625, 0.0, 0.0, 0.0, 
        -0.1875, 0.4375, -0.3125, 0.125, 0.125, -0.25, 
        0.4375, -0.1875, -0.3125, 0.125, -0.25, 0.125
    );

const Matd M3_TRI_L3(6, 6, 
        -0.0625, -0.125, -0.125, -0.125, -0.125, -0.125, 
        -0.125, -0.0625, -0.125, -0.125, -0.125, -0.125, 
        -0.125, -0.125, -0.0625, -0.125, -0.125, -0.125, 
        0.0625, 0.0625, 0.4375, 0.125, 0.25, 0.25, 
        0.4375, 0.0625, 0.0625, 0.25, 0.125, 0.25, 
        0.0625, 0.4375, 0.0625, 0.25, 0.25, 0.125
    );


const Matd F3_TRI_P0(9, 9, 
        1.91667, -0.427083, -0.114583, -0.427083, -0.583333, 0.822917, -0.114583, 0.822917, -0.895833, 
        0.59375, 0.90625, 0.125, -0.375, 0.28125, -0.9375, -0.03125, 0.15625, 0.28125, 
        0.104167, 1.57292, 0.0729167, 0.0104167, 0.354167, -0.864583, 0.0104167, -0.177083, -0.0833333, 
        0.59375, -0.375, -0.03125, 0.90625, 0.28125, 0.15625, 0.125, -0.9375, 0.28125, 
        -0.0625, -0.125, 0.0, -0.125, -0.0625, 0.0625, 0.0, 0.0625, 1.25, 
        0.114583, 0.645833, 0.0520833, -0.260417, 0.177083, -0.510417, 0.0208333, -0.0416667, 0.802083, 
        0.104167, 0.0104167, 0.0104167, 1.57292, 0.354167, -0.177083, 0.0729167, -0.864583, -0.0833333, 
        0.114583, -0.260417, 0.0208333, 0.645833, 0.177083, -0.0416667, 0.0520833, -0.510417, 0.802083, 
        0.895833, -0.104167, 0.0208333, -0.104167, 0.0208333, -0.0416667, 0.0208333, -0.0416667, 0.333333
    );

const Matd F3_TRI_P1(9, 9, 
        0.0729167, 1.57292, 0.104167, 0.354167, 0.0104167, -0.0833333, 0.0104167, -0.177083, -0.864583, 
        0.125, 0.90625, 0.59375, 0.28125, -0.375, 0.28125, -0.03125, 0.15625, -0.9375, 
        -0.114583, -0.427083, 1.91667, -0.583333, -0.427083, -0.895833, -0.114583, 0.822917, 0.822917, 
        0.0, -0.125, -0.0625, -0.0625, -0.125, 1.25, 0.0, 0.0625, 0.0625, 
        -0.03125, -0.375, 0.59375, 0.28125, 0.90625, 0.28125, 0.125, -0.9375, 0.15625, 
        0.0208333, -0.104167, 0.895833, 0.0208333, -0.104167, 0.333333, 0.0208333, -0.0416667, -0.0416667, 
        0.0104167, 0.0104167, 0.104167, 0.354167, 1.57292, -0.0833333, 0.0729167, -0.864583, -0.177083, 
        0.0208333, -0.260417, 0.114583, 0.177083, 0.645833, 0.802083, 0.0520833, -0.510417, -0.0416667, 
        0.0520833, 0.645833, 0.114583, 0.177083, -0.260417, 0.802083, 0.0208333, -0.0416667, -0.510417
    );

const Matd F3_TRI_P2(9, 9, 
        0.0729167, 0.354167, 0.0104167, 1.57292, 0.0104167, -0.177083, 0.104167, -0.0833333, -0.864583, 
        0.0, -0.0625, 0.0, -0.125, -0.125, 0.0625, -0.0625, 1.25, 0.0625, 
        0.0104167, 0.354167, 0.0729167, 0.0104167, 1.57292, -0.864583, 0.104167, -0.0833333, -0.177083, 
        0.125, 0.28125, -0.03125, 0.90625, -0.375, 0.15625, 0.59375, 0.28125, -0.9375, 
        -0.03125, 0.28125, 0.125, -0.375, 0.90625, -0.9375, 0.59375, 0.28125, 0.15625, 
        0.0208333, 0.177083, 0.0520833, -0.260417, 0.645833, -0.510417, 0.114583, 0.802083, -0.0416667, 
        -0.114583, -0.583333, -0.114583, -0.427083, -0.427083, 0.822917, 1.91667, -0.895833, 0.822917, 
        0.0208333, 0.0208333, 0.0208333, -0.104167, -0.104167, -0.0416667, 0.895833, 0.333333, -0.0416667, 
        0.0520833, 0.177083, 0.0208333, 0.645833, -0.260417, -0.0416667, 0.114583, 0.802083, -0.510417
    );

const Matd F3_TRI_P3(9, 9, 
        0.0208333, -0.0416667, -0.0416667, -0.0416667, 0.895833, 0.145833, -0.0416667, 0.145833, -0.0416667, 
        -0.0729167, -0.291667, -0.0729167, -0.260417, -0.260417, 0.489583, -0.166667, 1.14583, 0.489583, 
        -0.0416667, -0.0416667, 0.0208333, 0.895833, -0.0416667, -0.0416667, -0.0416667, 0.145833, 0.145833, 
        -0.0729167, -0.260417, -0.166667, -0.291667, -0.260417, 1.14583, -0.0729167, 0.489583, 0.489583, 
        -0.166667, -0.260417, -0.0729167, -0.260417, -0.291667, 0.489583, -0.0729167, 0.489583, 1.14583, 
        -0.135417, -0.322917, -0.0416667, -0.0416667, -0.322917, 0.395833, -0.135417, 0.802083, 0.802083, 
        -0.0416667, 0.895833, -0.0416667, -0.0416667, -0.0416667, 0.145833, 0.0208333, -0.0416667, 0.145833, 
        -0.135417, -0.0416667, -0.135417, -0.322917, -0.322917, 0.802083, -0.0416667, 0.395833, 0.802083, 
        -0.0416667, -0.322917, -0.135417, -0.322917, -0.0416667, 0.802083, -0.135417, 0.802083, 0.395833
    );

const Matd F3_TRI_L0(9, 9, 
        0.351209, 0.158501, 0.0335005, 0.158501, 0.00745885, 0.0855838, 0.0335005, 0.0855838, 0.132459, 
        -0.0572595, 0.138053, 0.171907, -0.0416345, 0.0416988, 0.0573238, -0.00778035, 0.0338863, 0.0156572, 
        0.00662294, -0.0142104, 0.00141461, 0.0118313, -0.0142104, -0.00900206, 0.00662294, -0.00379372, -0.00379372, 
        -0.0572595, -0.0416345, -0.00778035, 0.138053, 0.0416988, 0.0338863, 0.171907, 0.0573238, 0.0156572, 
        0.00778035, 0.00517618, -3.21502e-05, 0.00517618, -0.00263632, -0.0104488, -3.21502e-05, -0.0104488, -0.013053, 
        0.0310249, -0.0783501, 0.00237912, 0.0127958, 0.0258166, 0.0127958, -0.0106417, -0.0314751, -0.0106417, 
        0.00662294, 0.0118313, 0.00662294, -0.0142104, -0.0142104, -0.00379372, 0.00141461, -0.00900206, -0.00379372, 
        0.0310249, 0.0127958, -0.0106417, -0.0783501, 0.0258166, -0.0314751, 0.00237912, 0.0127958, -0.0106417, 
        -0.0697659, 0.0578382, 0.0526299, 0.0578382, 0.138567, 0.11513, 0.0526299, 0.11513, 0.128151
    );

const Matd F3_TRI_L1(9, 9, 
        0.00141461, -0.0142104, 0.00662294, -0.0142104, 0.0118313, -0.00379372, 0.00662294, -0.00379372, -0.00900206, 
        0.171907, 0.138053, -0.0572595, 0.0416988, -0.0416345, 0.0156572, -0.00778035, 0.0338863, 0.0573238, 
        0.0335005, 0.158501, 0.351209, 0.00745885, 0.158501, 0.132459, 0.0335005, 0.0855838, 0.0855838, 
        -3.21502e-05, 0.00517618, 0.00778035, -0.00263632, 0.00517618, -0.013053, -3.21502e-05, -0.0104488, -0.0104488, 
        -0.00778035, -0.0416345, -0.0572595, 0.0416988, 0.138053, 0.0156572, 0.171907, 0.0573238, 0.0338863, 
        0.0526299, 0.0578382, -0.0697659, 0.138567, 0.0578382, 0.128151, 0.0526299, 0.11513, 0.11513, 
        0.00662294, 0.0118313, 0.00662294, -0.0142104, -0.0142104, -0.00379372, 0.00141461, -0.00900206, -0.00379372, 
        -0.0106417, 0.0127958, 0.0310249, 0.0258166, -0.0783501, -0.0106417, 0.00237912, 0.0127958, -0.0314751, 
        0.00237912, -0.0783501, 0.0310249, 0.0258166, 0.0127958, -0.0106417, -0.0106417, -0.0314751, 0.0127958
    );

const Matd F3_TRI_L2(9, 9, 
        0.00141461, -0.0142104, 0.00662294, -0.0142104, 0.0118313, -0.00379372, 0.00662294, -0.00379372, -0.00900206, 
        -3.21502e-05, -0.00263632, -3.21502e-05, 0.00517618, 0.00517618, -0.0104488, 0.00778035, -0.013053, -0.0104488, 
        0.00662294, -0.0142104, 0.00141461, 0.0118313, -0.0142104, -0.00900206, 0.00662294, -0.00379372, -0.00379372, 
        0.171907, 0.0416988, -0.00778035, 0.138053, -0.0416345, 0.0338863, -0.0572595, 0.0156572, 0.0573238, 
        -0.00778035, 0.0416988, 0.171907, -0.0416345, 0.138053, 0.0573238, -0.0572595, 0.0156572, 0.0338863, 
        -0.0106417, 0.0258166, 0.00237912, 0.0127958, -0.0783501, 0.0127958, 0.0310249, -0.0106417, -0.0314751, 
        0.0335005, 0.00745885, 0.0335005, 0.158501, 0.158501, 0.0855838, 0.351209, 0.132459, 0.0855838, 
        0.0526299, 0.138567, 0.0526299, 0.0578382, 0.0578382, 0.11513, -0.0697659, 0.128151, 0.11513, 
        0.00237912, 0.0258166, -0.0106417, -0.0783501, 0.0127958, -0.0314751, 0.0310249, -0.0106417, 0.0127958
    );

const Matd F3_TRI_L3(9, 9, 
        0.000128601, -0.0154964, 0.0122814, -0.0154964, 0.0244342, -0.0120242, 0.0122814, -0.0120242, -0.00334362, 
        -0.00176826, -0.00610854, -0.00176826, 0.0416345, 0.0416345, 0.0225373, 0.143197, 0.0529192, 0.0225373, 
        0.0122814, -0.0154964, 0.000128601, 0.0244342, -0.0154964, -0.00334362, 0.0122814, -0.0120242, -0.0120242, 
        -0.00176826, 0.0416345, 0.143197, -0.00610854, 0.0416345, 0.0529192, -0.00176826, 0.0225373, 0.0225373, 
        0.143197, 0.0416345, -0.00176826, 0.0416345, -0.00610854, 0.0225373, -0.00176826, 0.0225373, 0.0529192, 
        0.0502508, 0.0242091, -0.0148534, 0.13098, 0.0242091, 0.0372299, 0.0502508, 0.0710841, 0.0710841, 
        0.0122814, 0.0244342, 0.0122814, -0.0154964, -0.0154964, -0.0120242, 0.000128601, -0.00334362, -0.0120242, 
        0.0502508, 0.13098, 0.0502508, 0.0242091, 0.0242091, 0.0710841, -0.0148534, 0.0372299, 0.0710841, 
        -0.0148534, 0.0242091, 0.0502508, 0.0242091, 0.13098, 0.0710841, 0.0502508, 0.0710841, 0.0372299
    );


// === Triangular Transfer Matrices ==========================================

const Mat3d M2_TRI_R(
        1.66667, -0.333333, -0.333333, 
        -0.333333, -0.333333, 1.66667, 
        -0.333333, 1.66667, -0.333333
    );

const Mat3d M2_TRI_S(
        0.222222, 0.0555556, 0.0555556, 
        0.0555556, 0.0555556, 0.222222, 
        0.0555556, 0.222222, 0.0555556
    );


const Matd M3_TRI_R(6, 7, 
        -0.9, 1.93751, 0.106559, 0.106559, 0.362493, -0.306559, -0.306559, 
        -0.9, 0.106559, 0.106559, 1.93751, -0.306559, -0.306559, 0.362493, 
        -0.9, 0.106559, 1.93751, 0.106559, -0.306559, 0.362493, -0.306559, 
        1.35, -0.808915, 0.22284, -0.808915, -0.641085, 2.32716, -0.641085, 
        1.35, 0.22284, -0.808915, -0.808915, 2.32716, -0.641085, -0.641085, 
        1.35, -0.808915, -0.808915, 0.22284, -0.641085, -0.641085, 2.32716
    );

const Matd M3_TRI_S(7, 6, 
        0.025, 0.025, 0.025, 0.05, 0.05, 0.05, 
        0.0800834, 0.001292, 0.001292, 0.0203439, 0.00258401, 0.0203439, 
        0.001292, 0.001292, 0.0800834, 0.00258401, 0.0203439, 0.0203439, 
        0.001292, 0.0800834, 0.001292, 0.0203439, 0.0203439, 0.00258401, 
        0.000472116, 0.0292636, 0.0292636, 0.00743392, 0.0585271, 0.00743392, 
        0.0292636, 0.0292636, 0.000472116, 0.0585271, 0.00743392, 0.00743392, 
        0.0292636, 0.000472116, 0.0292636, 0.00743392, 0.00743392, 0.0585271
    );


const Matd M2_TRI_U(3, 2, 
        0.166667, 0.166667, 
        0.166667, 0.666667, 
        0.666667, 0.166667
    );

const Matd M3_TRI_U(7, 2, 
        0.333333, 0.333333, 
        0.101287, 0.101287, 
        0.101287, 0.797427, 
        0.797427, 0.101287, 
        0.470142, 0.470142, 
        0.470142, 0.0597159, 
        0.0597159, 0.470142
    );

