Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Подбор емкостей.doc
Скачиваний:
1
Добавлен:
20.08.2019
Размер:
338.94 Кб
Скачать

Поиск оптимальных наборов и комбинаций емкостей для сглаживания различных гармоник в rc – фильтре.

Постановка задачи. Имеем трёхфазную сеть, снабжённую RC - фильтрами. Требуется: 1) Найти отношения емкостей, обеспечивающие сглаживание каждой гармоники с номером 6*к ± 1, где к=1, 2,…7.

2) Пусть имеем конденсаторы одинаковой ёмкости. Найти минимальное количество конденсаторов, обеспечивающее требуемое отношение емкостей для каждой гармоники с заданной точностью Р, при условии, что все ёмкости должны быть задействованы в числителе или знаменателе этого отношения. Найти числители и знаменатели.

3) Решить задачу 2, учитывая, что можно задействовать не все ёмкости.

4) Имеем конденсаторы нескольких различных емкостей, каждая разновидность имеет свою стоимость. Минимизировать суммарную стоимость при тех же условиях, задействовав все конденсаторы.

5) Задача 4, но можно задействовать не все конденсаторы.

Метод решения и его обоснование.

Задача 1 описана в ранее созданных работах. Для k=3, 5 и 7 сдвиг ε и отношение емкостей то же(30° и 0,732), что и для k=1; для k=6 то же, что для k=2. Опишем решение остальных задач.

Имеем массив(вектор) отношений емкостей Х=(х1, х2, х3) для К=1, 2 и 4. Определим сначала существование решения задачи 2. Для этого достаточно, чтобы производная Х по знаменателю n при постоянной сумме числителя и знаменателя N=n+m, делённая на точность Х, была меньше 2: Р. Учитывая, что в худшем случае N=n(X+Р+1), получим . Но это условие должно выполняться для всех х1,…х6, поэтому , i=1,…6. Однако, на практике обычно попадаются числа n и N значительно меньше.

Задачи 3, 4 и 5 тем более имеют решение, т.к. имеют менее жёсткие условия.

Задачи 2 и 3 решаются перебором общего числа емкостей N от 1 до первого попавшегося целого числа, дающего решение для всех х1,…х3(задача 2), или до тех пор, пока для каждого х1,…х3 не будет найдено число, дающие решение(задача 3). В последнем случае требуемое число емкостей есть наибольшее из этих чисел.

Для решения задач 4 и 5 необходим перебор различных наборов емкостей в порядке возрастания их стоимости. Поскольку установка самого этого порядка – довольно трудоёмкий процесс, в приведённых алгоритмах решения рассматриваются наборы, стоимость которых находится в интервале от g до h, причём после рассмотрения всех указанных наборов числа g и h увеличиваются на шаг g-h=20/q, где q-число различных емкостей. Перебор осуществляется рекурсивно, вложенность рекурсии равна q. Для каждого набора осуществляется рекурсивный перебор комбинаций емкостей числителя и знаменателя, составленных из него, при условии, что используются все ёмкости.

Перед началом этого перебора определяется суммарная ёмкость cp= , где cpni – число i-ых емкостей в наборе,

требуемое значение ёмкости в знаменателе са=

и минимальное недопустимое отклоненое ёмкости знаменателя r = са - . Чтобы исключить перебор заведомо бесполезных комбинаций, на каждом шаге каждого уровня вложенности, кроме последнего, определяются границы hi и lo, в которых могут находиться суммарные ёмкости знаменателя при переборе следующей вложенности:

, , , cp, где n - текущий уровень вложенности, i – число n-ных емкостей в знаменателе. Следующая вложенность выполняется только если требуемый с учётом точности диапазон значений знаменателя пересекается с интервалом [lo,hi].

На последнем же уровне находится округлённое до целого число соответствующих ему емкостей, необходимое для обеспечения знаменателя, равного са. Если это число даёт знаменатель, отличный от са менее чем на r, то эта комбинация запоминается, а разница присваивается r.

