<div dir="ltr">I have personally run into the need for such transformations in two separate domains (3D visualization, neuroscience / electrophysiology) and I know it's used in multiple other places, too. So I think it would be sufficiently general. I'd look forward to having it in SciPy!<div><br></div><div>I'd be happy to be a secondary mentor on this if you (or someone else) wants to be primary.</div><div><br></div><div>Best,<div>Eric</div><div><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 19, 2018 at 10:11 AM, Nikolay Mayorov <span dir="ltr"><<a href="mailto:nikolay.mayorov@zoho.com" target="_blank">nikolay.mayorov@zoho.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u><div><div style="font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif"><div id="m_1873504344155388281message"><div>Hi!<br><br>I have this idea, which I'm well familiar with. The module would be called like scipy.spatial.rotation and be devoted to the rotation formalism in 3 dimensions. <br><br>The main objects are Euler angles (and their variations), direction cosine matrices, quaternions and rotation vectors. We can go with an abstraction class Rotation (using DCMs or Qs internally), but we should be able to create that from any representation and see it in any representation. In spirit of scipy/numpy we use vectorized/bulk approaches (i.e. many rotations in single Rotation class).<br><br>Rotation should support 2 operations: compose 2 consecutive rotations and rotate/project a 3d vector.  Of course all procedures must be 100% robust and there are some fine points, especially in conversions between representations.<div id="m_1873504344155388281message"></div>Also we can add some algorithms, like: quaternion interpolation (SLERP), least-squares vector matching by a rotation (Whabba's problem), more advanced and less known algotithms for rotation interpolation, and I will try to come up with something more.<div><br></div><div>Overall it seems reasonably straightforward , but with enough challenges in design and implementation<br></div><div><br></div><div>As currently described, it might be not enough volume for the GSoC, but we can develop it farther. </div><div><br></div><div>Also I'm not sure if its applicability is broad enough to include it into scipy. I believe similar functionality is available in Aerospace toolbox in Matlab. I want to hear some opinions on that.<br><div><br></div><div>Nikolay</div><div><br></div><div><div id="m_1873504344155388281content"><br> ---- On Wed, 10 Jan 2018 17:02:33 +0500 <b> <a href="mailto:jomsdev@gmail.com" target="_blank">jomsdev@gmail.com</a> </b> wrote ----<span class=""><br><br><blockquote style="border-left:1px solid rgb(204,204,204);padding-left:6px;margin-left:5px"><div><div dir="ltr"><div><div><div><div>Hi all,<br><br></div>Last year I started implementing some methods for Randomized Numerical Linear Algebra (RNLA) in scipy. <br></div>By now it is only the CountMin Sketch (clarkson_woodruff_<wbr>transformation) for reducing the dimensionality of a vector space to an embedded space. <br></div></div><div><br></div><div>I think that it would be interesting to add to scipy other methods for subspace embedding (like the Johnson-Lindenstrauss) and build some algorithms on top of it for things like least squeres or low rank approximation.</div><div><br></div><div>Would some other people be interesting in this?<br></div><div><br></div><div><br></div><div>PS: I have a project called <a href="https://github.com/jomsdev/randNLA" target="_blank">RandNLA</a> where I implemented some of the methods of RNLA. The idea is to implement only the most important methods of RNLA in scipy and have this other library for experimenting with new methods and APIs. That will let us not overloading scipy with features if people are not interested in them and focus on the ones that really brings value to the community.</div><div><br></div><div>Thanks,</div><div><br></div><div>Jordi.<br></div></div><div><br><div>On 10 January 2018 at 10:42, Ralf Gommers <span><<a href="mailto:ralf.gommers@gmail.com" target="_blank">ralf.gommers@gmail.com</a>></span> wrote:<br><blockquote style="margin:0 0 0 0.8ex;border-left:1px rgb(204,204,204) solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div>Hi all,<br><br></div>The GSoC schedule is a bit earlier than normal this year. The PSF is asking for ideas pages to be up and in decent shape by Jan 19th. So we'll need to come up with some content quick if we want to participate.<br><br></div>Who is interested in mentoring this year?<br><br></div>I'm happy to do the admin again, but probably won't have time to mentor.<br><br></div>Cheers,<br></div>Ralf<br><br></div> <br>______________________________<wbr>_________________<br> SciPy-Dev mailing list<br> <a href="mailto:SciPy-Dev@python.org" target="_blank">SciPy-Dev@python.org</a><br> <a href="https://mail.python.org/mailman/listinfo/scipy-dev" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/scipy-dev</a><br> <br></blockquote></div><br></div> ______________________________<wbr>_________________ <br>SciPy-Dev mailing list <br><a href="mailto:SciPy-Dev@python.org" target="_blank">SciPy-Dev@python.org</a> <br><a href="https://mail.python.org/mailman/listinfo/scipy-dev" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/scipy-dev</a> <br></div></blockquote></span></div></div></div></div></div><br id="m_1873504344155388281br3"><div id="m_1873504344155388281signature"></div><div id="m_1873504344155388281content"></div></div><br></div><br>______________________________<wbr>_________________<br>
SciPy-Dev mailing list<br>
<a href="mailto:SciPy-Dev@python.org">SciPy-Dev@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/scipy-dev" rel="noreferrer" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/scipy-dev</a><br>
<br></blockquote></div><br></div>