Этот фильтр выполняет python-скрипт для создания выходного набора данных. Фильтр сохраняет копию python-скрипта в Скрипт и создает интерпретатор python для запуска скрипта при первом выполнении. Для выполнения внешних сценариев на сервере FidesysViewer используйте: execfile('полный_путь/скрипт.py').
Получение результатов расчета
Выполните пошагового действия для получения результатов расчета из примера Расчет устойчивости борта.
Или введи в командну строку команды:
reset import step "C:/Fidesys/Bort/bort_.stp" heal curve 9 10 15 1 11 12 14 13 17 8 2 16 7 interval 40 curve 9 10 15 1 11 12 14 13 17 8 2 16 7 scheme equal surface 1 scheme quad_dominant surface 1 interval 40 mesh surface 1 create material 1 from 'Грунт' block 1 add surface 1 block 1 material 1 cs 1 element plane order 2 create displacement on curve 4 6 dof 1 fix create displacement on curve 5 dof 2 fix create gravity global modify gravity 1 dof 2 value -9.81 analysis type static elasticity plasticity dim2 planestrain nonlinearopts maxiters 20 minloadsteps 4 maxloadsteps 1000 tolerance 0.01 targetiter 5
Создание программируемого фильтра
Откройте два файла с результатами. Затем в дереве объектов выделите их. Порядок выделения важен.
Далее на панели инструментов выберите Фильтры - Алфавитный указатель - Программируемый фильтр.
Во вкладке Свойства введите скрипт программируемого фильтра и нажмите Применить:
#массивы значений выбранных файлов результатов (порядок важен) input0 = inputs[0] input1 = inputs[1] #посчитанное значение (массив, т.к. на входе тоже массивы) zapas = (input0.PointData["Stress"])/(input1.PointData["Stress"]) #вывод посчитанного массив. В кавычках – название полей. Индексы будут соответствовать индексам исходных массивов output.PointData.append(zapas, "zapas")
В результате на панели инструментов появится новый фильтр с названием zapas.