You can check Add full option to smith_normal_form by isuruf · Pull Request 
#17451 · sympy/sympy (github.com) 
<https://github.com/sympy/sympy/pull/17451>. 
Although the PR is based on outdated branch, you may have easier time 
following the algorithms based on that

On Friday, August 16, 2024 at 4:44:45 PM UTC+2 Oscar wrote:

> It would be good to have this in SymPy but unfortunately it is not
> implemented yet.
>
> It is also not available in python-flint or Flint either.
>
> On Fri, 16 Aug 2024 at 15:38, Chris Smith <smi...@gmail.com> wrote:
> >
> > As far as I can tell, these matrices are not computed implicitly. You 
> would have to copy the appropriate actions onto an augmented identity 
> matrix to see what has happened (
> https://www.youtube.com/watch?v=UhyzLfiO4Ow).
> >
> > /c
> >
> > On Thursday, August 15, 2024 at 10:51:31 AM UTC-5 bulk...@gmail.com 
> wrote:
> >>
> >> Hi,
> >>
> >> I need to perform a Smith decomposition on (a priori not square) 
> matrices to find a certain change of basis related to the Smith invariants.
> >>
> >> The Smith normal form is already implemented in SymPy in 
> `sympy.matrices.normalforms`, but it returns only the Smith normal form, 
> not its decomposition itself.
> >>
> >> In general, the Smith decomposition of a matrix A is defined in terms 
> of three matrices V, D, W so that
> >>
> >> A = V * D * W
> >>
> >> where V,W are both square, invertible, and integer-valued matrices. Is 
> there any way of obtaining those matrices without reimplementing the 
> algorithm myself? I assume that these matrices are computed at least 
> implicitely, but I could not find a way of returning them.
> >>
> >> thanks!
> >
> > --
> > You received this message because you are subscribed to the Google 
> Groups "sympy" group.
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to sympy+un...@googlegroups.com.
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sympy/7d884ae9-5b11-4e9e-a4ef-1e4f918410a4n%40googlegroups.com
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/e5c6cba8-6ad8-45d5-8e18-30c870ffd865n%40googlegroups.com.

Reply via email to