-- Weapons for Type 055 Destroyer by Currenthill

-- =============================== HHQ-9B long range SAM  ==========================================

local name_HHQ_9B = 'HHQ-9B'

TYPE_055_HHQ_9B = {
    category        = CAT_MISSILES,
    name            = name_HHQ_9B,
    user_name       = _("HHQ-9B"),
    model           = 'hhq9a',
    mass            = 1300.0,
    wsTypeOfWeapon  = {4,4,34,WSTYPE_PLACEHOLDER},

    Escort 			= 0,
    Head_Type 		= 2,
	sigma 			= {10, 10, 10},
    M 				= 500.0,
    H_max 			= 30000.0,
    H_min 			= 5.0,
    Diam 			= 560.0,
    Cx_pil 			= 2,
    D_max 			= 200000.0,
    D_min 			= 2500.0,
    Head_Form 		= 1,
    Life_Time 		= 480.0,
    Nr_max 			= 32,
    v_min 			= 150.0,
    v_mid 			= 1500.0,
    Mach_max 		= 4.2,
    t_b 			= 0.0,
    t_acc 			= 8.0,
    t_marsh 		= 42.0,
    Range_max 		= 250000.0,
    H_min_t 	 	= 5.0,
    Fi_start     	= 3.14152, -- angle of tracking at firing
    Fi_rak       	= 3.14152,
    Fi_excort    	= 2.0,
    Fi_search    	= 99.9, --search angle limit
    OmViz_max    	= 99.9, --search line speed limit
	exhaust 	 	= {  1, 1, 1, 1 },
    X_back       	= -3.55,
    Y_back       	= 0.0,
    Z_back       	= 0.0,	
    Reflection 	 	= 0.178,
    KillDistance 	= 20.0,
	ccm_k0 			= 0.1,	
	
	active_radar_lock_dist	= 260000.0,
	go_active_by_default	= 1,	
	
	PN_coeffs = {3, 				-- Number of Entries
				5000.0 ,1.0,		-- Less 5 km to target Pn = 1
				10000.0, 0.5,		-- Between 10 and 5 km  to target, Pn smoothly changes from 0.5 to 1.0. 
				20000.0, 0.2};		-- Between 20 and 10 km  to target, Pn smoothly changes from 0.2 to 0.5. Longer then 30 km Pn = 0.2.

	warhead = enhanced_a2a_warhead(180.0); 

    shape_table_data = {
        {
            name     = name_HHQ_9B,
            file     = 'hhq9a',
            life     = 1,
            fire     = {0, 1},
            username = _("HHQ-9B"),
            index    = WSTYPE_PLACEHOLDER,
        },
    },

   ModelData = {
        58 ,  -- model params count
        0.2 ,   -- characteristic square (характеристическая площадь)
        
        -- параметры зависимости Сx
        0.025 , -- Cx_k0 планка Сx0 на дозвуке ( M << 1)
        0.065 , -- Cx_k1 высота пика волнового кризиса
        0.01 , -- Cx_k2 крутизна фронта на подходе к волновому кризису
        0.035, -- Cx_k3 планка Cx0 на сверхзвуке ( M >> 1)
        0.9 , -- Cx_k4 крутизна спада за волновым кризисом 
        0.7 , -- коэффициент отвала поляры (пропорционально sqrt (M^2-1))
        
        -- параметры зависимости Cy
        0.7 , -- Cy_k0 планка Сy0 на дозвуке ( M << 1)
        0.6     , -- Cy_k1 планка Cy0 на сверхзвуке ( M >> 1)
        0.9  , -- Cy_k2 крутизна спада(фронта) за волновым кризисом  
        
        0.6 , -- 7 Alfa_max  максимальный балансировачный угол, радианы
        4.0, --угловая скорость создаваймая моментом газовых рулей
        
        -- Engine data. Time, fuel flow, thrust.    
--    t_statr        t_b     t_accel     t_march     t_inertial        t_break        t_end            -- Stage
         0.0,        0.5,   0.01,       35.0,        0.0,            0.0,        1.0e9,         -- time of stage, sec
         0.0,        0.0,    0.0,        8.0,        0.0,            0.0,        0.0,           -- fuel flow rate in second, kg/sec(секундный расход массы топлива кг/сек)
         0.0,        0.0,    0.0,    20000.0,   	 0.0,            0.0,        0.0,           -- thrust, newtons
    
         1.0e9, -- таймер самоликвидации, сек
         480.0, -- время работы энергосистемы, сек
         0, -- абсолютная высота самоликвидации, м
         0.5, -- время задержки включения управления (маневр отлета, безопасности), сек
         1.0e9, -- дальность до цели в момент пуска, при превышении которой ракета выполняется маневр "горка", м
         1.0e9, -- дальность до цели, при которой маневр "горка" завершается и ракета переходит на чистую пропорциональную навигацию (должен быть больше или равен предыдущему параметру), м 
         0.0,  -- синус угла возвышения траектории набора горки
         50.0, -- продольное ускорения взведения взрывателя
         50.0, -- модуль скорости сообщаймый катапультным устройством, вышибным зарядом и тд !!!!!!!
         1.19, -- характристика системы САУ-РАКЕТА,  коэф фильтра второго порядка K0
         1.0, -- характристика системы САУ-РАКЕТА,  коэф фильтра второго порядка K1
         2.0, -- характристика системы САУ-РАКЕТА,  полоса пропускания контура управления
         0.0, -- дальность полета в горизонт с располагаемой перегрузкой Navail >= 1.0 на высоте H=2000
         0.0, -- крутизна зависимости  дальность полета в горизонт с располагаемой перегрузкой Navail >= 1.0 от высоты H
         0.0,
         0.0, -- безразмерный коэф. эффективности САУ ракеты
         0.0, -- расчет времени полета
          -- DLZ. Данные для рассчета дальностей пуска (индикация на прицеле)
         17500.0, -- дальность ракурс   180(навстречу) град,  Н=10000м, V=900км/ч, м
         7500.0, -- дальность ракурс 0(в догон) град,  Н=10000м, V=900км/ч, м
         9000.0, -- дальность ракурс     180(навстречу) град, Н=1000м, V=900км/ч, м
         0.2, -- Уменьшение разрешенной дальности пуска при отклонении вектора скорости носителя от линии визирования цели.
         1.0, -- Вертикальная плоскость. Наклон кривой разрешенной дальности пуска в нижнюю полусферу. Уменьшение дальности при стрельбе вниз.
         1.4, -- Вертикальная плоскость. Наклон кривой разрешенной дальности пуска в верхнюю полусферу. Увеличение дальности при стрельбе вверх.
        -3.0, -- Вертикальная плоскость. Угол перегиба кривой разрешенной дальности, верхняя - нижняя полусфера.
        0.5, -- Изменение коэффициентов наклона кривой в верхнюю и нижнюю полусферы от высоты носителя.
    },

 }

