Перейти к содержанию
    

По поводу error in calculating solver matrix (parallelization enabled). Есть странности с этой ошибкой. Запускаю задачи на машине с ВИН7, всё работает на ура. Отправляю этиже проекты на линуксовую машину, велетает "error in calculating solver matrix (parallelization enabled)". Сетку менял туда-сюда, не помогает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всем - Здравствуйте!

 

Уважаемые, Anga и Tema-yes, СПАСИБО за отклики на мой пост от 05.05.2014 и предложенные интерпретацию результатов и варианты дальнейшего возможного анализа.

 

Странная складывается картина: в "скрученном" на 90 градусов (с почти квадратным поперечным сечением) длинном волноводе, с устранённым, за счёт чуть разных длин сторон квадрата, вырождением, развязка между концевыми портами минимальна для ортогональных, казалось бы, мод, тогда как она предельно велика для одной и той же, но "скрученной" волны?!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, пожалуйста, как правильно запитать антенну в виде цилиндра, внутри которой проходит коаксиальный кабель? Схемка на рисунке. Мне не понятно какой порт нужно сделать в программе.

 

post-78480-1402787751_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, пожалуйста, как правильно запитать антенну в виде цилиндра, внутри которой проходит коаксиальный кабель? Схемка на рисунке. Мне не понятно какой порт нужно сделать в программе.

 

post-78480-1402787751_thumb.jpg

Думаю, лучше нарисовать антенну вместе с кабелем и запитать кабель волноводным портом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да вот именно что не хочется мне еще и кабель эмулировать. Я так подумал проще сделать диполь из двух таких цилиндров, а потом поделить входное пополам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Блин, не получится, цилиндр слишком толстый

 

Возникло еще несколько вопросов, если жила заходит с внутренней стороны цилиндра, будет ли в эмуляции ток течь по внешней стороне его или нет? Надо через отверстие заводить жилу именно на внешнюю сторону? И куда экран кабеля подцепить? Можно его просто в воздухе бросить?

Изменено пользователем alextip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

получится, цилиндр слишком толстый

мдя :rolleyes:

Можно его просто в воздухе бросить?

воздух это тоже материал и его нужно создавать. Кстати любопытный материал. Потерь нет и всего такого.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

К чему это "мдя". Я просто к тому, что если диполь рассматривать в тонкопроволочном приближении, то влиянием емкости одной половины на другую можно пренебречь, а тут толстый цилиндр - и от торцевого излучения никуда не денешься, и емкость между торцами приличная, что на мой взгляд должно сильно повлиять на входное сопротивление. Или я не прав?

 

К чему ваша реплика про воздух, я тоже не совсем понимаю. В идеале экран должен идти на землю. Какие последствия, если его бросить просто в воздухе, я затрудняюсь сказать. Может кто подскажет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

CST 2014SP1 полет нормальный, вроде стал быстрее. Как у кого наблюдения и соображения...

 

Кто-нибудь реально сравнивал по скорости обсчета во временной области(TD) последнюю версию программы с предыдущими, скажем с 2012-ой?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день! Хочу посчитать Ксвн излучателя в составе сканирующей антенной решётки. Правильно ли я понимаю, что для этого надо использовать Simultaneous excitation F-параметры?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день!

Столкнулся с проблемой нехватки памяти GPU (использую С2070) при решении больших задач. Использую временной солвер, при количестве ячеек более 100 (с мелочью) млн. выдает сообщение об отключении GPU т.к. "размер проблемы превышает объем памяти GPU более чем не 50%" и отключает "из соображений производительности". А считать только на CPU грустно...

Можно ли выделить под GPU часть оперативы или кусочек твердотельника?

 

Заранее спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброго день, форумчане!

Вопрос из области макросов в CST Studio Suite

Столкнулся с проблемой при работе макроса.

Опишу более менее подробно суть проблемы.

Для проекта написан макрос VBA с вызовом пользователских функций, без использования которых в длинном коде (>1000 строк) можно сразу застрелиться.

