Maple Flow Questions and Posts

These are Posts and Questions associated with the product, Maple Flow

restart;
_local(D, O);
with(Student:-MultivariateCalculus);
A := [0, 0, 0];
B := [a, 0, 0];
C := [a, b, 0];
D := [0, b, 0];
S := [0, 0, h];
O := [x, y, z];
lineSC := Line(S, C);
lineSD := Line(S, D);
H := Projection(A, lineSC);
K := Projection(A, lineSD);
OH := H - O;
OK := K - O;
OC := C - O;
M := Matrix([OH, OK, OC]);
O := eval(O, %);
R := simplify(Distance(O, H));
                               O

Student:-MultivariateCalculus:-LineApplyFunction([0,0,h],

  [Typesetting:-mtable(Typesetting:-mtr(Typesetting:-mtd(a, 

  rowalign = "", columnalign = "", groupalign = "", 

  rowspan = "1", columnspan = "1"), rowalign = "", 

  columnalign = "", groupalign = ""), Typesetting:-mtr(

  Typesetting:-mtd(b, rowalign = "", columnalign = "", 

  groupalign = "", rowspan = "1", columnspan = "1"), 

  rowalign = "", columnalign = "", groupalign = ""), 

  Typesetting:-mtr(Typesetting:-mtd(uminus0h, rowalign = "", 

  columnalign = "", groupalign = "", rowspan = "1", 

  columnspan = "1"), rowalign = "", columnalign = "", 

  groupalign = ""), foreground = "[0,0,0]", readonly = "false", 

  align = "axis", rowalign = "baseline", columnalign = "center", 

  groupalign = "{left}", alignmentscope = "true", 

  columnwidth = "auto", width = "auto", rowspacing = "1.0ex", 

  columnspacing = "0.8em", rowlines = "none", 

  columnlines = "none", frame = "none", 

  framespacing = "0.4em 0.5ex", equalrows = "false", 

  equalcolumns = "false", displaystyle = "false", side = "right", 

  minlabelspacing = "0.8em")],variables=[x,y,z],parameter=t,id=1)


Student:-MultivariateCalculus:-LineApplyFunction([0,0,h],

  [Typesetting:-mtable(Typesetting:-mtr(Typesetting:-mtd(0, 

  rowalign = "", columnalign = "", groupalign = "", 

  rowspan = "1", columnspan = "1"), rowalign = "", 

  columnalign = "", groupalign = ""), Typesetting:-mtr(

  Typesetting:-mtd(b, rowalign = "", columnalign = "", 

  groupalign = "", rowspan = "1", columnspan = "1"), 

  rowalign = "", columnalign = "", groupalign = ""), 

  Typesetting:-mtr(Typesetting:-mtd(uminus0h, rowalign = "", 

  columnalign = "", groupalign = "", rowspan = "1", 

  columnspan = "1"), rowalign = "", columnalign = "", 

  groupalign = ""), foreground = "[0,0,0]", readonly = "false", 

  align = "axis", rowalign = "baseline", columnalign = "center", 

  groupalign = "{left}", alignmentscope = "true", 

  columnwidth = "auto", width = "auto", rowspacing = "1.0ex", 

  columnspacing = "0.8em", rowlines = "none", 

  columnlines = "none", frame = "none", 

  framespacing = "0.4em 0.5ex", equalrows = "false", 

  equalcolumns = "false", displaystyle = "false", side = "right", 

  minlabelspacing = "0.8em")],variables=[x,y,z],parameter=t,id=2)


               /     2            2         / 2    2\ /
               |    h  a         h  b     h \a  + b / |
        HAssign|------------,------------,------------|
               | 2    2    2  2    2    2  2    2    2|
               \a  + b  + h  a  + b  + h  a  + b  + h \

                          /    2         2  /
                          |   h  b    h b   |
                   KAssign|0,-------,-------|
                          |   2    2  2    2|
                          \  b  + h  b  + h \

        /                2                       2               
        |               h  a                    h  b             
OHAssign|uminus0x + ------------,uminus0y + ------------,uminus0z
        |            2    2    2             2    2    2         
        \           a  + b  + h             a  + b  + h          

       / 2    2\ /
     h \a  + b / |
   + ------------|
      2    2    2|
     a  + b  + h \


            /                      2                    2  /
            |                     h  b               h b   |
    OKAssign|uminus0x,uminus0y + -------,uminus0z + -------|
            |                     2    2             2    2|
            \                    b  + h             b  + h \

          OCAssign(uminus0x + a,uminus0y + b,uminus0z)

