Skip to content

Commit

Permalink
Improve random tangent generation on complex circle and rotation matr…
Browse files Browse the repository at this point in the history
…ices
  • Loading branch information
mateuszbaran committed Nov 17, 2023
1 parent 6e0aa84 commit 9871850
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 3 deletions.
6 changes: 6 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.9.8] - 2023-11-17

### Fixed

- Improved distribution of random vector generation for rotation matrices and complex circle.

## [0.9.7] - 2023-11-14

### Fixed
Expand Down
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "Manifolds"
uuid = "1cead3c2-87b3-11e9-0ccd-23c62b72b94e"
authors = ["Seth Axen <[email protected]>", "Mateusz Baran <[email protected]>", "Ronny Bergmann <[email protected]>", "Antoine Levitt <[email protected]>"]
version = "0.9.7"
version = "0.9.8"

[deps]
Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f"
Expand Down
2 changes: 1 addition & 1 deletion src/manifolds/Circle.jl
Original file line number Diff line number Diff line change
Expand Up @@ -465,7 +465,7 @@ function Random.rand(rng::AbstractRNG, M::Circle{ℂ}; vector_at=nothing, σ::Re
return sign(randn(rng, ComplexF64))
else
# written like that to properly handle `vector_at` being a number or a one-element array
return map(p -> project(M, p, σ * rand(rng, typeof(p))), vector_at)
return map(p -> project(M, p, σ * randn(rng, complex(typeof(p)))), vector_at)

Check warning on line 468 in src/manifolds/Circle.jl

View check run for this annotation

Codecov / codecov/patch

src/manifolds/Circle.jl#L468

Added line #L468 was not covered by tests
end
end

Expand Down
1 change: 0 additions & 1 deletion src/manifolds/Rotations.jl
Original file line number Diff line number Diff line change
Expand Up @@ -330,7 +330,6 @@ function Random.rand!(
(manifold_dimension(M) == 0) && return fill!(pX, 0)
A = σ .* randn(rng, representation_size(M))
pX .= triu(A, 1) .- transpose(triu(A, 1))
normalize!(pX)
end
return pX
end
Expand Down

0 comments on commit 9871850

Please sign in to comment.