cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Partial Derivative with Matrix

SOLVED
Highlighted
Level 6

Partial Derivative with Matrix

I tend to do a lot of partial differentiation in my analyses and how I currently do it is to hard code each partial to their own variable. This tends to clutter my analyses, since I deal with rather large multi-variable equations. I tried being slick today by defining a 1xn matrix (where n is the total number of variables and each element contains the variable names that I need to do partial derivatives on) and performing the partial derivatives on that matrix and vectorizing it. Mathcad doesn't flag an error, but what it's calculating isn't correct. I believe it's trying to do the differentiation on the value of the variable rather than seeing it as a variable by itself, because it always calculates the result as 0. Does anyone know how I can get mathcad to see these as variables or know I better way of going about this? I've attached an example of what I am attempting if it isn't clear in my writing. 

1 ACCEPTED SOLUTION

Accepted Solutions

Re: Partial Derivative with Matrix

I guess this is an example of what you're trying to achieve:

LM_20190401_PartialDiffs.png

This was done in Mathcad 11. As far as I can tell, this same is NOT possible in any other version of Mathcad above or below 11, nor in any version of Prime.

 

Luc

10 REPLIES 10

Re: Partial Derivative with Matrix

I see a few problems, solving of which - may - help:

1.

You have (x3)^3 in your matrix X, guess that's not what you intended...

2.

X is a matrix (1 row, 4 columns), Vectorization may only work with a vector (4 rows, 1 column). It just might help to transpose X...

3.

Try symbolic evaluation, instead of numeric, and make sure x1 through x4 are not defined when differentiating. Don't define them in the first place, and/or make Partial a function of x1 through x4.

 

This is done in Mathcad 11:

LM_20190401_PartialDiff.png

The last two items:

f is differentiated to X (which as a symbol, is NOT a parameter of f), so the partial derivative is 0.

 

Success!

Luc

 

 

Re: Partial Derivative with Matrix

1. Correct, that was just a typo

2. I use vectorization on 1xn matrices all the time, it should just go through element by element. Either way, I have tried just transposing it and it still returns 0.

3. I am not following how I'd be able to do that? How would I set up a symbolic expression without defining my variables when I intend to use a matrix for those variables? Also, setting Partials as a function of the variables just flags an error. 

Re: Partial Derivative with Matrix

Why would that flag an error (unless you're using an equals, that is, a numeric evaluation, at the end of the definition)?

My opinion: While it is supported, I think it is bad practice to append a numerical evaluation to a definition. We've had more users complaining about errors due to this. It results in errors because the numeric evaluator cannot handle undefined variables. (Important note: the symbolic processor and evaluator has no problems with undefined variables) So: Define, then do the numeric evaluation separately.

 

Success!
Luc

 

Re: Partial Derivative with Matrix

I guess this is an example of what you're trying to achieve:

LM_20190401_PartialDiffs.png

This was done in Mathcad 11. As far as I can tell, this same is NOT possible in any other version of Mathcad above or below 11, nor in any version of Prime.

 

Luc

Re: Partial Derivative with Matrix


@MrichCD wrote:

I tend to do a lot of partial differentiation in my analyses and how I currently do it is to hard code each partial to their own variable. This tends to clutter my analyses, since I deal with rather large multi-variable equations. I tried being slick today by defining a 1xn matrix (where n is the total number of variables and each element contains the variable names that I need to do partial derivatives on) and performing the partial derivatives on that matrix and vectorizing it. Mathcad doesn't flag an error, but what it's calculating isn't correct. I believe it's trying to do the differentiation on the value of the variable rather than seeing it as a variable by itself, because it always calculates the result as 0. Does anyone know how I can get mathcad to see these as variables or know I better way of going about this? I've attached an example of what I am attempting if it isn't clear in my writing. 


I wanted to try out your file and see if I could help out but I'm using MathCAD 15 and I cannot open mcdx files.  I think that it would be best for you to write some of your own vectorization code.  I did so for the modular arithmetic operator because the MathCAD programming team at PTC saw fit to ruin the vectorize operator in such a way that MathCAD docs created previously (in MathCAD 14 or earlier) now are erroneous when run using MathCAD 15.  I will give it some thought, but it would help if you can export your file to a MathCAD 15 doc and upload that as well.  The programming I'm, thinking of should not require that we use the same versions.  Another way you can help me help you is to upload a screenshot or a PDF printout of your MathCAD Prime doc.  

Re: Partial Derivative with Matrix

There is NO possibility to save a (.mcdx) Prime file in any (real) Mathcad (.mcd or .xmcd) format.

Actually there is also no means to save a Prime 5 file into Prime 4 (or less) format.

But you can install the free Prime Express (version 5 if you have a 64 bit OS,  or any older version if you have a 32-bit OS) and open a Prime file on this forum. As a first time user/evaluator you can get the first 30 days of full functionality, after which the really cool features are gone.

 

Success!
Luc

Re: Partial Derivative with Matrix


@LucMeekes wrote:

There is NO possibility to save a (.mcdx) Prime file in any (real) Mathcad (.mcd or .xmcd) format.

Actually there is no means to save a Prime 5 file into Prime 4 (or less) format.

But you can install the free Prime Express (version 5 if you have a 64 bit OS,  or any older version if you have a 32-bit OS) and open a Prime file on this forum. As a first time user/evaluator you can get the first 30 days of full functionality, after which the really cool features are gone.

 

Success!
Luc


I don't want Prime or any of its variations.  It is too different from the versions of MathCAD I use, and I don't want more clutter on my computers.  I don't plan to use prime, I just want to see his doc, so a PDF will be preferred.  

Re: Partial Derivative with Matrix

What is one "cool feature" of prime that I am missing by using MathCAD 15 or earlier?

 

 

 

 

 


@LucMeekes wrote:

There is NO possibility to save a (.mcdx) Prime file in any (real) Mathcad (.mcd or .xmcd) format.

Actually there is also no means to save a Prime 5 file into Prime 4 (or less) format.

But you can install the free Prime Express (version 5 if you have a 64 bit OS,  or any older version if you have a 32-bit OS) and open a Prime file on this forum. As a first time user/evaluator you can get the first 30 days of full functionality, after which the really cool features are gone.

 

Success!
Luc


 

Re: Partial Derivative with Matrix

Here you go:

LM_20190403_PartDiff.png

Success!

Luc