M := Matrix(3, 3, {(1, 1) = Typesetting:-mrow(Typesetting:-mo("&\

  uminus0;"), Typesetting:-mi("x"), Typesetting:-mo("+"), 

   Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-msup(Typese\

  tting:-mi("h"), Typesetting:-mn("2")), Typesetting:-mo("&Invis\

  ibleTimes;"), Typesetting:-mi("a")), Typesetting:-mrow(Typeset\

  ting:-msup(Typesetting:-mi("a"), Typesetting:-mn("2")), 

   Typesetting:-mo("+"), Typesetting:-msup(Typesetting:-mi(\

  "b"), Typesetting:-mn("2")), Typesetting:-mo("+"), 

   Typesetting:-msup(Typesetting:-mi("h"), Typesetting:-mn("2"))\

  ))), (1, 2) = Typesetting:-mrow(Typesetting:-mo("&uminus0;"), 

   Typesetting:-mi("y"), Typesetting:-mo("+"), Typesetting:\

  -mfrac(Typesetting:-mrow(Typesetting:-msup(Typesetting:-mi("h"\

  ), Typesetting:-mn("2")), Typesetting:-mo("⁢"),\

   Typesetting:-mi("b")), Typesetting:-mrow(Typesetting:-msup(Ty\

  pesetting:-mi("a"), Typesetting:-mn("2")), Typesetting:-mo("&p\

  lus;"), Typesetting:-msup(Typesetting:-mi("b"), Typesetting:-m\

  n("2")), Typesetting:-mo("+"), Typesetting:-msup(Typesett\

  ing:-mi("h"), Typesetting:-mn("2"))))), (1, 3) = Typesetting:-\

  mrow(Typesetting:-mo("&uminus0;"), Typesetting:-mi("z"), 

   Typesetting:-mo("+"), Typesetting:-mfrac(Typesetting:-mr\

  ow(Typesetting:-mi("h"), Typesetting:-mo("⁢"), 

   Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-msup(Type\

  setting:-mi("a"), Typesetting:-mn("2")), Typesetting:-mo("&plu\

  s;"), Typesetting:-msup(Typesetting:-mi("b"), Typesetting:-mn(\

  "2"))))), Typesetting:-mrow(Typesetting:-msup(Typesetting:-mi(\

  "a"), Typesetting:-mn("2")), Typesetting:-mo("+"), 

   Typesetting:-msup(Typesetting:-mi("b"), Typesetting:-mn("2"))\

  , Typesetting:-mo("+"), Typesetting:-msup(Typesetting:-mi\

  ("h"), Typesetting:-mn("2"))))), (2, 1) = Typesetting:-mrow(Ty\

  pesetting:-mo("&uminus0;"), Typesetting:-mi("x")), (2, 2) = 

   Typesetting:-mrow(Typesetting:-mo("&uminus0;"), Typesetting:-\

  mi("y"), Typesetting:-mo("+"), Typesetting:-mfrac(Typeset\

  ting:-mrow(Typesetting:-msup(Typesetting:-mi("h"), 

   Typesetting:-mn("2")), Typesetting:-mo("⁢"), 

   Typesetting:-mi("b")), Typesetting:-mrow(Typesetting:-msup(Ty\

  pesetting:-mi("b"), Typesetting:-mn("2")), Typesetting:-mo("&p\

  lus;"), Typesetting:-msup(Typesetting:-mi("h"), Typesetting:-m\

  n("2"))))), (2, 3) = Typesetting:-mrow(Typesetting:-mo("&uminu\

  s0;"), Typesetting:-mi("z"), Typesetting:-mo("+"), 

   Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mi("h"), 

   Typesetting:-mo("⁢"), Typesetting:-msup(Typese\

  tting:-mi("b"), Typesetting:-mn("2"))), Typesetting:-mrow(Type\

  setting:-msup(Typesetting:-mi("b"), Typesetting:-mn("2")), 

   Typesetting:-mo("+"), Typesetting:-msup(Typesetting:-mi(\

  "h"), Typesetting:-mn("2"))))), (3, 1) = Typesetting:-mrow(Typ\

  esetting:-mo("&uminus0;"), Typesetting:-mi("x"), Typesetting:-\

  mo("+"), Typesetting:-mi("a")), (3, 2) = Typesetting:-mro\

  w(Typesetting:-mo("&uminus0;"), Typesetting:-mi("y"), 

   Typesetting:-mo("+"), Typesetting:-mi("b")), (3, 3) = 

   Typesetting:-mrow(Typesetting:-mo("&uminus0;"), Typesetting:-\

  mi("z"))})


