"use strict"; var imp = gtl.import("user-functions.js"); export function spen_mtx() { let num = 6; //глубина матрицы (количество гармоник) var res = {}; //результат var deep = 0; //глубина модуляции ВЧ составляющих //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. //var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей var ftf = spen.add_harms_set(imp.FTF(), num, 0xffff0000, 1); //частота вращения сепаратора for (let i = 0; i <= num - 1; i++) { ftf.harms[i].tolerance = (1 + i) * imp.FTF() * imp.tolerance(); }; ftf.name = 'FTF'; var freq = spen.add_harms_set(imp.FREQ(), num, 0xff0000f0, 1); //частота вращения for (let i = 0; i <= num - 1; i++) { freq.harms[i].tolerance = (1 + i) * imp.FREQ() * imp.tolerance(); }; freq.name = 'FREQ'; var bsf = spen.add_harms_set(imp.BSF(), num, 0xff994000, 1); //частота контакта тел качения for (let i = 0; i <= num - 1; i++) { bsf.harms[i].tolerance = (1 + i) * imp.BSF() * imp.tolerance(); }; bsf.name = 'BSF'; var bpfo = spen.add_harms_set(imp.BPFO(), num, 0xff009000, 1); //частота перекатывания тел качения по наружному кольцу for (let i = 0; i <= num - 1; i++) { bpfo.harms[i].tolerance = (1 + i) * imp.BPFO() * imp.tolerance(); }; bpfo.name = 'BPFO'; var bpfi = spen.add_harms_set(imp.BPFI(), num, 0xff990090, 1); //частота перекатывания тел качения по внутреннему кольцу for (let i = 0; i <= num - 1; i++) { bpfi.harms[i].tolerance = (1 + i) * imp.BPFI() * imp.tolerance(); } bpfi.name = 'BPFI'; //формируем результат var ftf_arr = []; for (let i = 0; i <= num - 1; i++) { if (ftf.harms[i].is_present == true) { deep = Math.round(imp.mod_factor(ftf.harms[i].amplitude, ftf.harms[i].base) * 100); ftf_arr.push(deep); } else { ftf_arr.push(0) }; }; var freq_arr = []; for (let i = 0; i <= num - 1; i++) { if (freq.harms[i].is_present == true) { deep = Math.round(imp.mod_factor(freq.harms[i].amplitude, freq.harms[i].base) * 100); freq_arr.push(deep); } else { freq_arr.push(0) }; }; var bsf_arr = []; for (let i = 0; i <= num - 1; i++) { if (bsf.harms[i].is_present == true) { deep = Math.round(imp.mod_factor(bsf.harms[i].amplitude, bsf.harms[i].base) * 100); bsf_arr.push(deep); } else { bsf_arr.push(0) }; }; var bpfo_arr = []; for (let i = 0; i <= num - 1; i++) { if (bpfo.harms[i].is_present == true) { deep = Math.round(imp.mod_factor(bpfo.harms[i].amplitude, bpfo.harms[i].base) * 100); bpfo_arr.push(deep); } else { bpfo_arr.push(0) }; }; var bpfi_arr = []; for (let i = 0; i <= num - 1; i++) { if (bpfi.harms[i].is_present == true) { deep = Math.round(imp.mod_factor(bpfi.harms[i].amplitude, bpfi.harms[i].base) * 100); bpfi_arr.push(deep); } else { bpfi_arr.push(0) }; }; //формируем объект res[ftf.name] = ftf_arr; res[freq.name] = freq_arr; res[bsf.name] = bsf_arr; res[bpfo.name] = bpfo_arr; res[bpfi.name] = bpfi_arr; return res; };