; Программа "Уравнение бурбулятора" ; Версия 1.1 - исправлено направление оси Y при выводе, более корректная проверка конца экрана ; Численное моделирование решения дифференциального уравнения Ван-дер-Поля методом Рунге-Кутта ; http://shura.luberetsky.ru/2009/04/28/reshaem-uravnenie-burbulyatora/ ; R0=X ; R1, R2 = y1,y2 для F1,F2 ; RB, RC = y1(i), y2(i) ; RE=h ; R3-11,R4-12,R5-22,R6-23,R7-31,R8-32,R9-41,RA-42 ; R20- счётчик блокнота ; R21 - координата X экрана .CHARSET 1251 .ORG 0 ;Инициализация CX PM 20 PM 21 MB 1 EE 4 +/- MC 0,1 ME ;Сброс графики 2 PP M 9010 32 ENT CX PP M 9000 A1: ;Запомнить старые X,Y1,Y2 PRM 20 PP M 9060 ; группа записи 1 + PM 20 RM0 PP M 9061 ;X RMB PP M 9062 ;Y1 RMC PP M 9063 ;Y2 CX PP M 9064 ;Точка на экране PRM 21 128 - F X<0 A11 GOTO A2 A11: 2 PP M 9010 ; Сброс экрана CX PM 21 RMB P GSB PIX CX PP M 9000 GOTO A3 A2: PRM 21 0,2 + PM 21 A3: RMB P GSB PIX PRM 21 PP M 9012 PP M 9000 K GRPH ; Следующая точка ;P11 RMB M1 RMC M2 P GSB F1 RME * M3 ;P12 P GSB F2 RME * M4 ;P21 RM3 2 / RMB + M1 RM4 2 / RMC + M2 P GSB F1 RME * M5 ;P22 P GSB F2 RME * M6 ;P31 RM5 2 / RMB + M1 RM6 2 / RMC + M2 P GSB F1 RME * M7 ;P32 P GSB F2 RME * M8 ;P41 RM7 RMB + M1 RM8 RMC + M2 P GSB F1 RME * M9 ;P42 P GSB F2 RME * MA ; Новые X,Y1,Y2 ;X RM0 RME + M0 ;Y1 RM3 RM5 2 * + RM7 2 * + RM9 + 6 / RMB + MB ;Y2 RM4 RM6 2 * + RM8 2 * + RMA + 6 / RMC + MC ;Проверка и цикл RM0 64 - P X>=0 A1 R/S F1: ;y'1=y2 RM2 RTN F2: ;y'2=(1-y1^2)*y2-y1 1 RM1 F X^2 - RM2 * RM1 - RTN PIX: 14 * +/- 32 + RTN .END