Error, invalid input: eval received Matrix(3, 3, {(1, 1) = -x+h^2*a/(a^2+b^2+h^2), (1, 2) = -y+h^2*b/(a^2+b^2+h^2), (1, 3) = -z+h*(a^2+b^2)/(a^2+b^2+h^2), (2, 1) = -x, (2, 2) = -y+h^2*b/(b^2+h^2), (2, 3) = -z+h*b^2/(b^2+h^2), (3, 1) = -x+a, (3, 2) = -y+b, (3, 3) = -z}), which is not valid for its 2nd argument, eqns
       /     1       / 2  2      2        2  2    2  2    2  2
  R := |------------ \a  h  - 2 a  h z + a  x  + a  y  + a  z 
       | 2    2    2                                          
       \a  + b  + h                                           

            2      2  2      2        2  2    2  2    2  2
     - 2 a h  x + b  h  - 2 b  h z + b  x  + b  y  + b  z 

            2      2  2    2  2    2  2\\      
     - 2 b h  y + h  x  + h  y  + h  z /|^(1/2)
                                        |      
                                        /      
Why this error ? Thank you.

Maple Transactions frequently gets submissions that contain Maple code.  The papers (or videos, or Maple documents, or Jupyter notebooks) that we get are, if the author wants a refereed submission, sent to referees by a fairly usual academic process.  We look for well-written papers on topics of interest to the Maple community.

But we could use some help in reviewing code, for some of the submissions.  Usually the snippets are short, but sometimes the packages involved are more substantial.

If you would be interested in having your name on the list of potential code reviewers, please email me (or Paulina Chin, or Jürgen Gerhard) and we will gratefully add you.  You might not get called on immediately---it depends on what we have in the queue.

Thank you very much, in advance, for sharing your expertise.

Rob

In MapleFlow lowerscript L is not easily available.  It should be accessible with the CRTL+space after typing L.

Or in a list of common symbols (that pallete is not available in Maple Flow)

I had to to use maple to discover how to enter it.