declare_weapon(TYPE_055_HHQ_9B)

GT_t.WS_t.Type055_HHQ9B = {name = "HHQ-9B", display_name = _("HHQ-9B")}; 
GT_t.WS_t.Type055_HHQ9B.angles = {
					{math.rad(180), math.rad(-180), math.rad(-90), math.rad(90)},
					};
GT_t.WS_t.Type055_HHQ9B.moveable = false
GT_t.WS_t.Type055_HHQ9B.LN = {}
GT_t.WS_t.Type055_HHQ9B.LN[1] = {}
GT_t.WS_t.Type055_HHQ9B.LN[1].type = 4
GT_t.WS_t.Type055_HHQ9B.LN[1].distanceMin = 2500
GT_t.WS_t.Type055_HHQ9B.LN[1].distanceMax = 250000
GT_t.WS_t.Type055_HHQ9B.LN[1].reactionTime = 1.0;
GT_t.WS_t.Type055_HHQ9B.LN[1].launch_delay = 1.0;
GT_t.WS_t.Type055_HHQ9B.LN[1].reflection_limit = 0.02
GT_t.WS_t.Type055_HHQ9B.LN[1].ECM_K = 0.1
GT_t.WS_t.Type055_HHQ9B.LN[1].max_number_of_missiles_channels = 1
GT_t.WS_t.Type055_HHQ9B.LN[1].sensor = {}
set_recursive_metatable(GT_t.WS_t.Type055_HHQ9B.LN[1].sensor, GT_t.WSN_t[0])
-- GT_t.WS_t.Type055_HHQ9B.LN[1].external_tracking_awacs = true
GT_t.WS_t.Type055_HHQ9B.LN[1].show_external_missile = true
GT_t.WS_t.Type055_HHQ9B.LN[1].PL = {}
GT_t.WS_t.Type055_HHQ9B.LN[1].PL[1] = {}
GT_t.WS_t.Type055_HHQ9B.LN[1].PL[1].ammo_capacity = 80
GT_t.WS_t.Type055_HHQ9B.LN[1].PL[1].type_ammunition = TYPE_055_HHQ_9B.wsTypeOfWeapon
GT_t.WS_t.Type055_HHQ9B.LN[1].PL[1].reload_time = 1000000; 
GT_t.WS_t.Type055_HHQ9B.LN[1].BR = { {pos = {0, 0, 0} } }
