Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Topic: How to calculate the partial derivative?
Replies: 6   Last Post: Nov 21, 2012 5:17 AM

 Messages: [ Previous | Next ] Topics: [ Previous | Next ]
 Nasser Abbasi Posts: 6,448 Registered: 2/7/05
Re: How to calculate the partial derivative?
Posted: Nov 21, 2012 3:17 AM

On 11/21/2012 12:15 AM, Tang Laoya wrote:
> Dear all,
>
> I am trying to calculate the partial derivative by mathematica, I have the following commands:
> L1=a1+b1*x+c1*y;
> L2=a2+b2*x+c2*y;
> L3=a3+b3*x+c3*y;
>
> NN=L1*L2;
>
> DNx=D[NN,x];
>
> I got the following result:
> DNex=b2 (a1+b1 x+c1 y)+b1 (a2+b2 x+c2 y)
>
> How to do to have the following result?
>
> DNex=b2*L1 + b1 * L2
>

The problem is that you did not use equations, but used expresions.
Hence in your case L1 is now 'a1+b1*x+c1*y' and similarly with L2.

To do this right, I'd write things as equations, and use rules, like
this:

--------------------------
Clear[L1, L2, a1, b2, x, c1, y, a2, b2, c2, lhs, rhs]
eq1 = L1 == a1 + b1*x + c1*y;
eq2 = L2 == a2 + b2*x + c2*y;
lhs[eq_] := eq /. (lhs_ == rhs_) -> lhs;
rhs[eq_] := eq /. (lhs_ == rhs_) -> rhs;

NN = rhs[eq1]*rhs[eq2];
DNx = D[NN, x]
----------------------------

which gives what you showed

b2 (a1+b1 x+c1 y)+b1 (a2+b2 x+c2 y)

Now it is easy to use the rules to get what you want

------------------
DNx/.{rhs[eq1]->lhs[eq1],rhs[eq2]->lhs[eq2]}
---------------------

which gives

b2 L1+b1 L2

--Nasser

Date Subject Author
11/21/12 Tang Laoya
11/21/12 Nasser Abbasi
11/21/12 Tang Laoya
11/21/12 Nasser Abbasi
11/21/12 Tang Laoya
11/21/12 Tang Laoya
11/21/12 Nasser Abbasi