1 of 6

M3D-C1 Meeting�Nate Ferraro�July 8, 2024

2 of 6

Agenda

  • Status update & recent code changes

  • Jardin - Numerical (in)stability with toroidal rotation

  • Clauser - Impact of resistivity definition on CQ duration

  • Other issues?

2

3 of 6

Regression Tests

commit 0d2586a783d1fa0b3b940dae1e5e5b4dfd98c8aa

Date: Sun Jul 7 01:48:58 2024 -0400

  • Stellar (m3dc1/devel): PASSED*
  • Perlmutter CPU (m3dc1/devel-cpu): PASSED*
  • PPPL Cluster (m3dc1/devel-centos7): PASSED*
  • Flux (m3dc1/devel): PASSED*

* On all systems: adapt regtest fails after adaptation with an HDF5 write error.

3

4 of 6

Recent Code Changes

  • Zhou: added diagnostic to output VPD as defined by Paul, Hudson, & Helander
    • VPD = int[ dV 𝚯( 𝜅 |∇T|2 − 𝜅|∇T|2) ] / int[dV]
    • Characterizes the fractional volume where parallel transport dominates

  • Zhou: generalized nperiods to allow values different from VMEC’s nfp parameter (still need nfp to be divisible by nperiods).

  • Ferraro: added separate PUMI_UTIL_DIR directory in makefiles to point to directory containing m3dc1_meshgen (which differs from SCOREC_UTIL_DIR)

  • Ferraro: added IDL command plot_frames

4

5 of 6

plot_frames example

  • plot_frames is for outputting a series of plots at regular time intervals to make movies
    • IDL> plot_frames, ‘p’, file=’C1.h5’, /mks, /iso, range=[0, 6e5], dt=10, outfile=’p_frame’
    • This will write frames evenly spaced at 10 units of time apart (or as closely as possible) to “p_frame_####.eps”
    • Takes the same arguments as plot_field

  • Still need to convert the frames into a movie. This can be done on the command line using ImageMagick and ffmpeg:
    • mogrify -format jpg *.eps
    • ffmpeg -r 2 p_frame_%04d.jpg -vcodec libx264 -crf 25 -pix_fmt yuv420p p.mp4

5

6 of 6

Other issues

6