acer

32490 Reputation

29 Badges

20 years, 7 days
Ontario, Canada

Social Networks and Content at Maplesoft.com

MaplePrimes Activity


These are replies submitted by acer

Or, for a black and smaller center-dot,

InertForm:-Display( `%.`(A,B), 'inert'=false ) = A.B;

@hpc As I mentioned, the source ffor EmbedAnim resides in the Startup Code Region of the worksheet that I attached.

So that's why it works in the worksheet that I attached. The Maple GUI runs the startup code (if allowed), and that defines EmbedAnim.

Your pasted image shows that EmbedAnim returned unevaluated, which means that in that session EmbedAnim is simply not defined. Your output is just an unevaluated function call to an undefined name.

If you want to run EmbedAnim in some other worksheet/document then you'd have to either 1) copy that source for EmbedAnim into your new worksheet (in its own Startup Code Region, say), or 2) Use LibraryTools to Create a .mla archive and Save it to that, and then put the .mla to some place specified by libname.

Since doing all that is a bother (or difficult for a new user) I mentioned that I could put it into a "package" that Maple 2017 could install straight from the Maple Cloud. Then it would always be directly available.

@_Maxim_ The Question is marked as "Maple 2015", and in that older version Explore was not as capable about evaluating references to assigned names.

This variant seems to work in Maple 2015.

rat_2015.mw

It seems like what you're really trying to do is write a procedure which implements multivariate Newton's method, which you could then export to C++.

You are not going to be able to do that using any call to fsolve. The CodeGeneration mechanisms will not translate that. You have to write the implementation of Newton's method explicitly.

Please stop posting duplicates of this question.

Your system may have swapped out most/all of the memory in use by Maple.

If so then the intermediate expressions may be so large that it's takes ages to swap back in enough to let Maple proceed.

It's often not worthwhile continuing in such cases, as not only is the computation speed much reduced but also the solution is likely too large to be manageable anyway.

ps. You posted several other questions about very large symbolic system solving. It's not clear to me that your last explanation of why you maintain this path (ie. that a purely numeric "on demand" mechanism would not be possible, and that you really intend additional manipulation/computation with what might be enormous symbolic linear system solutions) holds up. 

@Christopher2222 Well, you can programmatically insert/embed a Table with prepopulated Cells, and you can even replace that whole thing at once.

And you can build the Cells using entries from a `table`, say.

But IMO the programming would be far more manageable/feasible with the `table` as the mutable data-structure and the Table handling/updating as more of a high-end display mechanism.

One exception to this is the case where all possible content is known and fixed (in one big Table), and the programming controls only how limited and select portions of Cells are hidden/revealed on the fly.

Another exception would be where all the "content" of all the Cells is in their own respective PlotComponent/DataTable/MathContainer/TextArea embedded components.  That could be problematic if your "descriptions" are a mix of text and typeset math.

GUI Tables are not implemented in a way that they are fully programmatically accessible (like a spreadsheet, say). The only way to represent the "content" of a Table's Cells are as XML.

For example a Table's Cell might contain a Section, or a Document Block, or another Table, etc. 

If you were thinking that a Table Cell would just have a Maple expression like say, x+y , as its content then you'd be mistaken.

Now, there is an (obscure, likely undocumented) streamcall that allows you to access the XML of the whole current worksheet. But programming with that would be insane (IMO).

If you want to keep track of, and program with a Maple structure whose contents are expressions the a mutable data structure like a `table` or an `rtable` would be more appropriate.

@Christopher2222 Doing something like Tabulate for Maple 18 is possible. It's not difficult (if you know how), but it is time-consuming.

Why should someone spend the time on backporting to a release at least 3 years old, especially when there's always lots of worthwhile other things to do moving forwards?

@Christopher2222 Yes this has been possible for several releases now.

You can use the DocumentTools:-Tabulate command as an easy way to do simpler cases.

Or you can use DocumentTools:-Layout:-Table for more general functionality. For that you'd also use other commands from the DocumentTools subpackages `Layout` and `Components`.

The original question didn't make it very clear just what level of post-insertion interaction would be wanted (...if any).

Are you saying that you want to see something with `Diff` ( and 2-argument `eval` ) instead of `D` ?

Why would you post such long question and not upload a worksheet containing the full example?

@max125 There is a help page for topic solve/parametric . For your example I used that calling sequence (along with the real option) as a way to invoke SolveTools:-SemiAlgebraic.

I went for that because your problem was a polynomial system and your wanted only real results.

For other kinds of system the goal of obtaining only purely real solutions can get very difficult indeed, and obtaining all real solutions harder still. Sometimes it's not even possible to do in Maple.

@Markiyan Hirnyk 

solve( {x^2+y^2+z^2 = 3, x+y+z = 3}, real, parametric );

                        [[z = 1, y = 1, x = 1]]
Yes, Mma has very good exact solver functionality.

@NeillSmith Yes, one way is to put such definitions you like into a personal initialization file. That's relatively easy.

Another slightly more advenced way is to use LibraryTools:-Create  to make a .mla Library archive file, and then to use LibraryTools:-Save to store the procedures to that archive. (And you can store other stuff in it later, too. But keep a copy of the worksheet that actually builds the .mla archive and defines stuff and stores them. Handy for later revisions. You can just keep it in the same folder.)

Then you call augment libname in the initialization file, eg,

libname := "somenewfolder/foobar.mla", libname;

A tip: You should be able to create an alternate "launcher" for the Maple GUI, which passes the -s option and so starts without reading the initialization file. Sometimes useful for checking that weird behavior isn't due to such customizations. This can apply to either scenario: whether you put code definitions of libname adjustments into the init file.

@NeillSmith Please see the followup Comment to my Answer, which has further examples using equations and Equation Label references which do just what you now describe.

So do you generally want to first express the abstract computation (ie. like &* of deprecated linalg package) which you could only later force to compute explicitly (analogous to say hitting with evalm in the linalg sense)? An abstract implementation of the LinearAlgebra functionality is a long-standing general request, not only for the purpose of mathematical display but also for the serious task of expression manipulation/rearrangement.

First 272 273 274 275 276 277 278 Last Page 274 of 594