«не удалось найти обязательную…» ошибка при попытке запустить учебное пособие в OpenFOAM версии 8

#ubuntu-20.04 #openfoam

Вопрос:

Я пытаюсь узнать о программном обеспечении вычислительной гидродинамики OpenFOAM, чтобы использовать его для своей дипломной работы. В настоящее время я следую учебнику Йозефа Надя, чтобы запустить вашу первую симуляцию. Все примерно до отметки 18:30 работало совершенно нормально. Редактирование начальных условий, шага по времени, сохранения, общего времени выполнения и так далее-все это работало без сучка и задоринки. Я перешел в правильный каталог, который в его видео есть /OpenFOAM/OpenFOAM-2.3.0/tutorials/incompressible/icoFoam/elbow_tri , но при моей установке мой путь идет /opt/openfoam8/tutorials … и все остальное. Сначала я попытался выполнить команду так, как она была дана в видео, а именно

 fluentMeshToFoam elbow.msh
 

И команда работала просто отлично, вплоть до того момента , когда ей нужно было записать изменения constant/polymesh , и в этот момент она выдала ошибку

 FOAM FATAL ERROR: 
The parent directory does not allow write permission to the process,
or one of the directories in "/opt/openfoam8/tutorials/incompressible/icoFoam/elbow_tri/constant/polyMesh" did not allow search (execute) permission.

    From function bool Foam::mkDir(const Foam::fileNameamp;, mode_t)
    in file POSIX.C at line 346.
 

Итак, насколько я понимаю, произошло то, что ему удалось создать сетку, но у него не было надлежащих разрешений для записи файла сетки в constant/polyMesh папку.

Имея это в виду, я вместо этого попробовал команду

 sudo fluentMeshToFoam elbow.msh
 

Но на этот раз мне дали гораздо более короткую ошибку

 FOAM FATAL ERROR :
    Could not find mandatory etc entry (mode=ugo)
    'controlDict'
 

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

Большое спасибо.

ПРИМЕЧАНИЕ: Я использую Ubuntu версии 20.04 LTS и OpenFOAM версии 8.

Комментарии:

1. Это неправильный способ ведения дела. Не могли бы вы предоставить выходные данные команды pwd и ls перед запуском этой команды преобразовать сетку?

2. @s.ouchene С тех пор я решил эту проблему. Проблема заключалась в том, что я запускал OpenFOAM непосредственно из папки установки, что является плохой идеей.

3. @K. defaoite не могли бы вы поподробнее рассказать об этом?

4. @Foad видит мой ответ.

Ответ №1:

Эту и ряд других проблем можно решить, запустив OpenFOAM из правильной папки. После установки OpenFOAM обязательно создайте папку в своем домашнем каталоге под названием OpenFOAM с вложенной папкой под названием run, как описано на их веб-сайте. Чтобы запустить учебное пособие, скопируйте его из папки «Учебные пособия» в вашей установке, переместите в эту папку «Выполнить» и запустите оттуда.

ЗАПУСК ОБРАЩЕНИЙ OPENFOAM НЕПОСРЕДСТВЕННО ИЗ ПАПКИ УСТАНОВКИ — ЭТО ПУТЬ К КАТАСТРОФЕ. НЕ ДЕЛАЙ ЭТОГО.

Комментарии:

1. Значит, нам разрешено запускать OpenFOAM только из ~/OpenFOAM/run/ каталога? это, если правильно, действительно плохая практика!

2. Вы можете увидеть последующее обсуждение здесь .