找回密码
 注册
Simdroid-非首页
查看: 84|回复: 1

[基础概念] 绝对值函数的求导问题

[复制链接]
发表于 2011-3-10 15:47:25 | 显示全部楼层 |阅读模式 来自 山东济南
含有绝对值:
x=R Sin[\[Theta]](1+0.1Abs[Sin[6\[Phi]]])Cos[\[Phi]];
y=R Sin[\[Theta]](1+0.1Abs[Sin[6\[Phi]]])Sin[\[Phi]];
z=R Cos[\[Theta]];

若对x,y,z直接求导,Abs只会变成符号Abs'[],在赋值的时候不会去绝对值,有没有不需要自己分情况,而让电脑自动对绝对值函数求导,并正确赋值?

谢谢.
 楼主| 发表于 2011-3-11 12:17:09 | 显示全部楼层 来自 山东济南
Simdroid开发平台
本帖最后由 treemantan 于 2011-3-11 12:23 编辑

  1. Clear["Global`*"]
  2. R = 30; v = {};
  3. x = R Sin[\[Theta]] (1 + (-1)^n 0.1 Sin[6 \[Phi]]) Cos[\[Phi]];
  4. y = R Sin[\[Theta]] (1 + (-1)^n 0.1 Sin[6 \[Phi]]) Sin[\[Phi]];
  5. z = R Cos[\[Theta]];
  6. e = D[x, \[Theta]]^2 + D[y, \[Theta]]^2 + D[z, \[Theta]]^2;
  7. g = D[x, \[Phi]]^2 + D[y, \[Phi]]^2 + D[z, \[Phi]]^2;
  8. e1 = D[x, \[Phi]] D[x, \[Theta]] + D[y, \[Phi]] D[y, \[Theta]] +
  9.    D[z, \[Phi]] D[z, \[Theta]];
  10. f[\[Phi]_, \[Theta]_] :=
  11.   Evaluate[(e*g - e1^2)^(1/2) /. n -> Floor[(6 \[Phi])/Pi]];
  12. Do[
  13.   k = Pi/m; h = Pi/(4 m);
  14.   \[Phi][i_] := i*k;
  15.   \[Theta][j_] := j*h;
  16.   I0[i_, j_] :=
  17.    k*h/9 (f[\[Phi][i - 1], \[Theta][j - 1]] +
  18.       f[\[Phi][i + 1], \[Theta][j - 1]] +
  19.       f[\[Phi][i - 1], \[Theta][j + 1]]
  20.       + f[\[Phi][i + 1], \[Theta][j + 1]] +
  21.       4 (f[\[Phi], \[Theta][j - 1]] +
  22.          f[\[Phi][i - 1], \[Theta][j]] +
  23.          f[\[Phi][i + 1], \[Theta][j]] +
  24.          f[\[Phi], \[Theta][j + 1]]) +
  25.       16 f[\[Phi], \[Theta][j]]);
  26.   I1 = Sum[I0[i, j], {i, 1, 2 m - 1, 2}, {j, 1, 2 m - 1, 2}];
  27.   totalS = I1;
  28.   AppendTo[v, {m, totalS}], {m, {2, 4, 6, 8, 16, 24, 44, 100}}];
  29. Grid[Prepend[v, {"m", "S"}], Dividers -> {Center, All}]
复制代码
自己尝试了一下,应该把Abs用(-1)^n次方的形式代替,这样就可以用一个式子表示了,n应该是变化的周期,请问还有没有别的方法?(12行我是用了代替把n换成了\[Phi]的函数,从而f[,]就可以唯一表示积分函数了)
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-7-3 18:04 , Processed in 0.032479 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表