Tutorial Video Overviews
Learning to use PHASTA involves a lot of non-trivial steps, each that have a significant learning curve. Videos are a natural way to learn but we have accumulated a lot of them and this makes it daunting to start. The purpose of this page is to organize and index that knowledge and make it more enabling to self-paced learning.
Here are notes going over the contents of the different tutorial videos with the goal of helping others find tutorial videos of use to them.
See Meta for details on adding new entries.
Contents
- 1 Video Table
- 2 Video Notes
- 2.1 BlancoBuidingPHASTA.mov
- 2.2 CloneFromGithubAndBranch.mov
- 2.3 JamesW_pt2.mov
- 2.4 JamesW_pt1.mov
- 2.5 PHASTA_workflow_RB.mkv
- 2.6 VNC_tutorialLonger.mov
- 2.7 VNC_tutorial.mov
- 2.8 MeldChangesAcrossBranches.mov
- 2.9 Mesh-Partition-Run_MatlabGeneratedMesh_RB.mkv
- 2.10 RajDemoPrepSolvePost.mov
- 2.11 PrepSolvePostBLandC.mp4
- 2.12 MatLabMeshAndConvert.mov
- 3 Meta
Video Table
Video Name | Date | Software Used | Description | More Notes | Misc. Tags |
---|---|---|---|---|---|
CompressibleSimModeler.mov | 2021-06-15 | SimModeler | Setting up a mesh and attributes for a compressible case within SimModeler. Explanation of 2D boundary layers, Extrusion Mesh, Mesh refinement, and attributes for compressible cases. | ||
BlancoBuidingPHASTA.mov | 2020-05-19 | git, CMAKE, viznodes | Build PHASTA on the viznodes with a particular branch/ debug errors extracted from compiler output | ||
CloneFromGithubAndBranch.mov | 2020-05-19 | git | Create a clone of PHASTA git repo. Navigate to the branch of interest | ||
JamesW_pt2.mov | 2020-02-11 | Chef, Globus, ALCF Theta, PHASTA | Transfer partitioned mesh via globus to Theta, build and run a partitioning of/with chef on Theta, build and submit PHASTA simulation on Theta. | ||
JamesW_pt1.mov | 2020-02-11 | Chef, Interpolation, ALCF Cooley | Create a fine mesh via MATLAB, interpolate the solution from an existing simulation to the initial condition of the fine mesh via chef partitioning on Cooley | ||
PHASTA_workflow_RB.mkv | 2020-01-23 | SimModeler, Chef, PHASTA, Paraview | Model via SimModeler, Partition via Chef, Run PHASTA, visualize results via Paraview | ||
VNC_tutorialLonger.mov | 2019-12-09 | VNC, viznode | login to viznodes/ close existing sessions | ||
VNC_tutorial.mov | 2019-12-09 | VNC, viznode | login to viznodes | ||
MeldChangesAcrossBranches.mov | 2020-05-19 | git, viznode | Meld changes across git branches | ||
Mesh-Partition-Run_MatlabGeneratedMesh_RB.mkv | 2019-11-19 | viznode, ALCF, MATLAB mesh, Chef, running PHASTA, SST model run, MATLAB post process | Create a mesh via MATLAB, partition mesh via Chef viznode, partition mesh via Chef ALCF, Run RANS/IDDES turbulence models, Accumulate and visualize Spanwise averages via MATLAB. | ||
RajDemoPrepSolvePost.mov | 2019-05-13 | viznode, convert, Chef, running PHASTA, Paraview | Partition a mesh via chef, Run a simulation via PHASTA, Post-process via Paraview | ||
PrepSolvePostBLandC.mp4 | 2020-04-15 | SimModeler, vglconnect | Partition a mesh via chef, Run a simulation via PHASTA, Post-process via Paraview | viznode, running PHASTA, Post proccessing | Jump to notes below. |
Raj_demo.mov | 2019-05-12 | SimModeler, vglconnect |
|
N/A | viznode, meshing |
MatLabMeshAndConvert.mov | 2019-09-09 | Matlab, StructMesh_Channel.m, runMatchedNodeElmReader.sh |
|
Jump to Notes Below | Channel, Bump, meshing |
SpanWiseAveragingPostProcessing.mov | 2020-02-11 | Matlab, Spanwise averaging Matlab scripts, PHASTA |
|
N/A | post-processing |
barfiletoolsTutorials (1-3) | 2021-03-23 | Python, VTKpytools, Barfiletools |
|
N/A | post-processing |
Video Notes
BlancoBuidingPHASTA.mov
Time Stamps
Time | Notes |
---|---|
0:00 | preliminaries: Committing the code that is to be built to the git repo. |
3:30 | Constructing build directory/enviornment variables on viz nodes |
5:50 | build PHASTA executable/debug to be able to compute element size |
Notes
After 5:50 of this video is a debugging exercise to get the code to compile on the viznodes.
CloneFromGithubAndBranch.mov
Time Stamps
Time | Notes |
---|---|
0:00 | Find the clone link via github online |
2:00 | Perform clone on viznodes |
3:00 | Navigate to branch of PHASTA on git |
JamesW_pt2.mov
Time Stamps
Time | Notes |
---|---|
0:00 | Partition case further for Cooley run |
25:00 | On Cooley node with Chef. |
30:00 | Further Partitioning |
49:00 | Setting up globus data transfer |
49:00 | Globus data transfer |
1:00:00 | Theta partition |
1:00:00 | ALCF Theta partition/Build Chef on Theta |
1:40:00 | ALCF Theta build PHASTA on Theta |
2:04:00 | ALCF Theta run Chef |
JamesW_pt1.mov
Time Stamps
Time | Notes |
---|---|
0:00 | Flat Plate Meshing with Tetrahedron |
17:00 | Cooley Interpolation of one Solution to another for IC |
24:00 | Interpolation Code overview |
36:00 | Run Chef on Cooley to partition MATLAB generate mesh |
Notes
The last half of this video is debugging on Cooley for Chef
PHASTA_workflow_RB.mkv
Time Stamps
Time | Notes |
---|---|
0:00 | On the a terminal: connecting to worknodes |
1:20 | Problem Definition setup: create Model via SimModeler |
27:00 | Convert SimModeler Mesh to simmetrix Mesh/Partition Problem via Chef |
41:00 | Run PHASTA with partitioned mesh |
53:30 | Visualization via Paraview |
VNC_tutorialLonger.mov
Time Stamps
Time | Notes |
---|---|
0:00 | Advanced workspace: VNC settings screen size |
1:30 | Advanced workspace: cmd on toolbar/worknodes description |
3:35 | Advanced workspace: top |
6:10 | Creating new session |
12:50 | Advanced workspace: Connecting to a co-worker's session |
15:53 | Advanced workspace: find and cleaning up a many sessions |
18:00 | Discussions |
VNC_tutorial.mov
Time Stamps
Time | Notes |
---|---|
0:00 | Description of end goal of user interface/ ssh demo/ port setup |
7:15 | Tunnel to created port number,portal1 |
8:00 | closeout/ connect back |
MeldChangesAcrossBranches.mov
Time Stamps
Time | Notes |
---|---|
0:00 | Initial description of git meld proccess |
3:00 | Meld of the two file trees in phSolver/common |
11:00 | Meld of the two file trees in phSolver/incompressible |
Mesh-Partition-Run_MatlabGeneratedMesh_RB.mkv
Time Stamps
Time | Notes | |
---|---|---|
0:00 | Create a mesh via MATLAB tool | |
5:00 | Convert MATLAB mesh to SCOREC Mesh | |
7:50 | Chef partitioning/<>.spj Attribute file | |
10:00 | Run RANS/ STGInflow.dat file description | |
12:20 | Spanwise averaging control/output | |
16:40 | MATLAB post-proccessing | |
19:50 | DEPRECIATED: ALCF CETUS Partitioning Chef | |
23:20 | DEPRECIATED: Run on ALCF CETUS | |
28:00 | Post-proccess IDDES data via MATLAB | |
33:20 | 2-D Mesh creation/Accumulate Time average |
Notes
Partition a mesh via chef, Run a simulation via PHASTA, Post-process via Paraview
RajDemoPrepSolvePost.mov
Time Stamps
Time | Notes |
---|---|
2:14 | Convert a mesh from SimModeler |
8:00 | Partition via Chef |
18:40 | Setup Run directory |
22:40 | Execute PHASTA |
32:20 | Setup/Overview Paraview |
37:00 | Post processing/ visualization of solution via Paraview |
Notes
Partition a mesh via chef, Run a simulation via PHASTA, Post-process via Paraview
PrepSolvePostBLandC.mp4
Time Stamps
Time | Notes |
---|---|
0:00 | Intro/ environment setup |
5:00 | Construct Partitioning directory with model files |
7:10 | Create sub directory and convert Model |
9:40 | Partition method after conversion step |
13:10 | PHASTA Run directory setup |
16:30 | Running PHASTA |
20:20 | Post processing/ visualization of solution via Paraview |
Notes
Partition a mesh via chef, Run a simulation via PHASTA, Post-process via Paraview
MatLabMeshAndConvert.mov
Time Stamps
Time | Notes |
---|---|
0:00 | Begin reviewing code of the Matlab scripts |
10:30 | Run Example Script |
12:45 | Observing the files generated by Matlab |
13:40 | Discussion of using matchedNodeElmReader
|
14:50 | Running of runMatchedNodeElmReader.sh script
|
16:10 | Viewing mesh in Paraview |
Notes
Create structured meshes using Matlab script created by Riccardo and other tools, such as the matched node element reader utility.
Matlab script defines the "values" of the mesh to be generated, while matchedNodeElmReader
actually generates the mesh files themselves.
Note that matchedNodeElmReader
may also be referred to/named as streamMds
.
Result of Matlab script is 5 different files:
*.crd
|
Coordinates of each vertex |
*.class
|
Classification with respect to the geometrical model (a box in this case) |
*.cnn
|
Connectivity of each element |
*.fathers2D
|
2D grid of the fathers, Used in spanwise averaging |
*.match
|
"vertex matching flag" for periodic boundary conditions |
matchedNodeElmReader
then takes these files as input and generates two directories: outMesh
and rendered
.
The rendered
is a way to view the mesh in Paraview.
The code is run with:
mpirun -np 1 matchedNodeElmReader *.cnn *.crd *.match *.class *.fathers2D output_model.dmg outputMeshDir/
where in the tutorial matchedNodeElmReader
is located at /users/rbalin/matchedReader/build-addNfathDebug/test/matchedNodeElnReader
.
The mesh files (SCOREC Mesh, *.smb
) are then placed inside the output mesh directory.
A usage message can be shown by running the executable without any arguments.
This command can also be run with multiple MPI processes. Note that this process does "preliminary" partitioning, so the number of mpi processes used is the number of *.smd
. The nodes are stored in z, y, x major order (which is generally spanwise, wall-normal, streamwise order), so Riccardo recommends that the number of mpi processes be evenly divisible by the number of streamwise nodes such that these partitions are not divided unevenly.
Once this is done, the *.smb
and *.dmg
files are fed to Chef for further partitioning and processing.
Meta
Editing the Wiki Page
Just login to the wiki (click the login button at the top right of the page) and click the edit tab at the top of the page. Login information will be the same as your original login for jumpgate (the wiki password is not updated with your jumpgate password if you changed it)
Filling in New Entries
Video Name | Date | Software Used | Description | Misc. Tags |
---|---|---|---|---|
Should be the exact name of the video file and should have a link to the actual video. | ISO format (YYYY-MM-DD) | List of software used, including relevant scripts | Short description of what was done in the video | Place for random key words that don't fit in other categories (ie. used for using the browsers search function) |