JuliaOptimalTransport / OptimalTransport.jl

Optimal transport algorithms for Julia
https://juliaoptimaltransport.github.io/OptimalTransport.jl/dev
MIT License
93 stars 8 forks source link

Added a warning to the discretemeasure function #105

Closed davibarreira closed 2 years ago

davibarreira commented 3 years ago

I noted that there is an "inconsistency" with our discretemeasure function. If I pass musupp = [[0],[1],[2]], the function is dispatched to the multivariate case, instead of passing to the DiscreteNonParametric. I can see why that is, since the type required would be a vector, and not a vector of vectors.

I've been trying to fix this issue, but all solutions I came up with require that we check the length of the vector inside the vectors of vectors. And I'm guessing this would cause instabilities to the compiler (this is a supposition based on past code I wrote that @devmotion required changes).

So instead, I decided to add a warning inside the discretemeasure function, so that the user is informed that he should not pass a vector of 1D vectors, and should instead flatten into a single vector in case his support is 1D.

coveralls commented 3 years ago

Pull Request Test Coverage Report for Build 987000086


Changes Missing Coverage Covered Lines Changed/Added Lines %
src/utils.jl 1 2 50.0%
<!-- Total: 1 2 50.0% -->
Totals Coverage Status
Change from base Build 976321222: -0.2%
Covered Lines: 541
Relevant Lines: 563

💛 - Coveralls
davibarreira commented 3 years ago

This PR is very simple, I guess it can be merged before #92 .