В качестве примера банальная функция возведения числа в квадрат.

 

Код:

========================================

 

Public Function Square(ByVal X As Double) As Double

Square = X * X

End Function

 

----------------------------------------------------------------

 

Option Explicit

Sub Main ()

 

Dim A As Double

Dim B As Double

Dim msg As String

 

A = 2.0

B = Square(A)

 

msg = "A= " + CStr(A) + vbCrLf

msg = msg + "B= " + CStr(B) + vbCrLf

MsgBox msg

 

End Sub

========================================

 

Из редактора макросов в CST сам макрос запускается без проблем, все работает: отрабатывает и основная функция и пользовательские функции, т.е.функции в области видимости CST Studio

Из окна проекта Microwave Studio макрос также запускается командой "Меню->Macros-> {MacrosName}"

Проблема в том, что при обновлении проекта (будь то при изменении переменной в списке параметров, либо при обновлении листинга команд "History List") выскакивает ошибка об отсутствии описания вызываемой функции. Оно и понятно: как видно из кода, который вошел в History List, почему-то Программа (CST) копирует тело функции "Main", остальное же пропускает, в т.ч. и пользовательские функции.

 

Ниже для наглядности представлены сриншоты проблемы в хронологическом порядке

Файл проекта прилагается

post-35730-1406716502_thumb.jpg post-35730-1406716513_thumb.jpg post-35730-1406716522_thumb.jpg post-35730-1406716538_thumb.jpg post-35730-1406716544_thumb.jpg

Electoronix.zip

 

ВОПРОС!

 

Кто-нибудь сталкивался с такой проблемой, или даст наводку, в какую сторону копать? Я в VBA пока что новичок, приходится ковыряться на форумах и по крупицам собирать информацию...

 

Добрый день!

Столкнулся с проблемой нехватки памяти GPU (использую С2070) при решении больших задач. Использую временной солвер, при количестве ячеек более 100 (с мелочью) млн. выдает сообщение об отключении GPU т.к. "размер проблемы превышает объем памяти GPU более чем не 50%" и отключает "из соображений производительности". А считать только на CPU грустно...

Можно ли выделить под GPU часть оперативы или кусочек твердотельника?

 

Заранее спасибо!

 

Насколько я знаю, такое выделение выделение в программе невозможно, да и не даст оно вам ничего, т.к. судя по рассказам коллег, которые увлекаются CUDA для решени СЛАУ, переброска данных из основной оперативной памяти в память видеокарты - узкое место. Остается упрощать (в разумных пределах) модель, сетку и т.д.

Изменено пользователем Alex_yub

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

по поводу макроса:

 

попробуйте

Macros->File->Import bas-file into history list

 

может и поможет...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

по поводу макроса:

 

попробуйте

Macros->File->Import bas-file into history list

 

может и поможет...

 

 

Баааа! Большое спасибо, barr, заработало. То, что нужно! Ключевое в этом макросе - функция, о которой я не знал:

"RunScript(sfilename)"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос из области макросов в CST Studio Suite

Ещё функции и даже более сложные классы ООП можно создавать в отдельных файлах и подключать в код директивами '#Uses для неструктурных макросов и '$Include: для структурных. Также, полезно явно указывать убласть видимости через функции типа ChDir GetProjectPath("Model3D") - подключаемые файлы будут искаться в папке "Имя_проекта/Model/3D".

 

Файл "macrosTest.mcs"

Option Explicit
Sub Main ()
  ChDir GetProjectPath("Model3D")
  '$Include: "Square.mcr"
  Dim A As Double
  Dim B As Double
  Dim msg As String
  A = 2.0
  B = Square(A)
  msg = "A= " + CStr(A) + vbCrLf
  msg =  msg + "B= " + CStr(B)  + vbCrLf
  MsgBox msg
End Sub

 

Файл "Square.mcr"

Function Square(ByVal X As Double) As Double
    Square = X * X
End Function

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...