You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

非线性ODE方程组求解求助:极坐标变换方法疑问

非线性ODE方程组求解求助:极坐标变换方法疑问

你完全找对方向了!极坐标变换正是解决这类包含$x2+y2$项的非线性ODE系统的绝佳方法,别担心直接设$x=r \cos\theta$、$y=r \sin\theta$没用,咱们一步步来推导,你就明白怎么回事了:

  • 首先明确极坐标与直角坐标的核心关系:$r^2 = x^2 + y^2$(r是极径,非负),$\theta = \arctan\left(\frac{y}{x}\right)$(极角)。我们的目标是把原方程组里的$\frac{dx}{dt}$、$\frac{dy}{dt}$转化为关于$\frac{dr}{dt}$和$\frac{d\theta}{dt}$的方程,这样会大幅简化计算。

  • 第一步:计算$\frac{dr}{dt}$
    对$r^2 = x^2 + y^2$两边关于t求导,用链式法则可得:
    $$2r \frac{dr}{dt} = 2x \frac{dx}{dt} + 2y \frac{dy}{dt}$$
    两边约去2后化简为:
    $$\frac{dr}{dt} = \frac{x \frac{dx}{dt} + y \frac{dy}{dt}}{r}$$
    把原方程组的$\frac{dx}{dt} = -y \sqrt{x2+y2}$和$\frac{dy}{dt} = x \sqrt{x2+y2}$代入分子部分(注意$\sqrt{x2+y2}=r$):
    $$x(-y r) + y(x r) = -xy r + xy r = 0$$
    所以$\frac{dr}{dt}=0$,这说明极径r是一个常数,记为$r_0$——也就是说,系统的解始终在半径为$r_0$的圆周上运动,不会远离或靠近原点。

  • 第二步:计算$\frac{d\theta}{dt}$
    对$\theta = \arctan\left(\frac{y}{x}\right)$两边关于t求导,利用分式求导法则可得:
    $$\frac{d\theta}{dt} = \frac{x \frac{dy}{dt} - y \frac{dx}{dt}}{x^2 + y^2}$$
    同样代入原方程组的导数:
    分子部分:$x(x r) - y(-y r) = x^2 r + y^2 r = r(x^2 + y^2) = r^3$
    分母部分:$x^2 + y^2 = r^2$
    所以$\frac{d\theta}{dt} = \frac{r3}{r2} = r$,因为r是常数$r_0$,所以$\frac{d\theta}{dt}=r_0$。

  • 第三步:求解θ(t)并还原回直角坐标
    对$\frac{d\theta}{dt}=r_0$积分,得到:
    $$\theta(t) = r_0 t + \theta_0$$
    其中$\theta_0$是初始角度(t=0时的极角)。
    最后把$r=r_0$和$\theta(t)=r_0 t + \theta_0$代入极坐标转直角坐标的公式,就得到原方程组的解:
    $$x(t) = r_0 \cos(r_0 t + \theta_0)$$
    $$y(t) = r_0 \sin(r_0 t + \theta_0)$$
    这里的$r_0$和$\theta_0$由初始条件决定,比如t=0时$x=x_0,y=y_0$,那么$r_0=\sqrt{x_02+y_02}$,$\theta_0$是$(x_0,y_0)$对应的极角(注意根据象限调整取值)。

备注:内容来源于stack exchange,提问作者M_k

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 15:07:35