Skip to content

Instantly share code, notes, and snippets.

@ceptreee
Created April 1, 2018 07:00
Show Gist options
  • Save ceptreee/de3a8cc755a1087a8c2c875839ac4945 to your computer and use it in GitHub Desktop.
Save ceptreee/de3a8cc755a1087a8c2c875839ac4945 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2-element Array{Int64,1}:\n",
" 1\n",
" 2"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Vec = [1,2]"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1×2 RowVector{Int64,Array{Int64,1}}:\n",
" 1 2"
]
},
"execution_count": 38,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RowVec = [1,2]'"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2×1 Array{Int64,2}:\n",
" 1\n",
" 2"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ColMat = [1 2]'"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1×2 Array{Int64,2}:\n",
" 1 2"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RowMat = [1 2]"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2×2 Array{Int64,2}:\n",
" 1 2\n",
" 3 4"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Mat = [1 2\n",
" 3 4]"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"Cannot multiply two vectors\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"Cannot multiply two vectors\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,1}, ::Array{Int64,1}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/rowvector.jl:184\u001b[22m\u001b[22m",
" [2] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"Vec * Vec"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2×2 Array{Int64,2}:\n",
" 1 2\n",
" 2 4"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Vec * RowVec"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), matrix B has dimensions (2,1)\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), matrix B has dimensions (2,1)\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1m_generic_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:492\u001b[22m\u001b[22m",
" [2] \u001b[1mgeneric_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:483\u001b[22m\u001b[22m",
" [3] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,1}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:87\u001b[22m\u001b[22m",
" [4] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"Vec * ColMat"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2×2 Array{Int64,2}:\n",
" 1 2\n",
" 2 4"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Vec * RowMat"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), matrix B has dimensions (2,2)\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), matrix B has dimensions (2,2)\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1m_generic_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:492\u001b[22m\u001b[22m",
" [2] \u001b[1mgeneric_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:483\u001b[22m\u001b[22m",
" [3] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,1}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:87\u001b[22m\u001b[22m",
" [4] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"Vec * Mat"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"5"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RowVec * Vec"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"Cannot multiply two transposed vectors\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"Cannot multiply two transposed vectors\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::RowVector{Int64,Array{Int64,1}}, ::RowVector{Int64,Array{Int64,1}}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/rowvector.jl:182\u001b[22m\u001b[22m",
" [2] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"RowVec * RowVec"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1×1 RowVector{Int64,Array{Int64,1}}:\n",
" 5"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RowVec * ColMat"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), vector B has length 2\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), vector B has length 2\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1mgeneric_matvecmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,1}, ::Char, ::Array{Int64,2}, ::Array{Int64,1}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:407\u001b[22m\u001b[22m",
" [2] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::RowVector{Int64,Array{Int64,1}}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/rowvector.jl:181\u001b[22m\u001b[22m",
" [3] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"RowVec * RowMat"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1×2 RowVector{Int64,Array{Int64,1}}:\n",
" 7 10"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RowVec * Mat"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), vector B has length 2\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), vector B has length 2\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1mgeneric_matvecmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,1}, ::Char, ::Array{Int64,2}, ::Array{Int64,1}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:407\u001b[22m\u001b[22m",
" [2] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Array{Int64,1}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:79\u001b[22m\u001b[22m",
" [3] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"ColMat * Vec"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2×2 Array{Int64,2}:\n",
" 1 2\n",
" 2 4"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ColMat * RowVec"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2×2 Array{Int64,2}:\n",
" 1 2\n",
" 2 4"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ColMat * RowMat"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), matrix B has dimensions (2,2)\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,1), matrix B has dimensions (2,2)\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1m_generic_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:492\u001b[22m\u001b[22m",
" [2] \u001b[1mgeneric_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:483\u001b[22m\u001b[22m",
" [3] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:146\u001b[22m\u001b[22m",
" [4] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"ColMat * Mat"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1-element Array{Int64,1}:\n",
" 5"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RowMat * Vec"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"matrix A has dimensions (1,2), matrix B has dimensions (1,2)\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"matrix A has dimensions (1,2), matrix B has dimensions (1,2)\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1m_generic_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::RowVector{Int64,Array{Int64,1}}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:492\u001b[22m\u001b[22m",
" [2] \u001b[1mgeneric_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::RowVector{Int64,Array{Int64,1}}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:483\u001b[22m\u001b[22m",
" [3] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::RowVector{Int64,Array{Int64,1}}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:146\u001b[22m\u001b[22m",
" [4] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"RowMat * RowVec"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1×1 Array{Int64,2}:\n",
" 5"
]
},
"execution_count": 31,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RowMat * ColMat"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1×2 Array{Int64,2}:\n",
" 7 10"
]
},
"execution_count": 32,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RowMat * Mat"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2-element Array{Int64,1}:\n",
" 5\n",
" 11"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Mat * Vec"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,2), matrix B has dimensions (1,2)\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,2), matrix B has dimensions (1,2)\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1m_generic_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::RowVector{Int64,Array{Int64,1}}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:492\u001b[22m\u001b[22m",
" [2] \u001b[1mgeneric_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::RowVector{Int64,Array{Int64,1}}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:483\u001b[22m\u001b[22m",
" [3] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::RowVector{Int64,Array{Int64,1}}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:146\u001b[22m\u001b[22m",
" [4] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"Mat * RowVec"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2×1 Array{Int64,2}:\n",
" 5\n",
" 11"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Mat * ColMat"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {},
"outputs": [
{
"ename": "LoadError",
"evalue": "\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,2), matrix B has dimensions (1,2)\")\u001b[39m",
"output_type": "error",
"traceback": [
"\u001b[91mDimensionMismatch(\"matrix A has dimensions (2,2), matrix B has dimensions (1,2)\")\u001b[39m",
"",
"Stacktrace:",
" [1] \u001b[1m_generic_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:492\u001b[22m\u001b[22m",
" [2] \u001b[1mgeneric_matmatmul!\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Char, ::Char, ::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:483\u001b[22m\u001b[22m",
" [3] \u001b[1m*\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::Array{Int64,2}, ::Array{Int64,2}\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./linalg/matmul.jl:146\u001b[22m\u001b[22m",
" [4] \u001b[1minclude_string\u001b[22m\u001b[22m\u001b[1m(\u001b[22m\u001b[22m::String, ::String\u001b[1m)\u001b[22m\u001b[22m at \u001b[1m./loading.jl:522\u001b[22m\u001b[22m"
]
}
],
"source": [
"Mat * RowMat"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2×2 Array{Int64,2}:\n",
" 7 10\n",
" 15 22"
]
},
"execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Mat * Mat"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Julia 0.6.2",
"language": "julia",
"name": "julia-0.6"
},
"language_info": {
"file_extension": ".jl",
"mimetype": "application/julia",
"name": "julia",
"version": "0.6.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment