()
Use SymPy to generate the 3D products for diffusion_stencil_3d.
Use SymPy to generate the 3D products for diffusion_stencil_3d.
Use SymPy to generate the 3D products for diffusion_stencil_3d .
def _symbolic_product_helper():
    """Use SymPy to generate the 3D products for diffusion_stencil_3d."""
    # pylint: disable=import-error,import-outside-toplevel
    from sympy import symbols, Matrix

    D11, D12, D13, D21, D22, D23, D31, D32, D33 =\
        symbols('D11, D12, D13, D21, D22, D23, D31, D32, D33')

    D = Matrix([[D11, D12, D13], [D21, D22, D23], [D31, D32, D33]])
    grad = Matrix([['dx', 'dy', 'dz']]).T
    div = grad.T

    a = div * D * grad

    print(a[0])
def _symbolic_product_helper ( ) : # pylint: disable=import-error,import-outside-toplevel from sympy import symbols , Matrix D11 , D12 , D13 , D21 , D22 , D23 , D31 , D32 , D33 = symbols ( 'D11, D12, D13, D21, D22, D23, D31, D32, D33' ) D = Matrix ( [ [ D11 , D12 , D13 ] , [ D21 , D22 , D23 ] , [ D31 , D32 , D33 ] ] ) grad = Matrix ( [ [ 'dx' , 'dy' , 'dz' ] ] ) . T div = grad . T a = div * D * grad print ( a [ 0 ] )