|
|
  |
Вопросы по CST |
|
|
|
Feb 13 2013, 17:48
|
Частый гость
 
Группа: Участник
Сообщений: 128
Регистрация: 1-11-10
Из: Королёв, Моск.обл.
Пользователь №: 60 575

|
Цитата(zukalek @ Feb 5 2013, 12:05)  Всем доброго времени суток! Такой вопрос: поддерживает ли актуальная версия CST расчет с помощью видеокарты Nvidia Tesla K20? Есть возможность ее приобрести, но не понятно, будет ли CST с ней взаимодействовать. В оффициальных брошюрах упоминаний о Tesla K20 я не нашел. Заранее всем спасибо за ответы! 2012 c SP7 у меня не пошёл.
|
|
|
|
|
Feb 22 2013, 08:21
|
Знающий
   
Группа: Свой
Сообщений: 565
Регистрация: 22-02-13
Пользователь №: 75 748

|
Добрый день! Я моделирую патч-антенну. Решил отдельно промоделировать микрополосок и проверить согласование. В TXline рассчитал параметры. Длина полоска - длина волны. Сначала промоделировал в MWO. На конце ставил согласованную нагрузку - 50 Ом. Входное сопротивление: 49.9 - 50.5 Ом в диапазоне частот 1-12 ГГц. Затем промоделировал такой же полосок в CST. В качестве согласованной нагрузки Lumped Element (резистор 50 Ом). Моделировал как с дискртным портом, так и с волноводным. Значения входного сопротивлния примерно одинаковы, то сильно отличаются от результатов MWO. В CST оно периодически меняется от 30 до 130 Ом. Чем могут быть вызваны такие отличия? Ведь по теории, когда длина полоска равна целому числу полуволн, входное сопротивление равно сопротивлению нагрузки. Файл MWO: http://yadi.sk/d/KAZmcVL82nWPOФайлы CST: http://yadi.sk/d/rwbpGTbm2nWP2http://yadi.sk/d/2a5HrU3R2nWOcСпасибо!
|
|
|
|
|
Feb 22 2013, 11:12
|
Участник

Группа: Участник
Сообщений: 27
Регистрация: 21-09-10
Пользователь №: 59 619

|
Сосредоточенные порт и нагрузку лучше подключите к граням, а не к их центральным точкам. По-моему, результаты вполне ожидаемые как для такой микрополосковой линии с вакуумной подложкой.
|
|
|
|
|
Feb 22 2013, 12:00
|
Знающий
   
Группа: Свой
Сообщений: 565
Регистрация: 22-02-13
Пользователь №: 75 748

|
Большое спасибо! Цитата(Freesom @ Feb 22 2013, 15:12)  Сосредоточенные порт и нагрузку лучше подключите к граням, а не к их центральным точкам. То есть выбрать Pick Face center и подключить к центру грани земли и полоска. Или как-то по-другому. Не очень понял. Вот так?
Сообщение отредактировал Grizzzly - Feb 22 2013, 12:00
|
|
|
|
|
Feb 22 2013, 14:48
|
Участник

Группа: Участник
Сообщений: 27
Регистрация: 21-09-10
Пользователь №: 59 619

|
Можете поискать в хелпе Discrete Edge Port или просто сделать pick edge на обоих кромках, создать дискретный порт, включить проекцию в свойствах порта и всё. Вообще эта геометрия с пустотой вместо подложки и столь малыми размерами нижнего проводника не самая удачная для дискретного порта и как его не причесывай, хорошего совпадения с волноводным всё равно не будет.
|
|
|
|
|
Feb 25 2013, 09:14
|
Участник

Группа: Участник
Сообщений: 74
Регистрация: 3-11-06
Пользователь №: 21 941