`ℓ produced the correct result and then deleting the quote I could achieve the desired result.

Time is running out for users of Mathcad® 15 worksheets.
Engineers who need to retain their historical Mathcad project files are faced with a looming deadline to move the content to another file format.

The good news is that Mathcad 15 users can turn to Maple Flow as an effective replacement design calculation tool. Maple Flow is an advanced calculation tool with a free-form layout that makes it easy for engineers to brainstorm, develop, and document their project designs.

Maplesoft now has an efficient migration solution for moving critical Mathcad content to Maple Flow worksheets. This gives engineers a path to safeguard their critical reference designs, mathematical analyses, and engineering test results.

Why are engineers moving from Mathcad 15?
In 2025, some changes are expected that will severely restrict access to Mathcad 15 software. Here’s some background:

  • PTC announced that Mathcad 15 is end-of-sale effective December 2021, restricting license activations for new users.
  • Those existing Mathcad 15 customers who bought multiyear license extensions will see them expire by December 2025. After that, those with subscription licenses will not be able to open the app, and will not be able to access their historic design documents.
  • One of the significant issues engineers are encountering is that the new version of the software is not directly compatible with their historical Mathcad documents. PTC no longer has the right to distribute software versions with a third-party component, and has opted to use a different symbolic calculation engine in Mathcad Prime® that cannot read and edit the legacy files.
  • Another issue is that the Mathcad 15 software does not support Windows 11, so is typically run on Windows 10, a platform that Microsoft will not be supporting after October 2025.
  • Without a reliable way to keep accessing their project work in the Mathcad 15 format, engineers are looking for an alternative design worksheet platform.

As a result, engineers with large repositories of these design files now face converting all the worksheets to a new format or risk losing access to valuable design reports, and the possible regulatory consequences.

Maple Flow as a replacement for Mathcad 15
Engineers who want a long-term stable environment for their critical project work can change their design workflow to use Maple Flow for everyday calculation tasks.

The advanced math features and formatting options in Maple Flow make it a good fit for creating (and updating) design documentation and hand calculations, where engineers combine mathematical equations and variables that change regularly, and show the results in a report.

Maple Flow has a short learning curve, and the range of example templates in the Application Center and the customized training all help users quickly get up to speed with Maple Flow commands and formatting features.

How can I migrate Mathcad 15 content to Maple Flow?
Maplesoft has created a series of migration strategies for users of Mathcad software to transition to Maple Flow for ongoing calculation needs or to meet compliance requirements.

For engineers with a handful of worksheets, or where the calculations only span a few pages, it is relatively quick to reenter the calculations directly in Maple Flow. Some steps will need to be updated to the equivalent Maple Flow function, and there is also the opportunity to use features that are not available in Mathcad 15 (or its successor Mathcad Prime), such as advanced signal processing tools, thermodynamic data, and functionality for the analysis of linear systems.

For engineering firms with large repositories of legacy Mathcad 15 files, Maplesoft has developed a convenient path to migrate batches of content into Maple Flow. Maplesoft Engineering Services guide customers through the migration process and apply an efficient Migration Assistant to move the equations, variable definitions, units, layout, and other supported features from Mathcad 15 worksheets to Maple Flow. The content is mapped to the equivalent Maple Flow functionality, so that calculations can be run and developed further. This allows project worksheets and templates to be recreated with the least investment in time.

This image shows a calculation section before and after batch migration into Maple Flow format:

Ongoing support from Maplesoft

Maple Flow was first launched in 2021 and was developed to give engineers a single tool that can perform mathematical analysis and present results in a professional-looking format. There is built-in support for natural mathematical notation and tracking units, and the development roadmap continues to follow a user-focused approach, so new usability enhancements are regular and relevant.

The current release of Maple Flow gives engineers a path to avoid losing legacy calculations and designs previously stuck in Mathcad 15 worksheets and reuse the content for ongoing project work.

If you would like assistance from Maplesoft with migrating large repositories of design worksheets, please contact Maplesoft Sales.

[This is a contributed article by Alex Beilby, Technical Marketing Mgr, Maplesoft]

I just came across an issue when solving a simple thermodynamics problem. Steam enters a turbine at 140 psia and 1000 F and expands isentropically to 2psia. When I try to determine the exit temperature, the problem occurs. If I set the units for the problem to FPS, I get the answer in F. The problem is that the numerical value is wrong. The numerical value corresponds to degree R, not F. The numerical value given is 585 F, it should be 585 R.  If I set the problem to SI units, the answer is in K. The answer given is 325 K.  I can then convert it to degree F. This way I get the correct answer.

I got the proportional symbol to work once, typing "proportional" + CRTL + Space.  Went for wlak came back and could not get it to work at all.

Does it actually work or am I imagining things?

hello maple team,

i'd really like to know more about the differences among the products ticked above in their different license types

thank you very much in advance for your help dear friends and some who are brothers in Christ Jesus

much Love and regards to you all

julio

Axis properties and line width reverts to some set of defaults each time my work recalculates the plot. Is there a way I can keep the axis properties and line width from changing each time recalculation occurs?

I've used LinearSolve(A,b) to find three unknowns. How do I assign these values to three named variables?

I assigned the resulting vector to a new one

V:=LinearSolve(A,b)

and then, one by one, assigned the elements to variables

C1:= V[1}

C2:= V[2]

C3:= V[3]

But there perhaps is a more elegant way to do this?

A Flow and Maple user wonders why Maple Flow may evaluate to high-precision, floating point numbers compared to the same commands used in Maple that evaluate to simple, concise answers.

 

 

We suggest the same results can be achieved by toggling the numeric/symbolic evaluation mode toggle in the Flow math container(s)

 

 

primes-flow-evaluation-modes.flow

 

For more information, please see section 3.5 of the Maple Flow User Manual (Numeric and Symbolic Evaluation Modes). 

 

 

Is it possible in Maple Flow to reference to another worksheet as you can in Maple? If so, how would you do that? Thanks in advance for your help.

I've tried some simple uses of solve in MapleFlow without success. For example

solve(f=ma,a)

does not return

f/m

Does solve work in MapleFlow? Is there a problem with this Maple syntax in MapleFlow?

map won't work with left quotes

L:=[2,"foo",4]

I cannot get this to work:

Print all the non-string entries in a list:

L := [1, 2, "abc", "a", 7.0, infinity]:

for x in L do
    if type(x, 'string') then
        next;
    end if;
    print(x);
end do;

1 2 3 4 5 6 7 Page 2 of 7