Grad, Div and Curl in a curvilinear coordinate system

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

#1 Pubblicato: 25/11/2018 02:27:56
Alvaro

Alvaro

1.139 apprezzamenti in 1.805 post.

Gruppo: User

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

Clipboard01.gif

coords.sm (86,5 KiB) scaricato 1424 volta(e).

Best regards.
Alvaro.
3 utenti hanno apprezzato questo post
Martin Kraska 25/11/2018 08:19:00, frapuano 25/11/2018 08:49:00, Andrey Ivashov 30/05/2019 13:31:00
#2 Pubblicato: 25/11/2018 08:20:58
Martin Kraska

Martin Kraska

1.361 apprezzamenti in 2.275 post.

Gruppo: Moderator

That's worth being implemented in a plugin.
Technische Mechanik mit SMath Studio: https://link.springer.com/book/10.1007/978-3-658-50592-9
#3 Pubblicato: 25/11/2018 14:59:29
Jean Giraud

Jean Giraud

983 apprezzamenti in 6.866 post.

Gruppo: User

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

Jacob(f,x,y,z).PNG
#4 Pubblicato: 26/11/2018 02:32:17
Alvaro

Alvaro

1.139 apprezzamenti in 1.805 post.

Gruppo: 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,26 KiB) scaricato 1357 volta(e).

Best regards.
Alvaro.
2 utenti hanno apprezzato questo post
frapuano 26/11/2018 13:49:00, sergio 26/11/2018 05:38:00
#5 Pubblicato: 26/11/2018 11:50:57
Jean Giraud

Jean Giraud

983 apprezzamenti in 6.866 post.

Gruppo: User

Thanks Alvaro, lot of work/skill in there !
#6 Pubblicato: 07/12/2018 14:55:24
Alvaro

Alvaro

1.139 apprezzamenti in 1.805 post.

Gruppo: User

Hi. Some few samples.

Integral in polars.sm (48,38 KiB) scaricato 1347 volta(e).

Best regards.
Alvaro.
1 utenti hanno apprezzato questo post
frapuano 07/12/2018 15:15:00
#7 Pubblicato: 07/12/2018 15:18:58
Jean Giraud

Jean Giraud

983 apprezzamenti in 6.866 post.

Gruppo: User

Thanks Alvaro: works great

Jean
#8 Pubblicato: 11/12/2018 11:56:12
Martin Kraska

Martin Kraska

1.361 apprezzamenti in 2.275 post.

Gruppo: 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,53 KiB) scaricato 1515 volta(e).
Technische Mechanik mit SMath Studio: https://link.springer.com/book/10.1007/978-3-658-50592-9
3 utenti hanno apprezzato questo post
frapuano 11/12/2018 13:30:00, Arie 11/12/2018 13:51:00, Alvaro 11/12/2018 17:45:00
#9 Pubblicato: 12/12/2018 19:11:43
Jean Giraud

Jean Giraud

983 apprezzamenti in 6.866 post.

Gruppo: 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,95 KiB) scaricato 1383 volta(e).
#10 Pubblicato: 13/12/2018 23:57:13
Alvaro

Alvaro

1.139 apprezzamenti in 1.805 post.

Gruppo: 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 Pubblicato: 28/04/2019 20:06:07
MAM64

MAM64

0 apprezzamenti in 4 post.

Gruppo: User

Wrote

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

Clipboard01.gif

coords.sm (86,5 KiB) scaricato 1424 volta(e).

Best regards.
Alvaro.



Thanks a lot!
  • Nuovi post
  • Nessun nuovo post