nextfoam / baram Goto Github PK
View Code? Open in Web Editor NEWCFD for Everyone
Home Page: https://baramcfd.org/
License: GNU General Public License v3.0
CFD for Everyone
Home Page: https://baramcfd.org/
License: GNU General Public License v3.0
Describe the bug
I cannot get past step 4 neither after importing an STL nor after adding a simple geometry. "Next" is grayed out no matter what I try.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
I can click the "next" button ;-)
Desktop (please complete the following information):
Version: the latest main branch
To Reproduce
Steps to reproduce the behavior: run baramFlow or baramMesh on macOS
Stacktrace:
(venv) ➜ baram git:(main) ✗ python -m baramMesh.main
[2024-05-26 13:28:57,593][root] ==> Uncaught exception
Traceback (most recent call last):
File "/opt/homebrew/Cellar/[email protected]/3.9.19/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/opt/homebrew/Cellar/[email protected]/3.9.19/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/Users/nickolay/Downloads/baram/baramMesh/main.py", line 85, in <module>
main()
File "/Users/nickolay/Downloads/baram/baramMesh/main.py", line 57, in main
numCores = min(len(psutil.Process().cpu_affinity()), psutil.cpu_count(logical=False)) - 1
AttributeError: 'Process' object has no attribute 'cpu_affinity'
(venv) ➜ baram git:(main) ✗ python3.9 -m baramMesh.main
[2024-05-26 13:29:09,474][root] ==> Uncaught exception
Traceback (most recent call last):
File "/opt/homebrew/Cellar/[email protected]/3.9.19/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/opt/homebrew/Cellar/[email protected]/3.9.19/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/Users/nickolay/Downloads/baram/baramMesh/main.py", line 85, in <module>
main()
File "/Users/nickolay/Downloads/baram/baramMesh/main.py", line 57, in main
numCores = min(len(psutil.Process().cpu_affinity()), psutil.cpu_count(logical=False)) - 1
AttributeError: 'Process' object has no attribute 'cpu_affinity'
Seems like cpu_affinity is not available on macOS: giampaolo/psutil#1826, likely we need some fallback option
Hello everyone,
I am facing the error above in both applications BaramFlow and BaramMesh. Any suggestions?
Thanks in advance.
".ui" files are compiled one by one by CLI on Terminal.
Systematical way like "Makefile" is required.
"Gradle" might be a good candidate.
Implements a module that generates "fvSolution" openfoam configuration file from coreDB.
Describe the bug
BaramMesh export never finishes, there are no errors in the log.
To Reproduce
Steps to reproduce the behavior: see video https://i.imgur.com/vnzcdpM.mp4
I have added a mesh from STL file and a Hex6 shape and used all default parameters.
Export doesn't finish even after waiting for a long time.
Expected behavior
Export finishes
Desktop (please complete the following information):
Implements a module that generates "constant/thermophysicalProperties" openfoam configuration file from coreDB.
Describe the bug
I am following the installation instructions as per the INSTALL.md file.
When I try to start Baram using:
python main.py
I get the following error:
File "/Users/tan/baram-mac/baram/main.py", line 24, in <module>
from view.main_window.start_window import Baram
File "/Users/tan/baram-mac/baram/view/main_window/start_window.py", line 19, in <module>
from coredb.project import Project, ProjectOpenType
File "/Users/tan/baram-mac/baram/coredb/project.py", line 13, in <module>
import openfoam.run as run
File "/Users/tan/baram-mac/baram/openfoam/run.py", line 53, in <module>
ompiPath = glob.glob(str(OPENFOAM / 'lib' / 'openmpi*'))[0] # No Validity Check. It should exist.
IndexError: list index out of range
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Baram should start.
It is working fine on Linux.
Desktop (please complete the following information):
Additional context
I believe the problem is in the Solvers file. There are no files in the lib directory with names matching openmpi*
The Solvers file for linux has a number of such files existing in the lib folder.
Please check.
kernel v.: 5.14.0 | distribution: Rocky Linux 9.1 x86_64 | baram v.: 22.0.4 | window system: Wayland (served by Mutter in my user session)
$ dnf -q rq --installed --archlist noarch,x86_64 --qf '%{name} %{version} | %{summary}' gcc python3 vte291 glibc openmpi git-core
gcc 11.3.1 | Various compilers (C, C++, Objective-C, ...)
git-core 2.31.1 | Core package of git with minimal functionality
glibc 2.34 | The GNU libc libraries
openmpi 4.1.1 | Open Message Passing Interface
python3 3.9.14 | Python 3.9 interpreter
vte291 0.64.2 | Terminal emulator library
$ python3 -m pip show pip | grep ^Version
Version: 22.3.1
Hello. Running BARAM.
[(...)]$ python3.9 -m venv venv && source ./venv/bin/activate
(venv) [(...)]$ python main.py
Warning: Ignoring WAYLAND_DISPLAY on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
The GUI wizard opens. It processes successfully the selection of New case, till the end with default selections, which is where Finnish is presented. Output resulting from clicking Finnish.
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 12 (X_ConfigureWindow)
Resource id in failed request: 0x4
Serial number of failed request: 7
Current serial number in output stream: 8
Describe the bug
The solvers listed below were not found,but but are present in the file 'solvers.csv'
PCNFoam
speciesSimpleNFoam
speciesPimpleNFoam
speciesPCNFoam
Describe the bug
Arch Linux 기반의 EndaevourOS에서, baramFlow Solver를 Parallel Run을 시도할 때 Segmentation error가 발생합니다.
하지만 Single core run은 잘 작동합니다.
추측되는 이유는, Arch AUR에서 발견할 수 있는 parmetis
패키지의 Build가 실패하기 때문에, 대신 parmetis-git
패키지로 대체하여 가장 최신 버전을 설치하였는데, 이 때문에 현재의 baramFlow Solver와 호환성 문제가 있는 것으로 보입니다.
EndeavourOS가 아닌 기본형 Arch Linux의 경우에는, parmetis
패키지가 잘 설치되고, baramFlow Solver의 Parallel Running이 잘 작동합니다.
In EndaevourOS based on Arch Linux, a Segmentation error occurs when attempting to parallel run the baramFlow Solver.
But Single core run works fine.
The presumed reason is that the build of the parmetis
package found in Arch AUR failed, so the most recent version was installed instead, replacing it with the parmetis-git
package, which caused a compatibility issue with the current baramFlow Solver. It appears that there is.
In the case of basic Arch Linux, not EndeavorOS, the parmetis
package is installed well, and Parallel Running of baramFlow Solver works well.
To Reproduce
Steps to reproduce the behavior:
parmetis-git
is installed from AURExpected behavior
Desktop (please complete the following information):
# Maintainer: Carlos Aznarán <[email protected]>
_base=ParMETIS
pkgname=${_base,,}-git
pkgver=r45.8ee6a37
pkgrel=1
arch=(x86_64)
pkgdesc="Parallel Graph Partitioning and Fill-reducing Matrix Ordering (git version)"
url="https://github.com/KarypisLab/${_base}"
license=('custom')
depends=(metis openmpi)
makedepends=(cmake git)
options=(docs)
source=(git+${url}.git#branch=main)
sha512sums=('SKIP')
provides=(${_base,,})
conflicts=(${_base,,})
pkgver() {
cd ${_base}
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
}
build() {
cd ${_base}
make config \
shared=1 \
cc=mpicc \
prefix=/usr \
gklib_path=/usr \
metis_path=/usr
}
package() {
cd ${_base}
make install DESTDIR="${pkgdir}"
install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
}
Add spatial discretization option for gradient
Describe the bug and To Reproduce
I am following the Installation Guide on the website. Once I get to the step where I run python -m baramFlow.main
it throws the following error
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/home/colin/build/baram/baramFlow/main.py", line 22, in <module>
from baramFlow.app import app
File "/home/colin/build/baram/baramFlow/app.py", line 14, in <module>
from baramFlow.coredb.region_db import RegionDB
File "/home/colin/build/baram/baramFlow/coredb/region_db.py", line 5, in <module>
from baramFlow.coredb.material_db import MaterialDB, Phase
File "/home/colin/build/baram/baramFlow/coredb/material_db.py", line 20, in <module>
class Specification(Flag):
File "/usr/lib/python3.11/enum.py", line 566, in __new__
raise exc
File "/usr/lib/python3.11/enum.py", line 279, in __set_name__
enum_class._flag_mask_ |= value
TypeError: unsupported operand type(s) for |=: 'int' and 'str'
Expected behavior
It should not throw an error
Desktop (please complete the following information):
When I try to import a mesh ( I tried both Gmsh and UNV mesh), I get the following error:
dyld[14675]: Library not loaded: /Users/jhgill/Applications/OpenFOAM/NextFOAM-v2206/platforms/darwin64ClangDPInt32Opt/lib/libmeshTools.dylib
Referenced from: <4602445A-AE1C-3728-B428-2286BA5BE0D4> /Users/tan/baram-mac/baram/solvers/openfoam/bin/ideasUnvToFoam
Reason: tried: '/Users/jhgill/Applications/OpenFOAM/NextFOAM-v2206/platforms/darwin64ClangDPInt32Opt/lib/libmeshTools.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/jhgill/Applications/OpenFOAM/NextFOAM-v2206/platforms/darwin64ClangDPInt32Opt/lib/libmeshTools.dylib' (no such file), '/Users/jhgill/Applications/OpenFOAM/NextFOAM-v2206/platforms/darwin64ClangDPInt32Opt/lib/libmeshTools.dylib' (no such file), '/usr/local/lib/libmeshTools.dylib' (no such file), '/usr/lib/libmeshTools.dylib' (no such file, not in dyld cache)
It is trying to find some file in /Users/jhgill !
Please check.
Is there something else I need to install to get this to work?
baram v.: 22.0.4
Hello. As it appears in this application GUI, support for locales exits. The relevant file for translation is likely to be one of those located at baram/resources/locale/. Though the present repository and that dedicated site both lack instructions covering the contribution to translations. That would be worth a mention accordingly somewhere.
Describe the bug
When I open the CaseWizard and then create a new case, I cannot go to the main page. An error occurred:
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 12 (X_ConfigureWindow)
Resource id in failed request: 0x9
Serial number of failed request: 7
Current serial number in output stream: 8
Desktop (please complete the following information):
ubuntu22.04
Is your feature request related to a problem? Please describe.
I'd like tooltips for the icons in the graphic toolbar. Currently, there are only icons, and it's confusing as to what each function does.
Describe the solution you'd like
Whether to make changes in the UI file or add them to the .py file, but it seems better to add them to the UI file.
Describe alternatives you've considered
Additional context
You can assign this task to me.
It would be a good idea to have tooltips for other buttons as well, but since the other buttons have strings, let's start by adding tooltips to the graphic toolbar buttons that only have icons.
Describe the bug
Microsoft Defender SmartScreen prevents the BARAM-v24.0.1-setup.exe from running as it is an unrecognised app. Publisher is listed as Unknown.
To Reproduce
Using Win11
Download latest release of BARAM v24.0.1-setup.exe
Attempt to run executable.
Implements a module that generates "constant/operatingConditions" openfoam configuration file from coreDB.
The .idea folder is an IntelliJ-specific folder that is typically not version-controlled. Despite having the .idea folder listed in the .gitignore file, it still remains. I would like to remove the .idea folder if possible. Feel free to assign me as the assignee if needed.
It would be helpful in the Display Control list to indicate which boundaries or geometry is currently hidden by making the Name grey in the list, otherwise you have to right click and check each to see the status Show/Hide.
Similar suggestion for the Display Mode, perhaps there could be a small graphic next to the Name indicating the display mode for each boundary or geometry.
I am getting an error like this:
"QSocketNotifier: Can only be used with threads started with QThread QObject::startTimer: Timers can only be used with threads started with `QThread"
when I run main.py file.
Anyone else running into this issue?
Describe the bug
When I clicked the refine button in step 4(Castellation), an error "missing 1 required positional argument: returncode".
Figure below:
To Reproduce
follow steps of tutorial example "Mixing Pipe"
Desktop (please complete the following information):
Additional context
Add any other context about the problem here.
Describe the bug
Clicking on the boundary conditions option in the menu does not show the boundary conditions (or do anything else). Whatever screen in the menu was previously selected stays there.
Log file
baram.log
Desktop (please complete the following information):
MacOS 10.15
Transient option is not supported by the solver for now.
Therefore, only steady(timeTransient=false) option is allowed if solverType is 'densityBased'
kernel v.: 6.0 | distribution: Fedora | baram v.: 22.0.4
Hello. The installation intructions are solely documented outside this repository, and that without informing of its existence via a dedicated link to that site. Therefore the presence here within section About of a link accordingly to that page would be appropriate; now by default filled as No description, website, or topics provided.
As per those instructions covering Unix/Linux, i was able to run the application successfully, on X.org, with perfect window management, on Wayland server, which is served by Mutter in my user session, with nearly perfect window management. That is traditional.
Observations in respect to installation instructions:
python3.9 -m venv venv
for the set-up of a virtual environment for Python |It appears that version 3.9 and newer are supported as i was able to run python3.11 -m venv venv
successfully. | Suggestion: Python 3.9 or newer is required to replace Python 3.9.x is required.solvers_linux_[version_number]
into the suggested destination, which would result in a non-found resource when attempting to compile the daemon. | Suggestion: Once the archive is uncompressed locate the folder solvers
and place it into the top (...)."Inviscid" model should be added.
the download link for the windows version on this site does not work:
https://nextfoam.github.io/baram-pages/docs/installation/
clicking the link leads to an "access denied" message:
AccessDenied
Access Denied
BNWASE7K6Z30A9NT
1Aa8CohXVySaEHQ+jghsNRXLHxqrxLc5NunkesRowLHwL4xDOkNlusOLX0Nq8zy5llFU5RX/Q/k=
Why the executable files in the "solvers" folder are not publicly version control? I suggest version controlling those files as well. If you want to version control them in a separate GitHub repository and provide them as compressed files instead of source code, it would be beneficial to utilize Git LFS (Large File Storage) for version controlling large files. If you utilize the Git Submodule feature, it is possible to establish connections between repositories. If all of this can be accomplished, it might be feasible to create a single script for the installation process. If you truly need assistance with these tasks, I can provide help.
Hello.
When I try to use my own solver , I encountered an error: the dynamic libraries have undefined symbol.
Can I use my own sovler with baram?How can I do it?
thanks!
Is your feature request related to a problem? Please describe.
it's currently tedious for complex mechanical assemblies to export all the STLs. Please support STEP import in BaramMesh
Describe the solution you'd like
When clicking on "import" step files are supported
This can be achieved using OpenCASCADE technology (OCCT) CAD kernel
Describe the bug
'Generating files' never finishes after pressing 'Start Calculation' (see screenshot)
To Reproduce
Steps to reproduce the behavior:
Expected behavior
'Generating Files' dialog finishes or shows an error
Desktop (please complete the following information):
Attaching a case directory too:
terrain_case.zip
Implements a module that generates "constant/turbulenceProperties" openfoam configuration file from coreDB.
Implements a module that generates "fvSchemes" openfoam configuration file from coreDB.
Hi, I'm a student trying to use BARAM for my thesis. Is there a guide to use BARAM? And is it possible to open on STL file made with, such as, AutoCAD with BARAM?
I propose the implementation of keyboard shortcuts and menu access keys to enhance the usability of baram. Please refer to the image below.
Firstly, access keys enable direct access to submenus by pressing Alt+ the first letter of each menu item. For instance, pressing Alt+F will display the submenu under File as shown in the image.
Shortcuts facilitate direct actions. For example, Ctrl+N, Ctrl+O, Ctrl+S, and Ctrl+Q are set to perform specific actions. Pressing Ctrl+N will have the same effect as clicking File->New.
Access keys can be easily added in the UI file by including an ampersand (&) before the relevant letter in the menu item names.
Setting up shortcuts involves adding a few lines of code (likely less than 20 lines) in the main_window.py file, such as:
self._ui.actionNew.setShortcut('Ctrl+N')
The functionality of these proposals has been confirmed by modifying the actual files. If this proposal sounds good, I am ready to make PRs to both baramMesh and Flow.
Describe the bug
After starting a step within BaramMesh, the button to launch process for that step changes caption to Cancel, but pressing it spawns a new set of SnappyHexMesh processes instead of killing the ones currently running.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Pressing "Cancel" should kill the currently-running instances of SHM.
Desktop (please complete the following information):
Implements a module that generates "controlDict" openfoam configuration file from coreDB.
Describe the bug
Gmsh mesh import fails
To Reproduce
Steps to reproduce the behavior:
Import attached Gmsh mesh
Expected behavior
The mesh is imported with errors
Implements a module that generates "fvOptions" openfoam configuration file from coreDB.
안녕하세요.
번역 프로세스 관련해서 진행이 빠르지 않은 것 같아 아래와 같이 의견 드립니다.
일단 Baram은 신규 기능이 활발히 업데이트 될 것으로 보여 이에 따라 기존에 했던 번역을 사용하기 어려워지는 상황이 발생할 것 같습니다.
현재 업로드된 한국버전 ts파일의 번역메세지가 약 1100개인데 비해 23.3.3버전에서 ts파일을 다시 추출하면 약 1700개로 상당한 차이가 납니다.
이에 아래와 같은 프로세스로 번역프로세스를 개선하는게 어떨까 싶습니다.
번역 참여자들이 ts파일을 개별 추출하지 않고 리포지토리에 있는 ts파일로 작업하게 하는 것이 핵심이 되겠습니다.
이렇게 하면 전체 번역 메세지가 몇 개인지도 알 수 있고 이 중 몇 개가 번역이 되어있는지, 즉 번역률도 언어별로 알 수 있습니다. 한국어 버전의 경우 약 50개 메세지만 번역이 되어있네요.
동의해주시면 이 이슈에 assign해주시고 baram_en.ts, en파일에 맞춰 최신화 해주는 파이썬 파일, 최신화된 ko, fi ts파일들을 작업해보도록 하겠습니다.
Hello, I remember that the old version(perhaps version 6?) of baram had Slurm support.
Currently, this menu is inactive. What is NEXTfoam's future roadmap for Slurm in a parallel environment?
Baram v.: 22.1.0 | The version can't be determined in GUI. It would be worth an option in GUI, e.g. About, aimed to inform at least the version of Baram, and ideally with the version of the underlying software, which i conceive is Qt.
Hello. In Qt Linguist using Qt v. 6.2.4, translated string "Error occurred:\n" belonging to context ProcessInformationPage has no effect in Baram though the conversion appeared to be processed successfully for the related code section; output truncated:
(venv) [(...)]$ python convertUi.py
[78/83] Converting... process_information_page.ui -> process_information_page_ui.py
문서페이지의 튜토리얼 중 2번째 문제(https://baramcfd.org/tutorials/2023/09/05/AhmedBody-post/) 인 Ahmed Body를 하던 중에 Force 모니터가 생각한대로 출력이 되지 않습니다.
그림을 보면 (아직 수렴이 다 되지 않았지만) Cd는 약 0.32로 실험값과 비슷한데 비해 Cl은 약 -2.5로 실험값과 부호와 크기가 큰 차이가 납니다.
GUI에서 Reference Values 항목의 Operating Pressure값을 바꿔도 Cl이 동일합니다.
모니터 Plot과 postProcessing폴더의 텍스트 파일 둘 다 확인하였습니다.
이에 대한 원인을 분석 중 pRef가 잘못 들어가는 것이 아닌가 추정됩니다.
baram에 의해 만들어진 control dict의 force function을 살펴보면
patches
(
...
);
rho rho;
Aref 0.056;
lRef 1;
magUInf 40;
rhoInf 1.2;
dragDir
(1 0 0);
liftDir
(0 1 0);
CofR
(0 0 0);
...
이런식으로 되어있습니다.
여기에 pRef값이 없습니다.
텍스트 에디터로 강제로 아래 문구를 추가하면 (forces, forceCoeffs 둘 다)
patches
(
...
);
// Reference pressure [Pa]
pRef 101325;
rho rho;
...
다음 그림과 같이 Cl이 0.37정도로 다른 참고문헌들과 비슷해집니다.
윈도우 v24.1.3에서 테스트 하였습니다. 리눅스에서는 값이 이상한 것만 확인하였습니다. libforce 자체가 이상한 것 같진 않고 controldict를 작성하는 부분만 잘못된 것 아닌가 생각합니다.
kernel v.: 6.0 | distribution: Fedora | baram v.: 22.0.4 | window system: Wayland (served by Mutter in my user session)
Hello. Running BARAM:
[(...)]$ python3.11 -m venv venv && source ./venv/bin/activate
(venv) [(...)]$ python main.py
Warning: Ignoring WAYLAND_DISPLAY on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
Rolling menus can be detached from their window. Not reproducible on X.org. Illustration:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.