Я использую программу ANSYS Fluent для моделирования CFD. Эта программа позволяет частично автоматизировать настройку симуляции с использованием так называемого файла журнала, и я только что узнал, что этот файл журнала написан на схеме. К сожалению, я никогда даже не слышал о Scheme, я просто знаю, что это диалект Лиспа (о котором я тоже ничего не знаю).
Я пытаюсь автоматизировать некоторые скучные задачи, используя цикл для автоматической установки набора параметров для моей симуляции. Если я запускаю эту команду из командного интерфейса Fluent:
(cx-gui-do cx-set-list-selections "Boundary Conditions*Table1*List2(Zone)" '( 4))
он делает то, что ожидается (выбирает элемент 4 из списка). Однако, если я вставлю это в цикл:
(do ((z 4 (+ z 1))) ((> z 27))
(cx-gui-do cx-set-list-selections "Boundary Conditions*Table1*List2(Zone)" '( z))
)
ничего не происходит, и программа печатает #f
в командном окне. Тогда, если я сделаю:
(define z 4)
(cx-gui-do cx-set-list-selections "Boundary Conditions*Table1*List2(Zone)" '( z))
вообще ничего не происходит.
Почему замена числа 4
на переменную не работает? И почему цикл возвращает #f
?
(when (> z 27) (cx-gui-do .....
- условное выполнение? - person rsm   schedule 18.11.2019when
, как вы предложили, программа выдаст ошибкуError: eval: unbound variable Error Object: when
- person The Drunken Whaler   schedule 18.11.2019do
из-за отступа ;) - person rsm   schedule 18.11.2019