📄 mmat_13.cc
字号:
// K.assign(5) // {4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // L.assign(5) // {4, 4, 5, 0, 0, 0, 5, 5, 0, 0, 5, 5, 5, 0, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // M.assign(5) // {4, 4, 5, 5, 5, 5, 0, 5, 5, 5, 0, 0, 5, 5, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // N.assign(5) // {4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // O.assign(5) // {2, 4, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // P.assign(5) // {4, 2, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},};// the results of block assignment//double MMAT_BLOCKASSIGN_RES [MMAT_NUM_MATS_TOTAL] [MMAT_MAT_SIZE] = { // A.assign(0, 0, 2, 2, 5) // {4, 4, 5, 5, 7, 2, 5, 5, 6, 1, 8, 4, 1, 3, 4, 5, 7, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // B.assign(2, 2, 1, 1, 5) // {4, 4, 5, 0, 0, 0, 0, 2, 0, 0, 0, 0, 5, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // C.assign(2, 0, 2, 2, 5) // {4, 4, 5, 2, 5, 5, 2, 7, 5, 5, 5, 5, 8, 3, 5, 5, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // D.assign(2, 0, 2, 3, 5) // {4, 4, 5, 0, 0, 0, 2, 2, 0, 0, 5, 5, 5, 0, 5, 5, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // E.assign(0, 2, 2, 2, 5) // {4, 4, 5, 2, 5, 5, 0, 2, 5, 5, 0, 0, 5, 5, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // F.assign(0, 0, 2, 2, 5) // {4, 4, 5, 5, 3, 2, 5, 5, 8, 6, 9, 12, 9, 6, 15, 14, 24, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // G.assign(0, 0, 2, 2, 5) // {4, 2, 5, 5, 5, 5, 3, 9, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // H.assign(0, 0, 2, 2, 5) // {2, 4, 5, 5, 3, 2, 5, 5, 9, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // I.assign(0, 0, 2, 2, 5+3j) // {4, 4, 5, 5, 1, 4, 5, 5, 8, 1, 8, 4, 9, 3, 4, 8, 7, 2, 3, 3, 1, 6, 3, 3, 5, 3, 5, 6, 4, 4, 3, 5, 2, 8}, // J.assign(2, 2, 1, 1, 5+3j) // {4, 4, 9, 0, 0, 0, 0, 4, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 2, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3}, // K.assign(2, 0, 2, 2, 5+3j) // {4, 4, 2, 7, 5, 5, 7, 5, 5, 5, 5, 5, 7, 9, 5, 5, 9, 6, 1, 3, 3, 3, 3, 7, 3, 3, 3, 3, 3, 6, 3, 3, 6, 2}, // L.assign(2, 0, 2, 3, 5+3j) // {4, 4, 2, 0, 0, 0, 4, 1, 0, 0, 5, 5, 5, 0, 5, 5, 5, 8, 6, 0, 0, 0, 9, 4, 0, 0, 3, 3, 3, 0, 3, 3, 3, 1}, // M.assign(0, 2, 3, 2, 5+3j) // {4, 4, 8, 9, 5, 5, 0, 9, 5, 5, 0, 0, 5, 5, 0, 0, 0, 4, 3, 7, 3, 3, 0, 6, 3, 3, 0, 0, 3, 3, 0, 0, 0, 1}, // N.assign(0, 0, 2, 2, 5+3j) // {4, 4, 5, 5, 4, 6, 5, 5, 3, 9, 1, 6, 6, 3, 1, 3, 2, 3, 3, 3, 6, 8, 3, 3, 5, 8, 6, 3, 1, 4, 2, 3, 3, 4}, // O.assign(0, 0, 2, 2, 5+3j) // {4, 2, 5, 5, 5, 5, 6, 3, 2, 8, 3, 3, 3, 3, 6, 8, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // P.assign(0, 0, 2, 2, 5+3j) // {2, 4, 5, 5, 2, 3, 5, 5, 2, 8, 3, 3, 3, 1, 3, 3, 4, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},};double MMAT_ASSIGN_ARG [MMAT_NUM_MATS_TOTAL] [MMAT_MAT_SIZE] = { // A: a full 4x4 non-singular matrix // {4, 4, 3, 4, 7, 2, 3, 5, 6, 1, 8, 4, 1, 3, 4, 5, 7, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // B: a diagonal 4x4 non-singular matrix // {4, 4, 5, 2, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // C: a symmetric 4x4 non-singular matrix // {4, 4, 5, 2, 7, 3, 6, 8, 4, 1, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // D: a lower triangular 4x4 non-singular matrix // {4, 4, 5, 2, 2, 3, 6, 3, 4, 6, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // E: a upper triangular 4x4 non-singular matrix // {4, 4, 5, 2, 3, 4, 2, 6, 6, 3, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // F: a full 4x4 singular matrix // {4, 4, 3, 4, 3, 2, 5, 7, 8, 6, 9, 12, 9, 6, 15, 14, 24, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // G: a full 4x2 matrix // {4, 2, 4, 5, 7, 2, 3, 9, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // H: a full 2x4 matrix // {2, 4, 4, 7, 3, 2, 5, 2, 9, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // I: a full 4x4 non-singular matrix // {4, 4, 2, 9, 1, 4, 3, 5, 8, 1, 8, 4, 9, 3, 4, 8, 7, 2, 4, 5, 1, 6, 7, 9, 5, 3, 5, 6, 4, 4, 3, 5, 2, 8}, // J: a diagonal 4x4 non-singular matrix // {4, 4, 9, 4, 1, 0, 3, 2, 5, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // K: a symmetric 4x4 non-singular matrix // {4, 4, 2, 7, 5, 1, 2, 7, 3, 4, 9, 6, 1, 3, 7, 5, 4, 3, 2, 1, 6, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // L: a lower triangular 4x4 non-singular matrix // {4, 4, 2, 4, 1, 6, 7, 9, 4, 2, 3, 8, 6, 9, 4, 6, 6, 1, 8, 9, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // M: a upper triangular 4x4 non-singular matrix // {4, 4, 8, 9, 1, 9, 9, 3, 5, 2, 8, 4, 3, 7, 5, 6, 6, 3, 7, 3, 8, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // N: a full 4x4 singular matrix // {4, 4, 2, 6, 4, 6, 3, 8, 3, 9, 1, 6, 6, 3, 1, 3, 2, 3, 4, 6, 6, 8, 8, 1, 5, 8, 6, 3, 1, 4, 2, 3, 3, 4}, // O: a full 4x2 matrix // {4, 2, 7, 1, 6, 2, 6, 3, 2, 8, 8, 6, 3, 3, 6, 8, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // P: a full 2x4 matrix // {2, 4, 8, 4, 2, 3, 1, 6, 2, 8, 6, 3, 3, 1, 2, 7, 4, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},};unichar* MMAT_ASSIGN1_ARG [MMAT_NUM_MATS_TOTAL] = { // A: a full 4x4 non-singular matrix // L"3, 4, 7, 2, 3, 5, 6, 1, 8, 4, 1, 3, 4, 5, 7, 2", // B: a diagonal 4x4 non-singular matrix // L"5, 2, 3, 4", // C: a symmetric 4x4 non-singular matrix // L"5, 2, 7, 3, 6, 8, 4, 1, 3, 4", // D: a lower triangular 4x4 non-singular matrix // L"5, 2, 2, 3, 6, 3, 4, 6, 3, 4", // E: a upper triangular 4x4 non-singular matrix // L"5, 2, 3, 4, 2, 6, 6, 3, 3, 4", // F: a full 4x4 singular matrix // L"3, 4, 3, 2, 5, 7, 8, 6, 9, 12, 9, 6, 15, 14, 24, 18", // G: a full 4x2 matrix // L"4, 5, 7, 2, 3, 9, 2, 3", // H: a full 2x4 matrix // L"4, 7, 3, 2, 5, 2, 9, 3", // I: a full 4x4 non-singular matrix // L"2+4j, 9+5j, 1+1j, 4+6j, 3+7j, 5+9j, 8+5j, 1+3j, 8+5j, 4+6j, 9+4j, 3+4j,4+3j, 8+5j, 7+2j, 2+8j", // J: a diagonal 4x4 non-singular matrix // L"9+3j, 4+2j, 1+5j, 0+3j", // K: a symmetric 4x4 non-singular matrix // L"2+1j, 7+3j, 5+7j, 1+5j, 2+4j, 7+3j, 3+2j, 4+1j, 9+6j, 6+2j", // L: a lower triangular 4x4 non-singular matrix // L"2+6j, 4+9j, 1+4j, 6+6j, 7+6j, 9+1j, 4+8j, 2+9j, 3+3j, 8+1j", // M: a upper triangular 4x4 non-singular matrix // L"8+3j, 9+7j, 1+5j, 9+6j, 9+6j, 3+3j, 5+7j, 2+3j, 8+8j, 4+1j", // N: a full 4x4 singular matrix // L"2+4j, 6+6j, 4+6j, 6+8j, 3+8j, 8+1j, 3+5j, 9+8j, 1+6j, 6+3j, 6+1j, 3+4j, 1+2j, 3+3j, 2+3j, 3+4j", // O: a full 4x2 matrix // L"7+8j, 1+6j, 6+3j, 2+3j, 6+6j, 3+8j, 2+5j, 8+4j", // P: a full 2x4 matrix // L"8+6j, 4+3j, 2+3j, 3+1j, 1+2j, 6+7j, 2+4j, 8+5j",};// vector multiplication arguments//double MMAT_VMULT_ARG_REAL [MMAT_NUM_ROWS * MMAT_TWO] = { // vector V1 // 6, 4, 3, 1, 0, 0, 0, 0,};double MMAT_MULTV_ARG_REAL [MMAT_NUM_COLS * MMAT_TWO] = { // vector V2 // 5, 4, 2, 0, 0, 0, 0, 0,};double MMAT_VMULT_ARG_COMPLEX [MMAT_NUM_ROWS * MMAT_TWO] = { // vector V3 // 6, 4, 3, 1, 2, 3, 2, 2,};double MMAT_MULTV_ARG_COMPLEX [MMAT_NUM_COLS * MMAT_TWO] = { // vector V4 // 5, 4, 2, 0, 3, 1, 3, 4,};long MMAT_INDEX_VECTOR [MMAT_NUM_ROWS] = { // MVector<Long, long> index_vec // 3, 2, 1, 0};// vector multiplication results//double MMAT_VMULT_RES_REAL [MMAT_NUM_MATS_TOTAL] [MMAT_NUM_ROWS * MMAT_TWO + 1] = { // V1 * A = (len, vector) // {4, 58, 61, 76, 27, 0, 0, 0, 0}, // V1 * B = (len, vector) // {4, 30, 8, 9, 4, 0, 0, 0, 0}, // V1 * C = (len, vector) // {4, 51, 59, 69, 41, 0, 0, 0, 0}, // V1 * D = (len, vector) // {4, 51, 32, 12, 4, 0, 0, 0, 0}, // V1 * E = (len, vector) // {4, 30, 20, 51, 61, 0, 0, 0, 0}, // V1 * F = (len, vector) // {4, 80, 102, 101, 72, 0, 0, 0, 0}, // V1 * G = (len, vector), two dummy values // {2, 63, 68, 0, 0, 0, 0, 0, 0}, // V1 * H: dummy values // {4, 0, 0, 0, 0, 0, 0, 0, 0}, // V1 * I = (len, vector) // {4, 52, 94, 72, 39, 70, 89, 40, 68}, // V1 * J = (len, vector) // {4, 54, 16, 3, 0, 18, 8, 15, 3}, // V1 * K = (len, vector) // {4, 46, 72, 44, 67, 35, 59, 61, 36}, // V1 * L = (len, vector) // {4, 50, 27, 30, 8, 98, 43, 6, 1}, // V1 * M = (len, vector) // {4, 48, 90, 24, 102, 18, 66, 51, 89}, // V1 * N = (len, vector) // {4, 28, 89, 56, 84, 76, 52, 62, 96}, // V1 * O = (len, vector), two dummy values // {2, 86, 31, 0, 0, 83, 76, 0, 0}, // V1 * P: dummy values // {4, 0, 0, 0, 0, 0, 0, 0, 0}};// vector multiplication results//double MMAT_MULTV_RES_REAL [MMAT_NUM_MATS_TOTAL] [MMAT_NUM_COLS * MMAT_TWO + 1] = { // A * transpose(V2) = (len, vector) // {4, 45, 47, 58, 54, 0, 0, 0, 0}, // B * transpose(V2) = (len, vector) // {4, 25, 8, 6, 0, 0, 0, 0, 0}, // C * transpose(V2) = (len, vector) // {4, 39, 50, 55, 30, 0, 0, 0, 0}, // D * transpose(V2) = (len, vector) // {4, 25, 18, 45, 50, 0, 0, 0, 0}, // E * transpose(V2) = (len, vector) // {4, 39, 20, 6, 0, 0, 0, 0, 0}, // F * transpose(V2) = (len, vector) // {4, 37, 69, 111, 179, 0, 0, 0, 0}, // G * transpose(V2) : (dummy values) // {4, 0, 0, 0, 0, 0, 0, 0, 0}, // H * transpose(V2) = (len, vector), two dummy values // {2, 54, 51, 0, 0, 0, 0, 0, 0}, // I * transpose(V2) = (len, vector) // {4, 48, 51, 74, 66, 42, 81, 57, 39}, // J * transpose(V2) = (len, vector) // {4, 45, 16, 2, 0, 15, 8, 10, 0}, // K * transpose(V2) = (len, vector) // {4, 40, 59, 27, 49, 27, 51, 47, 26}, // L * transpose(V2) = (len, vector) // {4, 10, 24, 76, 34, 30, 61, 56, 82}, // M * transpose(V2) = (len, vector) // {4, 78, 42, 4, 0, 53, 30, 6, 0}, // N * transpose(V2) = (len, vector) // {4, 42, 53, 41, 21, 56, 54, 44, 28}, // O * transpose(V2) : (dummy values) // {4, 0, 0, 0, 0, 0, 0, 0, 0}, // P * transpose(V2) = (len, vector), two dummy values // {2, 60, 33, 0, 0, 48, 46, 0, 0}};double MMAT_VMULT_RES_COMPLEX [MMAT_NUM_MATS_TOTAL] [MMAT_NUM_ROWS * MMAT_TWO + 1] = { // V3 * A = (len, vector) // {4, 58, 61, 76, 27, 54, 55, 62, 23}, // V3 * B = (len, vector) // {4, 30, 8, 9, 4, 10, 8, 9, 12}, // V3 * C = (len, vector) // {4, 51, 59, 69, 41, 39, 53, 63, 33}, // V3 * D = (len, vector) // {4, 51, 32, 12, 4, 39, 44, 18, 12}, // V3 * E = (len, vector) // {4, 30, 20, 51, 61, 10, 12, 39, 53}, // V3 * F = (len, vector) // {4, 80, 102, 101, 72, 98, 114, 137, 100}, // V3 * G = (len, vector), two dummy values // {2, 63, 68, 0, 0, 51, 54, 0, 0}, // V3 * H: dummy values // {4, 0, 0, 0, 0, 0, 0, 0, 0}, // V3 * I = (len, vector) // {4,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -