Download esys-Escript User's Guide: Solving Partial Differential Equations with
Transcript
inner(a0, a1) returns the inner product of a0 and a1. For instance in the case of a rank-2 Data object: X inner(a) = a0 [j, i] · a1 [j, i] (3.17) ij and for a rank-4 Data object: inner(a) = X a0 [i, j, k, l] · a1 [j, i, k, l] (3.18) ijkl matrix mult(a0, a1) returns the matrix product of a0 and a1. If a1 is a rank-1 Data object this is X matrix_mult(a) [i] = a0 · [i, k] a1 [k] (3.19) k and if a1 is a rank-2 Data object this is matrix_mult(a) [i, j] = X a0 · [i, k] a1 [k, j] (3.20) k transposed matrix mult(a0, a1) returns the matrix product of the transposed of a0 and a1. The function is equivalent to matrix_mult(transpose(a0),a1). If a1 is a rank-1 Data object this is X transposed_matrix_mult(a) [i] = a0 · [k, i] a1 [k] (3.21) k and if a1 is a rank-2 Data object this is X a0 · [k, i] a1 [k, j] (3.22) matrix transposed mult(a0, a1) returns the matrix product of a0 and the transposed of a1. The function is equivalent to matrix_mult(a0,transpose(a1)). If a1 is a rank-2 Data object this is X matrix_transposed_mult(a) [i, j] = a0 · [i, k] a1 [j, k] (3.23) transposed_matrix_mult(a) [i, j] = k k outer(a0, a1) returns the outer product of a0 and a1. For instance, if both, a0 and a1 is a rank-1 Data object then outer(a) [i, j] = a0 [i] · a1 [j] (3.24) and if a0 is a rank-1 Data object and a1 is a rank-3 Data object: outer(a) [i, j, k] = a0 [i] · a1 [j, k] tensor mult(a0, a1) returns the tensor product of a0 and a1. If a1 is a rank-2 Data object this is X tensor_mult(a) [i, j] = a0 [i, j, k, l] · a1 [k, l] (3.25) (3.26) kl Chapter 3. The esys.escript Module 59