|
From: Cosimo L. <cos...@as...> - 2022-02-17 09:36:20
|
Hello Sai,
Sorry my previous message missed an important part in the script. Here is the updated one
When you use GPUs you need to import surfaces and use the emit/surf instruction instead of the emit/face.
If you want to replicate the simulation rectangular box, you can do something like this:
# here box.surf is a surface file obtained from the stl2surf.py tool script. I created it through a CAD software
read_surf box.surf trans 0.000005 0.000005 0.000005 scale 0.001 0.001 0.001 group wall invert
surf_collide 1 diffuse 300.0 0.9
surf_modify wall collide 1
# here I create a region to apply different boundary conditions to the transversal walls perpendicular to z
region zmin block 0.0 0.01001 0 0.00101 0 0.000006
region zplus block 0.0 0.01001 0 0.00101 0.0004 0.00041
region zwalls union 2 zmin zplus
group specular surf region zwalls center
surf_collide 2 diffuse 300 0
surf_modify specular collide 2
# here I create the inlet and outlet regions
region xmin block 0.0 0.00001 0 0.00101 0 0.00041
group inlet surf region xmin center
region xplus block 0.00999 0.01001 0 0.00101 0 0.00041
group outlet surf region xplus center
# apply boundary conditions to selected inlet and outlet surfaces
surf_collide 3 vanish
surf_modify inlet collide 3
surf_modify outlet collide 3
fix X_in emit/surf Ar inlet subsonic ${pi} $T
fix X_out emit/surf Ar outlet subsonic ${po} NULL
I suggest you to read the documentation of every single call of this example to really understand what regions are doing.
I am attaching the box.surf in case you don’t have a way to generate it.
Please note that in the box.surf file dimensions are in millimiters.
You will need to adapt your simulation box dimensions to be larger the maximum dimension along each direction that you find in the box.surf file.
Hope it helps and best regards,
Cosimo
From: Jixiong He via sparta-users <spa...@li...<mailto:spa...@li...>>
Sent: Thursday, February 17, 2022 2:37 AM
To: spa...@li...<mailto:spa...@li...>
Subject: [sparta-users] Setting pressure boundary condition to run Sparta through kokkos package on GPUs
CAUTION: This message is from an external sender
Dear Sparta Users,
Could someone please help me set pressure boundary conditions for GPU runs?
Currently, I am using the subsonic command to set the pressure and temperature of the boundary. It works well on CPUs. However, when I tried the same code on GPUs, it showed that "Error on proc 0: Cannot yet use fix emit/face/kk with subsonic emission".
It is very popular to set pressure and temperature of boundary conditions in DSMC simulations. Is there any other way to achieve the pressure boundary condition running Sparta on GPUs?
Thanks in advance for any assistance on this problem.
Regards,
Sai
--
Jixiong (Sai) He, Ph.D.
Mechanical and Aerospace Engineering
North Carolina State University
-- The information contained in this communication and any attachments is confidential and may be privileged, and is for the sole use of the intended recipient(s). Any unauthorized review, use, disclosure or distribution is prohibited. Unless explicitly stated otherwise in the body of this communication or the attachment thereto (if any), the information is provided on an AS-IS basis without any express or implied warranties or liabilities. To the extent you are relying on this information, you are doing so at your own risk. If you are not the intended recipient, please notify the sender immediately by replying to this message and destroy all copies of this message and any attachments. Neither the sender nor the company/group of companies he or she represents shall be liable for the proper and complete transmission of the information contained in this communication, or for any delay in its receipt. -- The information contained in this communication and any attachments is confidential and may be privileged, and is for the sole use of the intended recipient(s). Any unauthorized review, use, disclosure or distribution is prohibited. Unless explicitly stated otherwise in the body of this communication or the attachment thereto (if any), the information is provided on an AS-IS basis without any express or implied warranties or liabilities. To the extent you are relying on this information, you are doing so at your own risk. If you are not the intended recipient, please notify the sender immediately by replying to this message and destroy all copies of this message and any attachments. Neither the sender nor the company/group of companies he or she represents shall be liable for the proper and complete transmission of the information contained in this communication, or for any delay in its receipt.
|