Re: Question about the derivative of Abs
- To: mathgroup at smc.vnet.net
- Subject: [mg106120] Re: [mg106097] Question about the derivative of Abs
- From: Patrick Scheibe <pscheibe at trm.uni-leipzig.de>
- Date: Sat, 2 Jan 2010 05:04:03 -0500 (EST)
- References: <201001011036.FAA05264@smc.vnet.net>
Hi, PiecewiseExpand can do the trick. In your original post the Abs are results from the Norm-function in ni[t_,a_,b_]. If you are sure the parameters there are Reals then the following is Abs-free. To decide whether this is correct is your turn. Clear["Global`*"] Simp[a_, b_][expr_] := Simplify[expr, Assumptions -> a > 0 && a < Pi/2 && b > 0 && b < Pi/2]; FSimp[a_, b_][expr_] := FullSimplify[expr, Assumptions -> a > 0 && a < Pi/2 && b > 0 && b < Pi/2]; ComputeCs3D[zi_] := (ddt = Derivative[1, 0, 0]; dd1 = Derivative[0, 1, 0]; dd2 = Derivative[0, 0, 1]; vi = ddt[zi]; zialpha[t_, a_, b_] := {dd1[zi][t, a, b], dd2[zi][t, a, b]}; salphabeta = Dot[zialpha[#1, #2, #3], Transpose[zialpha[#1, #2, #3]]] &; sAlphaBeta = Inverse[salphabeta[#1, #2, #3]] &; ni[t_, a_, b_] := Cross[zialpha[t, a, b][[1]], zialpha[t, a, b][[2]]]/ Norm[Cross[zialpha[t, a, b][[1]], zialpha[t, a, b][[2]]]] /. Abs[val__] :> PiecewiseExpand[Abs[val], Reals]; c[t_, a_, b_] := Dot[ni[t, a, b], vi[t, a, b]] // FSimp[a, b]; c1[t_, a_, b_] := ddt[c][t, a, b] - Dot[zialpha[t, a, b], vi[t, a, b], sAlphaBeta[t, a, b], {dd1[c][t, a, b], dd2[c][t, a, b]}] // Simp[a, b]; c2[t_, a_, b_] := ddt[c1][t, a, b] - Dot[zialpha[t, a, b], vi[t, a, b], sAlphaBeta[t, a, b], {dd1[c1][t, a, b], dd2[c1][t, a, b]}] // Simp[a, b]; {c[#1, #2, #3], c1[#1, #2, #3], c2[#1, #2, #3]} &) zi[t_, theta_, phi_] := {(1 + \[Epsilon] t)*Sin[theta] Cos[phi], Sin[theta] Sin[phi], Cos[theta]}; ComputeCs3D[zi][0, \[Theta], \[Phi]] // FSimp[\[Theta], \[Phi]] // MatrixForm Cheers Patrick On Fri, 2010-01-01 at 05:36 -0500, Sam Takoy wrote: > Hi, > > I kind of asked this question before, but in a more confusing context, > so now I would like to ask it by itself. > > In the course of my computations, I get Abs' and Abs''. It is applied to > a positive number, so I think those values should be 1 and 0. However, > Mathematica fails to simplify it. > > For example > > In[34]:= Abs'[2.0] > > Out[34]= > \!\(\*SuperscriptBox["Abs", "\[Prime]", > MultilineFunction->None]\)[2.] > > > These expressions really mess up my answers. How do I get Mathematica to > do these simplifications? > > Thanks > > Sam >
- References:
- Question about the derivative of Abs
- From: Sam Takoy <samtakoy@yahoo.com>
- Question about the derivative of Abs