Tutorial Video Overviews

From PHASTA Wiki
Jump to: navigation, search

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.

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
  • Overview of using portal1/viznodes, how/when to use vglconnect etc (first ~10 minutes)
  • Use of SimModeler for creating unstructured mesh of a windtunnel
N/A viznode, meshing
MatLabMeshAndConvert.mov 2019-09-09 Matlab, StructMesh_Channel.m, runMatchedNodeElmReader.sh
  • Using Riccardo's Matlab script (StructMesh_Channel.m) to create structured mesh for LES_DNS simulation
  • Converting that mesh for use with Chef using runMatchedNodeElmReader.sh
Jump to Notes Below Channel, Bump, meshing
SpanWiseAveragingPostProcessing.mov 2020-02-11 Matlab, Spanwise averaging Matlab scripts, PHASTA
  • Viewing required settings for PHASTA to create spanwise averaged statistic files
  • Using Riccardo's Matlab script to take those files and plot them
N/A post-processing
barfiletoolsTutorials (1-3) 2021-03-23 Python, VTKpytools, Barfiletools
  • Overview of using the Barfiletools module for post-processing spanwise averaged results
  • Goes over the three steps described in 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)