VMs was changed
parent
a46a7c53a0
commit
1bb89eab22
|
@ -136,8 +136,8 @@ export function createMask(options) {
|
||||||
|
|
||||||
export function getMask(options) {
|
export function getMask(options) {
|
||||||
let __result = {}; //результат
|
let __result = {}; //результат
|
||||||
let __spec = options.src1; //источник данных для построения модели
|
let __spec = options.spec; //источник данных для построения модели
|
||||||
let __set = options.src2; //источник данных для построения портретов дефектов
|
let __set = options.set; //источник данных для построения портретов дефектов
|
||||||
let __rows = Object.keys(__set); //массив ключей объекта (наименование портретов)
|
let __rows = Object.keys(__set); //массив ключей объекта (наименование портретов)
|
||||||
|
|
||||||
let __model = specModel(
|
let __model = specModel(
|
||||||
|
@ -159,7 +159,7 @@ export function getMask(options) {
|
||||||
filter: options.filter, //полосовой фильтр (для определения разницы амплитуд гармонической и случайной составляющей)
|
filter: options.filter, //полосовой фильтр (для определения разницы амплитуд гармонической и случайной составляющей)
|
||||||
color: __set[__mask_name].clr, //цвет портрета в формате HEX
|
color: __set[__mask_name].clr, //цвет портрета в формате HEX
|
||||||
freq: __set[__mask_name].frq, //функциональная частота, Гц
|
freq: __set[__mask_name].frq, //функциональная частота, Гц
|
||||||
harms: __set[__mask_name].hrm, //кол-во гармоник в портрете, шт
|
harms: __set[__mask_name].cnt, //кол-во гармоник в портрете, шт
|
||||||
lvl: __set[__mask_name].lvl, //глубина модуляции сильного дефекта для портрета, %
|
lvl: __set[__mask_name].lvl, //глубина модуляции сильного дефекта для портрета, %
|
||||||
tol: options.tol, //коридор обнаружения гармоники на портрете, %
|
tol: options.tol, //коридор обнаружения гармоники на портрете, %
|
||||||
type: __set[__mask_name].type, //тип портрета (0 - обычный ряд, 1 - четные составляющие)
|
type: __set[__mask_name].type, //тип портрета (0 - обычный ряд, 1 - четные составляющие)
|
||||||
|
|
|
@ -0,0 +1,81 @@
|
||||||
|
export function modFactor(dSpec, dFilter, ampl, base) {
|
||||||
|
let dl = (ampl - base); //разность уровней гармонической и случайной составляющей вибрации
|
||||||
|
let df = dSpec.frequency / dFilter.width; //отношение частотному разрешению спектра к ширине фильтра
|
||||||
|
let mod = Math.sqrt((10 ** (dl / 10) - 1) * df);
|
||||||
|
return mod;
|
||||||
|
}; //определение глубины модуляции ВЧ составляющих
|
||||||
|
|
||||||
|
export function createTools(options) {
|
||||||
|
let __spec = options.spec; //источник данных спектра
|
||||||
|
let __set = {}; //источник данных для построения частотных линий
|
||||||
|
if (options.set != undefined) { __set = options.set };
|
||||||
|
|
||||||
|
let __tools = gtl.create_spec_tools(
|
||||||
|
{
|
||||||
|
data: __spec.data, //массив значений амплитуд спектра
|
||||||
|
df: __spec.resolution, //частотное разрешение спектра
|
||||||
|
base: {
|
||||||
|
factor: 100, //коэффициент сглаживания базовой линии
|
||||||
|
visible: true, //отображение базовой линии
|
||||||
|
color: 0xFFFF00 //цвет базовой линии в формате HEX
|
||||||
|
},
|
||||||
|
peaks: {
|
||||||
|
color: __spec.color, //цвет маркеров обнаруженных гармоник
|
||||||
|
visible: false, //отображение маркеров
|
||||||
|
level: __spec.peak_level //уровень обнаружения гармоник в спектре
|
||||||
|
},
|
||||||
|
harms: {
|
||||||
|
tolerance: options.tol //коридор обнаружения гармоник в спектре
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
let __rows = Object.keys(__set); //массив ключей объекта (наименование частот)
|
||||||
|
for (let i = 0; i < __rows.length; i++) {
|
||||||
|
let __name = __rows[i]; //название гармонического ряда
|
||||||
|
let __color = __set[__name].clr; //цвет ряда в формате HEX
|
||||||
|
let __freq = __set[__name].frq; //расчетная частота
|
||||||
|
let __mod = __set[__name].mod; //модулирующая частота
|
||||||
|
let __harms = __set[__name].cnt; //количество гармоник
|
||||||
|
|
||||||
|
let __row = __tools.harms.add(
|
||||||
|
{
|
||||||
|
frequency: __freq, //функциональная частота
|
||||||
|
count: __harms, //количество гармоник
|
||||||
|
color: __color, //цвет линий
|
||||||
|
weight: 2, //толщина линий
|
||||||
|
visible: false //отображение линий
|
||||||
|
}
|
||||||
|
);
|
||||||
|
__row.name = __name;
|
||||||
|
|
||||||
|
if (options.mod != 0) {
|
||||||
|
__row.modulate(
|
||||||
|
{
|
||||||
|
frequency: __mod, //частота амплитудной модуляции
|
||||||
|
count: 2, //количество боковых составляющих слева и справа
|
||||||
|
color: __color, //цвет линий в формате HEX
|
||||||
|
weight: 0.5 //толщина линий
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
return __tools;
|
||||||
|
}; //Построение компонентов и частотных линий на спектре
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -329,6 +329,65 @@ export function getSpen(args) {
|
||||||
return __spen;
|
return __spen;
|
||||||
}; //построение спектра огибающей
|
}; //построение спектра огибающей
|
||||||
|
|
||||||
|
export function createTools(options) {
|
||||||
|
let __spec = options.spec; //источник данных спектра
|
||||||
|
let __set = {}; //источник данных для построения частотных линий
|
||||||
|
if (options.set != undefined) { __set = options.set };
|
||||||
|
|
||||||
|
let __tools = gtl.create_spec_tools(
|
||||||
|
{
|
||||||
|
data: __spec.data, //массив значений амплитуд спектра
|
||||||
|
df: __spec.resolution, //частотное разрешение спектра
|
||||||
|
base: {
|
||||||
|
factor: 100, //коэффициент сглаживания базовой линии
|
||||||
|
visible: true, //отображение базовой линии
|
||||||
|
color: 0xFFFF00 //цвет базовой линии в формате HEX
|
||||||
|
},
|
||||||
|
peaks: {
|
||||||
|
color: __spec.color, //цвет маркеров обнаруженных гармоник
|
||||||
|
visible: false, //отображение маркеров
|
||||||
|
level: __spec.peak_level //уровень обнаружения гармоник в спектре
|
||||||
|
},
|
||||||
|
harms: {
|
||||||
|
tolerance: options.tol //коридор обнаружения гармоник в спектре
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
let __rows = Object.keys(__set); //массив ключей объекта (наименование частот)
|
||||||
|
for (let i = 0; i < __rows.length; i++) {
|
||||||
|
let __name = __rows[i]; //название гармонического ряда
|
||||||
|
let __color = __set[__name].clr; //цвет ряда в формате HEX
|
||||||
|
let __freq = __set[__name].frq; //расчетная частота
|
||||||
|
let __mod = __set[__name].mod; //модулирующая частота
|
||||||
|
let __harms = __set[__name].cnt; //количество гармоник
|
||||||
|
|
||||||
|
let __row = __tools.harms.add(
|
||||||
|
{
|
||||||
|
frequency: __freq, //функциональная частота
|
||||||
|
count: __harms, //количество гармоник
|
||||||
|
color: __color, //цвет линий
|
||||||
|
weight: 2, //толщина линий
|
||||||
|
visible: false //отображение линий
|
||||||
|
}
|
||||||
|
);
|
||||||
|
__row.name = __name;
|
||||||
|
|
||||||
|
if (options.mod != 0) {
|
||||||
|
__row.modulate(
|
||||||
|
{
|
||||||
|
frequency: __mod, //частота амплитудной модуляции
|
||||||
|
count: 2, //количество боковых составляющих слева и справа
|
||||||
|
color: __color, //цвет линий в формате HEX
|
||||||
|
weight: 0.5 //толщина линий
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
return __tools;
|
||||||
|
}; //Построение компонентов и частотных линий на спектре
|
||||||
|
|
||||||
export function getStdMeasures(options) {
|
export function getStdMeasures(options) {
|
||||||
let __source = options.src;
|
let __source = options.src;
|
||||||
let __time = 0.1;
|
let __time = 0.1;
|
||||||
|
|
Loading…
Reference in New Issue