$***********************************************************
$ макро задает соединительный элемент - гпр с двумя пневмокамерами
$ реализуется 4 жесткости гпр.
$ реализуется активное демпфирование и динамическое изменение клиренса
$***********************************************************
$       формальные параметры шага МОДЕЛЬ
$ p1  - номер тела 1 крепления
$ p2  - номер узла 1 крепления
$ p3  - номер тела 2 крепления
$ p4  - номер узла 2 крепления
$
BL14  NPDS  TPDS  LX  LY  LZ  UX  UY  UZ
@  'поршень интегратора 1'
       npt1   npt1+300  0   0   1   0   0   0
@  'земля'
       npt2   npt2+300  0   0   0   0   0   0
@  'поршень интегратора' 2
       npt3   npt3+300  0   0   1   0   0   0
@  'поршень интегратора' 3
       npt4   npt4+300  0   0   1   0   0   0
$@  'тело для вывода работы демпфера'
$       npt5   npt5+300  0   0   1   0   0   0
@  'вычислитель силы в амортизаторе'
       npu1   nmx1   0   0   0   0   0   0
@  'фиктивное звено'
       npu2   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu3   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu4   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu5   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu6   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu7   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu8   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu9   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu10   111    0   0   0   0   0   0
@  'фиктивное звено'
       npu11   111    0   0   0   0   0   0
BL16 NMX PRSOST TUF KPAR TDF KPAR
@   'вычислитель силы в амортизаторе'
      nmx1    1   471   24    50  1
@   ' характеристика буфера actgpr'
      nmx2    1   1    1  50    1
@   ' пружина и демпфер поршня интегратора'
      nmx3    3   1     1     53  3
@  'пружина для вывода работы демпфера'
      nmx4    3   1     1    50   1
BL17  NSE NPDS1  NUZ1 NPDS2  NUZ2  NMX
@   'пружина в шарнирах actgpr'
      nse1    p1    p2    p3    p4   nmx2
@   'пружина поршня 1'
      nse2    npt2  1     npt1  1    nmx3
@   'пружина поршня 2'
      nse3    npt2  1     npt3  1    nmx3
@   'ход амортизатора - вычислитель'
      nse4    nse1  -1    npu1  1    1
@   'скорость амортизатора - вычислитель'
      nse5    nse1  -2    npu1  2    1
@   'hod поршня 1 - вычислитель'
      nse6    npt1  1     npu1  3    3
@   'velocity поршня 1 - вычислитель'
      nse7    npt1  1     npu1  4   -3
@   'hod поршня 2 - вычислитель'
      nse8    npt3  1     npu1  5    3
@   'velocity поршня 2 - вычислитель'
      nse9    npt3  1     npu1  6   -3
@   'hod поршня 3 - вычислитель'
      nse10    npt4  1     npu1  7   3
@   'velocity поршня 3 - вычислитель'
      nse11    npt4  1     npu1  8  -3
@   'сила в амортизаторе- ф.з.'
      nse12    npu1  1     npu3  1    1
@   'ф.з. - ф.з.'
      nse13    npu3  1     npu5  1    1
@   'ф.з. - амортизатор'
      nse14   npu5  1     nse1 -1    1
@   'сила на поршень 1 - ф.з.'
      nse15    npu1  2     npu2  1    1
@   'ф.з. - ф.з.'
      nse16    npu2  1     npu4  1    1
@   'ф.з. - поршень 1'
      nse17    npu4  1     npt1  1    3
@   'сила на поршень  2 - ф.з.'
      nse18    npu1  3     npu6  1    1
@   'ф.з. - ф.з.'
      nse19    npu6  1     npu7  1    1
@   'ф.з. - поршень 2'
      nse20    npu7  1     npt3  1    3
@   'сила на поршень  3 - ф.з.'
      nse21    npu1  4     npu8  1    1
@   'ф.з. - ф.з.'
      nse22    npu8  1     npu9  1    1
@   'ф.з. - поршень 2'
      nse23    npu9  1     npt4  1    3
