-
Notifications
You must be signed in to change notification settings - Fork 423
/
Copy pathmatrix.md
53 lines (40 loc) · 1.36 KB
/
matrix.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# [Matrix-variate Distributions](@id matrix-variates)
*Matrix-variate distributions* are the distributions whose variate forms are `Matrixvariate` (*i.e* each sample is a matrix). Abstract types for matrix-variate distributions:
```julia
const MatrixDistribution{S<:ValueSupport} = Distribution{Matrixvariate,S}
const DiscreteMatrixDistribution = Distribution{Matrixvariate, Discrete}
const ContinuousMatrixDistribution = Distribution{Matrixvariate, Continuous}
```
More advanced functionalities related to random matrices can be found in the
[RandomMatrices.jl](https://github.com/JuliaMath/RandomMatrices.jl) package.
## Common Interface
All distributions implement the same set of methods:
```@docs
size(::MatrixDistribution)
length(::MatrixDistribution)
Distributions.rank(::MatrixDistribution)
mean(::MatrixDistribution)
var(::MatrixDistribution)
cov(::MatrixDistribution)
pdf(d::MatrixDistribution, x::AbstractMatrix{<:Real})
logpdf(d::MatrixDistribution, x::AbstractMatrix{<:Real})
Distributions._rand!(::AbstractRNG, ::MatrixDistribution, A::AbstractMatrix)
```
## Distributions
```@docs
MatrixNormal
Wishart
InverseWishart
MatrixTDist
MatrixBeta
MatrixFDist
LKJ
```
## Internal Methods (for creating your own matrix-variate distributions)
```@docs
Distributions._logpdf(d::MatrixDistribution, x::AbstractMatrix{<:Real})
```
## Index
```@index
Pages = ["matrix.md"]
```