Thank you for this manuscript and concept. I wish I started working on proposal so late and I couldn't think on your idea carefully before deadline. Python is great language to overloading operator, but we need do it wisely from structural point of view. I just add short description in my proposal, and I will think about it in April an May.
BTW: I've found one typo in your document. On page 20 in the first line you have "A *general general* multivector linear differential". Szymon W dniu niedziela, 2 kwietnia 2017 14:06:07 UTC+2 użytkownik brombo napisał: > > This may be getting too far afield but consider a scalar differential > operator class to build the vector differential operator class. It is easy > to define an algebra for the scalar differential operator class. See > section 2.3.3 in attached document. > > On 04/02/2017 02:01 AM, szymon.m...@gmail.com <javascript:> wrote: > > > Thank you for your comment and suggestion.There are helpful. > Overloading operator is definitely great idea. It would be great to > implement this feature. > > Proposal looks good. Only one comment and one suggestion. - >> >> Comment: You need to be very careful when taking the square root of an >> expression. Check the degree to which assumptions propagate such as if u >> and v are declared real does sqrt() know that sqrt(u**2+v**2) is also real. >> >> Suggestion: Consider a vector differential operator class (del operator) >> and then overloading * and ^ so that if f is a scalar field and V a vector >> field you can write - >> >> gradient of scalar field = del * f >> divergence of vector field = del * V >> curl of vector field = del ^ V >> Laplacian of scalar field = del * (del * f) >> >> In the future vector differential operators could be more general than >> del and an algebra of differential operators could be defined. For example >> if L is a linear transformation (possibly a function of the coordinates) >> and overload * so that L(V) = L * V then possible differential operator >> could be - >> >> (del * L) * V >> >> or if M is another linear transformation >> >> (del * L + M) * V >> >> If defined correctly the Laplacian could be del * del. >> >> >> >> >> On 04/01/2017 05:08 PM, szymon.m...@gmail.com wrote: >> >> Hi, >> I just put my proposal on wiki page: >> https://github.com/sympy/sympy/wiki/GSoC-2017-Application-Szymon-Mieszczak:-Implementation-of-multiple-types-of-coordinate-systems-for-vectors >> >> If someone review it, I would be grateful. >> >> Szymon >> >> -- >> 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 post to this group, send email to sy...@googlegroups.com. >> Visit this group at https://groups.google.com/group/sympy. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/sympy/7a6bd606-015b-4946-b965-049f82bc3f10%40googlegroups.com >> >> <https://groups.google.com/d/msgid/sympy/7a6bd606-015b-4946-b965-049f82bc3f10%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> >> >> -- > 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 <javascript:>. > To post to this group, send email to sy...@googlegroups.com <javascript:>. > Visit this group at https://groups.google.com/group/sympy. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/27e63e49-b99a-45c2-b5d6-614a8ba8d60d%40googlegroups.com > > <https://groups.google.com/d/msgid/sympy/27e63e49-b99a-45c2-b5d6-614a8ba8d60d%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > > > -- 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 post to this group, send email to sympy@googlegroups.com. Visit this group at https://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/a718983b-a23a-470e-a67d-4d03f8bb35bc%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.