@   'пружина поршня 3'
      nse24    npt2  1     npt4  1    nmx3
$@   ' пружина тела для вывода'
$      nse25    npt2  1     npt5  1    nmx4
$@   'работа в амортизаторе- ф.з.'
$      nse25    npu1  5     npu10  1    1
$@   'ф.з. - ф.з.'
$      nse27    npu10 1    npu11  1    1
$@   'ф.з. - связь для вывода работы'
$      nse28    npu11  1   npt5   1    3
@ 'пружина в шарнирах actgprm'
#tspring.mac  nse1
@ 'piston 1 displasement'
#wkt.mac 1 1 1  npt1  3  1
@ 'piston 2 displasement'
#wkt.mac 1 1 1  npt3  3  1
@ 'piston 2 velosity'
#wkt.mac 1 1 1  npt3  3  2
@ 'piston 1 velosity'
#wkt.mac 1 1 1  npt1  3  2
@ 'GPR pressure'
#wkt.mac 1 1 1  npt4  3  2
$@ 'GPR work dissipation'
$#wkt.mac 1 1 1  npt5  3  3
@ 'deformation in gpr'
#wkt.mac 2 1 nse1  1  1  1
@ 'VELOCITY in gpr'
#wkt.mac 2 1 nse1  1  1  2
@ 'сила в gpr actgprm'
#wkt.mac 3 1 nse12  1  1  1
$***********************************************************
$       формальные параметры шага РАСЧЕТ
$***********************************************************
$     P(1)  - зарядный объем пневмокамеры 1
$     P(2)  - зарядное давление пневмокамеры 1
$     P(3)  - площадь поршня (предполагается что все поршни имеют одинаковую площадь)
$     P(4)  - коэффициент адиабаты
$     P(5)  - зарядный объем пневмокамеры 2
$     P(6)  - зарядное давление пневмокамеры 2
$     P(7)  - режим работы гпр (1 - 4, 5 - управление)
$     P(8)  - усилие срабатывания предохранительного клапана 1 пневмокамеры
$     P(9)  - усилие срабатывания предохранительного клапана 2 пневмокамеры
$     P(10)  - длина гпр
$     P(11)  - FRICTION FORCE
$     P(12)  - усилие срабатывания возвратного клапана 2 пневмокамеры
$     P(13)  - статическая сила в ГПР
$     P(14)  - сила нагнетания насоса (давление насоса на площадь поршня )
$     P(15)  - коэффициент обратной связи по давлению
$     P(16)  - коэффициент обратной связи по скорости
$     P(17)  - коэффициент обратной связи по ускорению
$     P(18)  - коэффициент обратной связи по ускорению колеса
$
BL31 NPDS    MAS     JNX     JNY     JNZ
@  'поршень интегратора 1'
       npt1   2    1   1    1
@  'земля'
       npt2   1      1   1    1
@  'поршень интегратора 2'
       npt3   2    1   1    1
@  'поршень интегратора 3'
       npt4   1    1   1    1
BL33    NXAR    PRSOST    PRSL      KSTROK
@   'вычислитель силы в амортизаторе'
      nmx1       1       1     6
      p1     p2    p3     p4
      p5     p6    p7    p8
      p9     p10   p11   p12
      p13    p14   p15   p16
      p17    p18   p19   p20
      p21    p22   p23   p24
      nmx1        1        2          1
      0.0    0.0   0.0    0.0
@   ' характеристика буфера actgpr'
      nmx2        1        1          1
      0.001   0.0000001  9000000.0 -0.0000001
      nmx2        1        2          1
      0.0    0.0   0.0    0.0
@   ' пружина и демпфер поршня интегратора'
      nmx3   3    1    1
      10.0   0.0       0.0    0.
      nmx3   3    2    1
      p11    0.005   0.0    0.0
@  'пружина для вывода работы демпфера'
      nmx4   3    1    1
      0.0   0.0   0.0    0.
      nmx4   3    2    1
      0.0   0.0   0.0    0.0
@ 'пружина в шарнирах actgpr'
#lspring.mac  nse1 p10