我会说关键是当你说“解决方案ϕ(x)",因为解决方案 (x0=1,y0=0)
sin(y/x)=logx
是其中之一
y=x(arcsinlogx+2πk),y=x(π−arcsinlogx+2πk)
对于适当的整数k. ODE 本身在奇点位置之外得到了很好的定义,这与从(1,0).
首先,步进函数有一个小错误——它应该能够正确检测到奇点,但事实并非如此。相反,它只是越过了奇点。
二、ODE 中的奇异点(x,y)-平面定义为cos(y/x)=0,所以在这种情况下,它是线y=π2x这很重要。当 ODE 求解器逐步“通过”一个奇点时,它最终会达到某个值,即x~就在奇点位置之后xsing,并且在y~就在奇异值的上方(另一侧)π2x~.
它遵循“复杂解决方案的真实部分”是不正确的。有一个定义明确的真实解决方案,从初始条件开始(x~,y~),并上升(如arcsin上)当y~<π2x~,并且下降(如π−arcsin上)当y~>π2x~. 这就是为什么情节一次又一次地越过奇异线的原因。
情节跟踪线的方式y=π2x由单独的弧组成,这些弧本身就是 ODE 解。这些弧的位置是随机的,因为它们取决于 ODE 求解器中的数值误差。
它的绘制方式可能还有一个单独的问题,因为绘图有时不会像预期的那样越过红线。可能是绘图功能没有足够频繁地对解决方案进行采样,但我无法仅从绘图中分辨出来。另一方面,解决方案可能只是在一些中间求解器步骤中越界。