vitan 2 September 22, 2025 Posted September 22, 2025 · Report post Используется моделирование dataflow. Есть два набора данных с комплексными числами, нужно один поделить на другой. Есть стандартные блоки "Add" и "Multiply", а для деления ничего не нашёл. Как так? Неужели нужно будет разбивать число на реальную и мнимую часть или вычислять модуль и аргумент, а потом проводить действия над ними раздельно? Quote Share this post Link to post Share on other sites More sharing options...
aBoomest 0 September 24, 2025 Posted September 24, 2025 · Report post И для разности тоже? Может в натройках + на - меняется и * на / ? Quote Share this post Link to post Share on other sites More sharing options...
vitan 2 September 26, 2025 Posted September 26, 2025 · Report post Нет, для разности есть элемент Sub. Первый вариант сделал через деление амплитуд и вычитание фаз, т.е. разложил число на амплитуду и фазу элементом CxToPolar, далее делаю обратную величину одной из амплитуд элементом Reciprocal, далее перемножаю со второй амплитудой элементом Mpy. Фазы вычитаю через Sub и объединяю с полученной амплитудой через PolarToCx. Выглядит жутко... Нашёл некий элемент MathCx, у которого в параметрах можно указать Recip. Это, по идее, должно сразу давать обратное комплексное число, которое можно (видимо) перемножить со вторым и получить искомое. Сделал - не совпадает с первым вариантом. Заметил, что для нормальной работы элементов, у которых вход принимает несколько потоков (умножитель, сумматор и т.д.) нужно перед подачей каждого потока на вход такого элемента пропустить его через некий буфер, чтобы не было влияния на соседние потоки, которые подсоединены к этому же входу. Использую для этого сумматор, у которого на вход подан один поток (сказано, что в этом случае данные просто копируются на выход). Жесть какая-то выходит... Попроще никак, что ли? Quote Share this post Link to post Share on other sites More sharing options...
blackfin 74 September 26, 2025 Posted September 26, 2025 · Report post On 9/26/2025 at 12:31 PM, vitan said: Первый вариант сделал через деление амплитуд и вычитание фаз, т.е. разложил число на амплитуду и фазу... Попроще никак, что ли? Проще умножить числитель и знаменатель дроби на комплексно-сопряженный знаменатель. Затем выделить в числителе действительную и мнимую части и поделить их на квадрат модуля делителя. Quote Share this post Link to post Share on other sites More sharing options...
vitan 2 September 26, 2025 Posted September 26, 2025 · Report post Хм, выглядит не проще, а иначе... По количеству элементов в схеме, как я понимаю, это даже больше будет, чем через тригонометрическую форму. Я имел ввиду какой-нибудь стандартный блок, выполняющий эту операцию. Я в теме новичок, но странно показалось, что этого нет. Quote Share this post Link to post Share on other sites More sharing options...
vitan 2 September 26, 2025 Posted September 26, 2025 · Report post Проверил вычисления через эксель. Мой вариант 1 оказался правильным! А в варианте 2 интересная фигня: элемент MathCx с настройкой Recip выдаёт обратные комплексные числа с ошибкой! Неточность от пятого до третьего знака после запятой (меняется, в зависимости от чего - не изучал). УЖОС! Как с этим работать-то?? Quote Share this post Link to post Share on other sites More sharing options...
looser 12 September 26, 2025 Posted September 26, 2025 · Report post Я очень надеюсь, что автор вопроса не в теме мс-21. Нунахер... 1 час назад, vitan сказал: Хм, выглядит не проще, а иначе... По количеству элементов в схеме, как я понимаю, это даже больше будет, чем через тригонометрическую форму. Я имел ввиду какой-нибудь стандартный блок, выполняющий эту операцию. Я в теме новичок, но странно показалось, что этого нет. У меня есть карандаш. 0.7мм. И есть бумага. Не очень хорошего качества. Но я могу при помощи этих не сложных инструментов проверить. Стандартный блок. зы у меня такое чувство, что я живу в каком-то зазеркалье. Ну ребят, я старый. Я точно знаю что летает, что падает. Нужно просто спросить. Не. Будут изобретать. Деление комплексныхчисел. Школьная (ну первый курс вуз) программа. Успехов в поиске истины. Quote Share this post Link to post Share on other sites More sharing options...
vitan 2 September 26, 2025 Posted September 26, 2025 · Report post В 26.09.2025 в 15:13, looser сказал: проверить Прикиньте, мне тоже не 16 лет. И я тоже могу на клочке бумаги два числа поделить, даже комплексных. Вы правда думаете, что мне для этого надо новые программные пакеты осваивать? Довольно странно, что нет стандартного блока. В комплекте чего только нет, от констант до каких-то адских модуляторов 5G. У новичка вызывает удивление отсутствие блока для деления в таких условиях, что Вас так скривило? Quote Share this post Link to post Share on other sites More sharing options...
looser 12 September 26, 2025 Posted September 26, 2025 · Report post 39 минут назад, vitan сказал: Прикиньте, мне тоже не 16 лет. И я тоже могу на клочке бумаги два числа поделить, даже комплексных. Вы правда думаете, что мне для этого надо новые программные пакеты осваивать? Довольно странно, что нет стандартного блока. В комплекте чего только нет, от констант до каких-то адских модуляторов 5G. У новичка вызывает удивление отсутствие блока для деления в таких условиях, что Вас так скривило? Да все есть. Тут главное типы грамотно определить. Просто определяете операцию. Комплексные поделятся на комплексные. Ну а иначе весь этот огород смысла не имеет. Будете делить как на бумажке. зы лично я так и делаю, не доверяя кубикам. На верилоге. Тем более, что в кубиках все будет то же самое. Только хуже. Кстати, а зачем делить комплексные числа? Это довольно экзотическая операция. Коррекция ачх? Quote Share this post Link to post Share on other sites More sharing options...
vitan 2 September 27, 2025 Posted September 27, 2025 · Report post В 26.09.2025 в 16:38, looser сказал: Да все есть. Тут главное типы грамотно определить. Просто определяете операцию. Что есть? Где есть? Как "просто определить операцию"? Вы можете ответить конкретно по сути вопроса? Фактически, вопрос уже решён, результаты получены. Но способ получения меня несколько удивил. Да, деление нужно для коррекции АЧХ, если можно так выразиться. Я пытаюсь освоить т.н. нормализацию для TDR (по апликухам аджилента). Quote Share this post Link to post Share on other sites More sharing options...
looser 12 September 27, 2025 Posted September 27, 2025 · Report post Ну тут дело такое:если есть комплексные числа - будут делить как комплексные. Я не очень понимаю вопроса. Лично у меня таких вопросов вообще никогда и все такое. По крайней мере выпадать с этим в аудиторию... Да ладно победили - отлично. Успехов. Quote Share this post Link to post Share on other sites More sharing options...
vitan 2 September 27, 2025 Posted September 27, 2025 · Report post Вы не читали заголовок, похоже. Как сделать это не на бумажке, и даже не в экселе? Сделать-то я сделал, но выглядит жутко. Помимо этого найдена проблема с одним из стандартных блоков. Думал, найдутся люди, владеющие SystemVue, подскажут... Нет, макнули в г... зачем-то... Кстати, раз пошла такая пьянка, сделаю уж и третий вариант, по схеме с домножением на сопряжённое, посмотрим, как оно будет. Quote Share this post Link to post Share on other sites More sharing options...
looser 12 September 27, 2025 Posted September 27, 2025 · Report post 41 минуту назад, vitan сказал: Вы не читали заголовок, похоже. Как сделать это не на бумажке, и даже не в экселе? Сделать-то я сделал, но выглядит жутко. Помимо этого найдена проблема с одним из стандартных блоков. Думал, найдутся люди, владеющие SystemVue, подскажут... Нет, макнули в г... зачем-то... Кстати, раз пошла такая пьянка, сделаю уж и третий вариант, по схеме с домножением на сопряжённое, посмотрим, как оно будет. Конечно читал. Просто мне в голову не приходило спрашивать у коллег на электрониксе про деление комплексных чисел. Лютая деградация, ога. 3 варианта деления. Я просто... Да ладно. Делите как хотите.Тут ведь как? Главное частное не потерять. Quote Share this post Link to post Share on other sites More sharing options...
vitan 2 September 27, 2025 Posted September 27, 2025 · Report post В 27.09.2025 в 19:37, looser сказал: деградация Ну ок, продвинутый Вы наш. Давайте, покажите класс. Ваше решение в студию! И оно должно быть круче моего. Напоминаю, его надо реализовать в указанном софте, а не на бумажке. Слабо? all Изначально я планировал всё это делать в ADS 2024 (далее этот симулятор уже убрали), но из-за других проблем перешёл на SystemVue и так пока и не вернулся. Есть смысл возвращаться, или там будет то же самое? Quote Share this post Link to post Share on other sites More sharing options...
looser 12 September 28, 2025 Posted September 28, 2025 · Report post Я не продвинутый. Но задача, которую вы пытаетесь решить - реально сложная. Quote Share this post Link to post Share on other sites More sharing options...