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

Mathematica很强大

[复制链接]
发表于 2008-4-17 20:09:39 | 显示全部楼层 |阅读模式 来自 湖北武汉
装了6.0,弄了个Numerical Laplace Inversion的CODE
Mathematica太强大,基于Mathematica的很强大的高精度计算贼爽,可惜的是,这种高精度计算无法在实际的
数值计算中得以很好应用。
 楼主| 发表于 2008-4-18 10:50:36 | 显示全部楼层 来自 湖北武汉
Simdroid开发平台
  1. Unprotect[GWR];

  2. Begin["User`NumericalLaplaceTransformInversion`Private`"]
  3. GWR[F_, t_, M_:12, precin_:0] := Module[
  4.     {M1, G0, Gm, Gp, best, expr, \[Tau] = Log[2]/t, Fi, broken, \
  5. prec},
  6.     If[precin <= 0, prec = 21 M/10, prec = precin];
  7.     If[prec <= $MachinePrecision, prec = $MachinePrecision];
  8.     broken = False;
  9.     If[Precision[\[Tau]]<prec,\[Tau]=SetPrecision[\[Tau],prec]];
  10.     Do[Fi[i] = N[F[i \[Tau]], prec], {i, 1, 2 M}];
  11.     (* Fi[I]为F[Ln2/T*N] *)
  12.     M1 = M;
  13.     Do[
  14.       G0[n - 1] = \[Tau] (2n)!/(n!(n - 1)!)Sum[
  15.             Binomial[n, i](-1)^i  Fi[n + i], {i, 0, n}];
  16.       If[Not[NumberQ[G0[n - 1]]], M1 = n - 1; G0[n - 1] =.; Break[]];
  17.       , {n, 1, M}];
  18.   Print["参数 ",G0[0],"参数 ",G0[M-1]];
  19.     Do[Gm[n] = 0, {n, 0, M1}];
  20.     best = G0[M1 - 1];
  21.    
  22.     Do[
  23.       Do[
  24.         expr = G0[n + 1] - G0[n];
  25.         If[Or[Not[NumberQ[expr]], expr == 0], broken = True; \
  26. Break[]];
  27.         expr = Gm[n + 1] + (k + 1)/expr;
  28.         Gp[n] = expr;
  29.         If[OddQ[k],
  30.           If[n == M1 - 2 - k, best = expr]
  31.           ];
  32.         , {n, M1 - 2 - k, 0, -1}];
  33.       If[broken, Break[]];
  34.       Do[Gm[n] = G0[n]; G0[n] = Gp[n], {n, 0, M1 - k}];
  35.       , {k, 0, M1 - 2}];
  36.     best
  37.     ]

  38. End[]  (* User`NumericalLaplaceTransformInversion` *)
复制代码
回复 不支持

使用道具 举报

 楼主| 发表于 2008-4-18 10:54:37 | 显示全部楼层 来自 湖北武汉
http://library.wolfram.com/infocenter/MathSource/4738/
拉普拉斯逆变换数值计算程序
回复 不支持

使用道具 举报

发表于 2008-4-18 11:00:55 | 显示全部楼层 来自 江苏无锡
library.wolfram.com is some old archive information.

I am looking at demo project / blog, that's more creative.

http://demonstrations.wolfram.com/
回复 不支持

使用道具 举报

 楼主| 发表于 2008-4-18 12:14:35 | 显示全部楼层 来自 湖北武汉
感谢FreddyMusic兄
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-6 11:45 , Processed in 0.031158 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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