Grad, Div and Curl in a curvilinear coordinate system

Grad, Div and Curl in a curvilinear coordinate system - Messages

#1 Posted: 11/25/2018 2:27:56 AM
Alvaro Diaz Falconi

Alvaro Diaz Falconi

992 likes in 1675 posts.

Group: User

Hi. Example about how to get vectorial differential operators in a curvilinear coordinate system.

Clipboard01.gif

coords.sm (86 KiB) downloaded 154 time(s).

Best regards.
Alvaro.
3 users liked this post
Martin Kraska 11/25/2018 8:19:00 AM, frapuano 11/25/2018 8:49:00 AM, Andrey Ivashov 5/30/2019 1:31:00 PM
#2 Posted: 11/25/2018 8:20:58 AM
Martin Kraska

Martin Kraska

1222 likes in 2150 posts.

Group: Moderator

That's worth being implemented in a plugin.
Martin Kraska Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
#3 Posted: 11/25/2018 2:59:29 PM
Jean Giraud

Jean Giraud

983 likes in 6866 posts.

Group: User

My preference goes for direct algo style(s)... Just one demo.

Jacob(f,x,y,z).PNG
#4 Posted: 11/26/2018 2:32:17 AM
Alvaro Diaz Falconi

Alvaro Diaz Falconi

992 likes in 1675 posts.

Group: User

Wrote

That's worth being implemented in a plugin.



Hi Martin. I prefer the 'library style' instead the 'plugin style' for developing apps for SMath. Reasons have a lot. For instance, is the maple and matlab's historical grow path. Also I can point following benefits:

- improving SMath itself, discovering better ways for doing internals, or for requesting features.
- increase of bugs discovering
- source code in high level language (SMath lang), so, more easy for debugging
- more users can collab developing or improving the libraries

The biggest disadvantage: speed. But maybe this can help Andrey to find more robust algorithms.

As an application of these comments, I have this suggestions

- Add "nabla x" and "nabla dot" like grad and lapl to custom gliphs
- Same thing, but for several variables and vectorial integrals (path, flux, etc.)
- Improve at function for handling v=P where v and P are vectors (see green comments in the attached)
- Make custom gliphs and include plugins internal
- If include can't find in the sm file in the same folder than the current file, nor the specify path, search it in some "library folder" under apps default path.
- The set of 'libraries' could be a plugin itself, and have some kind of actualization, like the others plugins, examples or handbooks.
- In the attached, the 'library' style for the differentials applications, and help for get a large collection of coordinates systems, if in case that same one want to write the 'library'

coords v2.sm (110 KiB) downloaded 96 time(s).

Best regards.
Alvaro.
2 users liked this post
frapuano 11/26/2018 1:49:00 PM, sergio 11/26/2018 5:38:00 AM
#5 Posted: 11/26/2018 11:50:57 AM
Jean Giraud

Jean Giraud

983 likes in 6866 posts.

Group: User

Thanks Alvaro, lot of work/skill in there !
#6 Posted: 12/7/2018 2:55:24 PM
Alvaro Diaz Falconi

Alvaro Diaz Falconi

992 likes in 1675 posts.

Group: User

Hi. Some few samples.

Integral in polars.sm (48 KiB) downloaded 111 time(s).

Best regards.
Alvaro.
1 users liked this post
frapuano 12/7/2018 3:15:00 PM
#7 Posted: 12/7/2018 3:18:58 PM
Jean Giraud

Jean Giraud

983 likes in 6866 posts.

Group: User

Thanks Alvaro: works great

Jean
#8 Posted: 12/11/2018 11:56:12 AM
Martin Kraska

Martin Kraska

1222 likes in 2150 posts.

Group: Moderator

Wrote


Hi Martin. I prefer the 'library style' instead the 'plugin style' for developing apps for SMath. Reasons have a lot. For instance, is the maple and matlab's historical grow path. Also I can point following benefits:

- improving SMath itself, discovering better ways for doing internals, or for requesting features.
- increase of bugs discovering
- source code in high level language (SMath lang), so, more easy for debugging
- more users can collab developing or improving the libraries

The biggest disadvantage: speed. But maybe this can help Andrey to find more robust algorithms.

Best regards.
Alvaro.



Hi Alvaro,

I totally agree with your points. There have been feature requests in the past to enable "source code plugins", which could benefit from the same distribution and versioning mechanism but be provided as sm files.

In fact, there is an alternative mechanism: snippets. They allow you to distribute pieces of code via extension manager and to easily insert them into a given sheet as a collapsed area region. The drawback (or benefit) is that further updates of the snippet won't affect the sheet once the snippet has been inserted. If you want to apply a bug fix for a snippet, you have to erase and re-insert.

I use the draw snippet a lot, it defines help texts for the available Maxima draw objects, which essentially mitigates any need for lookup in the docs (once you are familiar with the concept).

Some functions, just like symbolic calculus, would be tough to implement in native SMath. Also there is a lot of numeric libraries out there, which would perhaps be interesting to re-invent for didactic reasons but otherwise better just being interfaced to SMath.

Thus it might be worth publishing a library of co-ordinate system descriptions and helper functions along with documentation as a snippet.

Best regards, Martin

Polar integration in symbolic version:

2018-12-11 15_45_11-SMath Studio - [Integral%20in%20polars_Kr.sm_].png
Integral%20in%20polars_Kr.sm (57 KiB) downloaded 80 time(s).
Martin Kraska Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
3 users liked this post
frapuano 12/11/2018 1:30:00 PM, Arie 12/11/2018 1:51:00 PM, Alvaro Diaz Falconi 12/11/2018 5:45:00 PM
#9 Posted: 12/12/2018 7:11:43 PM
Jean Giraud

Jean Giraud

983 likes in 6866 posts.

Group: User

Wrote

Some few samples.



Thanks Alvaro: gorgeous, was missing up to your work. perfect SS 6179.
Doctored for myself, because some freak coding from the original transmission.

Cheers ... Jean

Integral 00000 2D polar Alvaro.sm (46 KiB) downloaded 79 time(s).
#10 Posted: 12/13/2018 11:57:13 PM
Alvaro Diaz Falconi

Alvaro Diaz Falconi

992 likes in 1675 posts.

Group: User

Wrote


In fact, there is an alternative mechanism: snippets.



Hi Martin. Yes, snippets are great, and are the close way to a package or library distribution. But have two problems, in my view point: first, aren't collaborative, this is, are the one man work. And second, can't be updated but by deleting the old version in the sm file, and inserting the new one. If the uni' include plugin, after search in the file path, try to search in some special folder, like the folder for plugins, then snippets could be inserted by reference and updated in a similar way like plugins.

Wrote


... there is a lot of numeric libraries out there, which would perhaps be interesting to re-invent for didactic reasons but otherwise better just being interfaced to SMath.



Yes. I'm some maniac about rewrite c libraries into high level others, like SMath. Also, those libraries are well tested and proved for a lot of years. An intermediate solution could be a SMath function installing dll libraries, like one can do in VBA for Excel, with Declare Function lib ... etc. . And the solution for write some efficient code in SMath for numerical procedures could be the equivalent of maple's compile directive (isn't in Maple V, it's more new).

Best regards.
Alvaro.
#11 Posted: 4/28/2019 8:06:07 PM
MAM64

MAM64

0 likes in 4 posts.

Group: User

Wrote

Hi. Example about how to get vectorial differential operators in a curvilinear coordinate system.

Clipboard01.gif

coords.sm (86 KiB) downloaded 154 time(s).

Best regards.
Alvaro.



Thanks a lot!
  • New Posts New Posts
  • No New Posts No New Posts