|
Уважаемые коллеги!
Прошу помощи по двумерной оптимизации в CST MWS. В частности, интересует следующее. Задаю 2 параметра оптимизации (геом. размера структуры) и 2 цели-условия. Каждая цель должна удовлетвориться в итоге, т.е. оптимизация должна проводиться по принципу лог. "И": A&B, где A и B - целевые условия.
Собственно, сам вопрос: при достижении одного из условий, оптимизатор останавливается, сообщая об успешной оптимизации, т.е. как будто бы работает по принципу "ИЛИ"... Причем, останавливается на третьей точке достижения одного из условий (в данном частном случае). При этом пишет, что текущий(е) параметр(ы) находи(я)тся вблизи определенных для них(него) граничных значений (мин. и макс.), однако, может быть достигнут лучший результат оптимизации, при соответствующем расширении верхней и/или нижней границ.
Почему такое может быть, наверное я чего-то не поинмаю?.. Прошу помочь советами и/или литературой по функции оптимизации CST!
Как я понял, он берет B=const1, и прогоняет k итераций A, т.е. A0...Ak-1. ПРи этом k зависит от эффективности метода. Так вот: зачем расширять границы, если он прогнал еще только одну итерацию B? Какой бы замечательный не был метод, он обязан проверить как минимум по одной итерации B, это в лучшем случае, некоторая Bi, где i=0...m-1, в худшем B0...Bm-1, где m - число итераций, рассчитываемое методом! А тут как-то странно он себя ведет... Да, забыл сказать, что это касается только квазиньютоновского метода.
В хелпе такие случаи не рассматриваются, насколько я понял. Хотя, по идее, можно задать, хоть N-мерную оптимизацию, где N - оптеделяется сугубо выч. ресурсами.
Заранее признателен!
С уважением, Александр
Сообщение отредактировал Shura_jj - Feb 25 2013, 09:55
--------------------
Chance favors the prepared mind
|
|
|
|
|
Feb 25 2013, 21:34
|
Группа: Новичок
Сообщений: 3
Регистрация: 25-02-13
Пользователь №: 75 789

|
Здравствуйте, Уважаемые коллеги и форумчане! Работаю в CST MWS, раньше обрабатывал результаты в Matlab, а теперь задача сделать тоже самое во встроенном VBA. Что нужно: как пример рассчитать поперечное шунтовое сопротивление для модели(A). Как решалось раньше: экспорт в ACSII, чтение в Matlab, решение в нем же. Сейчас нужно сделать тоже самое, но в самом CST. Убив очень много времени, нашел 2 пути решения, но в каждом запнулся на определенном шаге. Первый: Встроенными командами также экспортировать в txt (например 1.txt), потом обратно считывать. Проблема в том, что нужно считать n-й столбец (допустим 4й) и записать его в массив и т.д. для обработки. Не могу нигде найти ни мануала ни ответов как записывать в массив столбец из txt. (в матлабе это было оооооооой как просто, но увы  ) Второй: Использовать их встроенный макрос для шунтового {CST/Results/Template Based Postprocessing/3D Eigenmode Result/ Shunt Impendance....} (там другое, но не суть). До кода этого макроса я докопался (2.txt). Но когда попытался реализовать эти же команды, но через скрипт VBA начался АД  . То он не знает функцию, то нелья использовать, тд и тп  . Пока я дошел до экспорта в logfile. Главный вопрос - он в том скрипте пишет данные в логфайл, как бы их лучше перехватить в массив или как заставить этот код заработать. Уже месяц бьюсь, нифига не идет. И еще - они там для импорта данных используют функции PP() и PPL(). При моем же использовании VBA говорит, что без понятия, что это такое за PP  . Пример использования (3.txt). Да и в хелпе нет описания про них. Народ, помогите, пожалуйста, кто какими мыслями сможет. А то уже все встало и много времени без движения. Заранее спасибо. P.S. хелп штрудирую постоянно.
Прикрепленные файлы
A.rar ( 36.15 килобайт )
Кол-во скачиваний: 21
1.txt ( 4.9 килобайт )
Кол-во скачиваний: 57
2.txt ( 34 килобайт )
Кол-во скачиваний: 308
3.txt ( 1.53 килобайт )
Кол-во скачиваний: 48
|
|
|
|
|
Feb 26 2013, 03:47
|
Местный
  
Группа: Свой
Сообщений: 328
Регистрация: 21-07-05
Пользователь №: 6 972