При достаточно большой величине наибольшего общего делителя(НОД) к-л емкостей имеется большое количество наборов с одинаковой суммарной ёмкостью, из которых в большинстве случаев целесообразно рассматривать только один, в противном случае время выполнения алгоритма будет, скорее всего, неприемлемым. Этот набор должен быть наиболее дешёвым, поэтому имеет смысл предварительно отсортировать ёмкости по убыванию отношения стоимости к ёмкости, а затем на каждом уровне рекурсии перебирать только те количества емкостей, которые дают новые соотношения числителя и знаменателя, не получаемые из большего количества более дешёвых емкостей. Найдём это условие.

Пусть группа емкостей имеет НОД ΔС. Представим их в виде произведений , где h – взаимно простые целые числа. Найдём число f( ) такое, что все числа, не меньшие которого, представимы набором чисел h.

= , если числа взаимно простые. В противном случае все наборы, составленные из них, дадут сумму, кратную их НОД, даже если числа дробые. Тогда имеет смысл заменить h на с, которое может быть и дробным, и искать

= . Например, f(4, 6)=6.

Введя число , имеющее общий делитель с и учитывая, что для гарантированной представимости данного числа набором из достаточна представимость его из НОД( ) и c3 при условии представимости числа, входящего в сумму и кратного НОД( ) набором из , получим

= + .

Например, f(4, 6, 7)=6+7=13.

В общем случае .

Теперь, если число не меньше , то оно может быть представлено не единственным набором из чисел хотя бы потому, что второе слагаемое равняется целому числу как , так и . Например, =27. Действительно, 27 = 6+3*7 = 2*4+2*6+7. Если один из этих наборов не даёт дополнительных комбинаций числителя и знаменателя по сравнению с более дешёвым набором, то его и все наборы, его включающие, рассматривать не нужно. Но в данном случае набор 6+3*7 не может представить дробь 8/19, в отличие от другого набора. Чтобы это было возможно, в знаменателе(или числителе, что имеет тот же смысл) первого набора должны быть представимы все числа, кратные НОД( ), не большие f( )+ -НОД( ), в виде суммы целого количества чисел , если они представимы вторым набором. Тогда все аналогичные числа, большие представимы через и некоторое количество . Для этого достаточно, чтобы второе число было не меньше .

Для наших чисел имеем =2(6+7*2)-2=38, а Ψ(4,6)=2(0+6*2)-4=20.

Представим 38 суммами 2*4+5*6 и 3*4+2*6+2*7. Сумма первых 2 слагаемых 2-го набора равна 24, поэтому первыми двумя числами представимы все чётные числа от комбинации f(4, 6)=6 до 24-6=18, что просто проверить. Числа от 20=14+6 до 32=38-6 набираются доступными количествами чисел 4 и 6 в сочетании с произведением 2*7. Поэтому нужно исключить из рассмотрения набор 2*4+5*6 и все наборы, его включающие.

Задача 4 решается указанным перебором при каждом изменении границ g и h в поисках наиболее дешёвого набора, дающего для каждого из х1,…,х3 соответствующие отношения числителя и знаменателя с заданной точностью. В соответствии с границами g и h рассматриваются только наборы, стоимость которых на последней рекурсии поиска находится в указанном диапазоне, а на остальных рекурсиях не превышает h. Когда нужный набор найден, цикл изменения g и h прекращается.

Для решения задачи 5 необходимо запоминать наборы, дающие решение для какой-либо компоненты вектора х. После нахождения всех указанных наборов данного диапазона стоимости производится поиск наиболее дешёвого объединения наборов из найденных, дающих решение для каждой компоненты х, при этом комбинации наборов перебираются независимо от стоимости. Если стоимость найденного объединения наборов меньше h, то цикл изменения g и h прекращается. Задача 5 решена.

Все приведённые выше исследования чисел выполнены автором алгоритма.