365 Reputation

8 Badges

2 years, 36 days

MaplePrimes Activity

These are replies submitted by Anthrazit


The worksheet became a bit of a mess, so I've cut out everything that was unneccessary.

One of the problems of this case is, that Maple behaves differently if you run things directly, or step by step. It's also a bit unpredictable about what happens actually.

Imho this could very easily be a Java related problem with my graphics card as well.

Anyway, I think there are 2 problems as far as I can see.

  1. Maple does not extend the number of visible columns, if the matrix is extended. It apparently does however reduce the number of visible columns when the matrix is reduced (see part 2 in attachment).
  2. When redefining the number of visible columns manually, the new fields are not updated (all the time). On my PC this looks something like this.

The attachment shows an "original" state before redefining any visible columns.

Try running the commands step by step, or by executing the whole worksheet, and see if you get the same result as I do.

@Carl Love 

Ah, yes, I forgot that.

Here's the sourcecode, the problem is listed at the end of the program.

Please be advised that documentation is not finished yet, so you have to crack through the code for yourself.

But to explain the problem in a few sentences.

  • The program calculates forces (moments, shear, reactions) on a single span beam with different loads.
  • The first part calculates the forces for a specific load
  • You can have up to 10 different forces on a beam in a loadcase.
  • The last addition is to sum up all results in a new matrix for all given forces
  • The matrix with units is where the problem lies, as it doesn't give a result, but the sum in an expression
  • The unitfree matrix is working ok


The code runs nice when run one line after another, but it doesn't work when it is run in a subroutine, or by "execute the whole worksheet". 

Probably found a workaround.

  • generate a new, empty array
  • redefine variableName of the datatable to the new array
  • expand number of rows to the number of the old array
  • redefine variableName to the old array


Something in that code doesn't work, I get a "recursive assignment" error.

@Carl Love 

This is all incredibly useful, especially the use of angle-bracket operators. In my case, getting the result back as an array is actually better than as a list.

However it is not easy to find that information in Maple Help or somewhere else. So I guess this will not be my last question regarding expression sequences.


This was very helpful, just needed to go through almost every single character you had in your reply...

This is interesting, wouldn't have had a chance to find out by myself just reading the help files though.

Btw., I've also tried with the evalb function, but that gave the same error.

Need to get back to my very first question in this forum once again.

Could someone please explain the meaning of this information in the help files?

If <Maple>\lib\maple.ini exists, it is loaded first (where <Maple> is your Maple installation directory). With a network installation of Maple, the commands in this initialization file will be executed by all users on the network.

What exactly is a network installation?

In our case - where on the network should we place a common maple.ini file?

Just did a test with 2 users working on the same workbook or worksheet, and we must confirm that there is absolute no mechanism in place to prevent a complete chaos. The last one to write a file is the boss and overwrites everything done by someone else.

I consider that a very serious bug.

Maple should prevent opening its files in write modus when someone else already has a file open.

I'll file a report on that one.

Here's another big problem to this issue.

If conditions exit with error if one of the variables in the comparison becomes zero (and loses its unit).

@Carl Love


@Thomas Richard 

Thanks a lot!


I've got a reply from support, see attachment.


Thank you for contacting Maplesoft, and for your email.

We appreciate your feedback on this, and have heard similar reports from customers in the past.

This limitation of Maple is known and is documented in our help pages. Relating to temperature the following is stated in the page ?convert,temperature​:

Expressions with a unit are represented in Maple as a product of the expression with a function call, which can be obtained by calling the procedure "Unit". This means that Maple cannot represent the expression "0" with a unit: it would be represented as, for example, "0*degC", or internally, "0 . (Unit(degC))", but "0" multiplied by any function call immediately simplifies to "0". This particularly comes up with temperatures sometimes, when dealing with empirical temperatures rather than with temperature differences. This can be a reason to use Temperature objects instead of regular unit expressions.


I am sorry for any confusion this has caused. Let us know if you have any further questions or concerns.

Manager Customer Success

4 5 6 7 8 9 10 Page 6 of 10