|
Цитата(Parliament @ Feb 25 2013, 23:34)  Здравствуйте, Уважаемые коллеги и форумчане! Работаю в CST MWS, раньше обрабатывал результаты в Matlab, а теперь задача сделать тоже самое во встроенном VBA.
Что нужно: как пример рассчитать поперечное шунтовое сопротивление для модели(A). В CST используется следующее определение для продольного R/Q : R/Q = Uz^2/wW , где Uz= Int(Ez*exp(i*k*z)/dz) - набранное напряжения вдоль заданной линии, W - запасённая энергия (1J), w - круговая частота В то же время, по теореме Пановского-Венцеля: Uz = (w/c)*r*Ut, где Ut - набранное поперечное напряжение на линии, сдвинутой от оси на "r" мм Откуда : Uz = sqrt(R/Q*w*W) и Ut = (1/r)*(c/w)* sqrt(R/Q*w*W), здесь R/Q - значение вычисленное с помощью темплейта из CST. Дальнейшее вычисление поперечных (R/Q)x и (R/Q)у очевидно ...
|
|
|
|
|
Feb 26 2013, 09:08
|
Группа: Новичок
Сообщений: 3
Регистрация: 25-02-13
Пользователь №: 75 789

|
Цитата(navuho @ Feb 26 2013, 07:47)  В CST используется следующее определение для продольного R/Q : R/Q = Uz^2/wW , где Uz= Int(Ez*exp(i*k*z)/dz) - набранное напряжения вдоль заданной линии, W - запасённая энергия (1J), w - круговая частота
В то же время, по теореме Пановского-Венцеля: Uz = (w/c)*r*Ut, где Ut - набранное поперечное напряжение на линии, сдвинутой от оси на "r" мм
Откуда : Uz = sqrt(R/Q*w*W) и Ut = (1/r)*(c/w)* sqrt(R/Q*w*W), здесь R/Q - значение вычисленное с помощью темплейта из CST.
Дальнейшее вычисление поперечных (R/Q)x и (R/Q)у очевидно ... Navuho, спасибо большое за ответ и потраченное время. просто тут проблема немного в другом - не как посчитать, а как работать с VBA и перехватывать данные из Result tree, logfile в массивы (или как работает их макрос, который прислан ниже, чтобы его можно было видоизменить), потому что не только шунтовое надо посчитать, а там просто встроенными функциями не отделаешься. Шунтовое я взял как пример. Кстати, если посмотреть их текст макроса, то там считается Exre, Exim, тд и тп. Просто не понимаю, как им присваивается значение. Смысл не просто использовать их макрокнопочки - а написать в макроэдиторе код программы, куда можно эти кнопочки всунуть. Я уже много написал, но застопорился на работе с полями...
|
|
|
|
|
Feb 27 2013, 04:27
|
Местный
  
Группа: Свой
Сообщений: 328
Регистрация: 21-07-05
Пользователь №: 6 972

|
Цитата(Parliament @ Feb 26 2013, 12:08)  просто тут проблема немного в другом - не как посчитать, а как работать с VBA и перехватывать данные из Result tree, logfile в массивы ... А чем простой экспорт полей на заданной сетке не устраивает ? ' The file will show 9 columns: ' 3 for the positions (x, y, z) and ' 6 for the electric field vector (3 x Re/Im) ' Select the desired monitor in the tree. SelectTreeItem ("2D/3D Results\E-Field\e1") With ASCIIExport .Reset .FileName (".\example.txt") .Mode ("FixedNumber") .StepX (12) .StepY (12) .StepZ (8) .Execute End With
|
|
|
|
|
Feb 27 2013, 19:57
|
Группа: Новичок
Сообщений: 3
Регистрация: 25-02-13
Пользователь №: 75 789

|
Цитата(navuho @ Feb 27 2013, 08:27)  А чем простой экспорт полей на заданной сетке не устраивает ?
' The file will show 9 columns:
' 3 for the positions (x, y, z) and
' 6 for the electric field vector (3 x Re/Im)
' Select the desired monitor in the tree.
SelectTreeItem ("2D/3D Results\E-Field\e1")
With ASCIIExport
.Reset
.FileName (".\example.txt")
.Mode ("FixedNumber")
.StepX (12)
.StepY (12)
.StepZ (8)
.Execute
End With Navuho, спасибо, это уже давно нашел. Проблема была в считывании этого же txt, ведь реализовывать надо в самом CST. Вопрос решился - нашел команду Getfieldvector(...), через который можно получать эти данные в массив. Еще раз спасибо за потраченное время)
|
|
|
|
|
  |
25 чел. читают эту тему (гостей: 25, скрытых пользователей: 0)
Пользователей: 0
|
|
|