[VARS] #Define the various parameters that are updated each workflow sig_xy = 3.0e-4 sig_z = 6.0e-5 gun_scale = 2.00e6 gun_freq_shift = 1.98e6 gun_phase = 0.0 gun_fid = 300 [PATHS] #Define paths to where the executables are found omega3p_path = /global/cfs/cdirs/ace3p/perlmutter/CPU/omega3p acdtool_path = /global/cfs/cdirs/ace3p/perlmutter/CPU/acdtool impactt_path = /global/cfs/cdirs/ace3p/perlmutter/CPU/ImpactTexeDisc workflow_path = workflow_test_single [RUN_PARAMETERS] #Define run command, HPC options, and list of static files needed for workflow A3PI_mode = single acdtool_cores = 128 impactt_cores = 64 static_files = SRF-GUN-cathR10mm.ncdf [OMEGA3P_MODE_1] #Define an Omega3P simulation for a specific mode #See Omega3P user guide for more information #file = input filename (file will be generated automatically) file = cavity_1.omega3p #cores = number of tasks and cores needed for simulation tasks = 16 cores = 16 #Define mode file ID to be consistant with ImpactT mode_fid = ${VARS:gun_fid} #Define mesh filename from either a static .ncdf file or cubit_element_* ModelInfo_File = SRF-GUN-cathR10mm.ncdf ModelInfo_Tolerant = 1 #Set boundary conditions for surfaces (sep. bc types with a comma) ModelInfo_BoundaryCondition = magnetic 1 2 5, electric 6 #Set finite element order and curved surfaces option FiniteElement_Order = 2 FiniteElement_CurvedSurfaces = on #Define eigensolver data and tolerances EigenSolver_NumEigenvalues = 1 EigenSolver_FrequencyShift = ${VARS:gun_freq_shift} [RFPOST_MODE_1] #Define parameters for acdtool postprocess routine #See acdtool user guide for more information #file = input filename (file will be generated automatically from template) file = rfpost_1.in #Set RFField parameters RFField_ResultDir = omega3p_results RFField_FreqScanID = 0 RFField_ModelID = 0 RFField_xsymmetry = magnetic RFField_ysymmetry = magnetic RFField_gradient = -1 RFField_cavityBeta = 1.0 RFField_reversePowerFlow = 0 RFField_x0 = 0.0 RFField_y0 = 0.0 RFField_gz1 = -0.375 RFField_gz2 = 0.668 RFField_npoint = 1000 RFField_fmnx = 20 RFField_fmny = 20 RFField_fmnz = 100 #Set OpenPMD_IMPACT parameters OpenPMD_IMPACT_ionoff = 1 OpenPMD_IMPACT_nx = 101 OpenPMD_IMPACT_ny = 101 OpenPMD_IMPACT_nz = 301 OpenPMD_IMPACT_x1 = -0.015 OpenPMD_IMPACT_x2 = 0.015 OpenPMD_IMPACT_y1 = -0.015 OpenPMD_IMPACT_y2 = 0.015 OpenPMD_IMPACT_z1 = 0.000 OpenPMD_IMPACT_z2 = 0.300 [IMPACTT_PARAMETERS] #Define the ImpactT input parameters (line numbers 1-9 here) #See ImpactT user guide for more information #processors = col row procs = 8 8 #steps = dt Nstep Nbunch steps = 4.0e-12 2000000 1 #parts = PSdim Npart integF errF diagF imchgF imgCutOff parts = 6 10000 1 0 2 0 0.02 #mesh = Nx Ny Nz bcF Rx Ry Lz mesh = 32 32 32 1 0.15 0.15 1.0e5 #dist = distType restartF substepF Nemission Temission dist = 112 0 0 1300 6.5e-11 #*dist = sig* sigp* mu*p* *scale p*scale xmu* xmu* xdist = ${VARS:sig_xy} 0.001 0.0 1.0 1.0 0.0 0.0 ydist = ${VARS:sig_xy} 0.001 0.0 1.0 1.0 0.0 0.0 zdist = ${VARS:sig_z} 0.0014 0.0 1.186189e-6 1.0 0.0 0.002 #beam = I/A Ek/eV Mc2/eV Q/e freq/Hz phs/rad beam = 0.26 1.0 0.511005e6 -1.0 1.3e9 0.0 [IMPACTT_LATTICE] #Define the ImpactT lattice (line numbers 10+ here) #See ImpactT user guide for more information #Start 3D SC elem_00 = 0.0 1 20 -5 -2.0 -2.0 -2.0 #SRF gun element elem_01 = 0.3 105 20 111 0.0 ${VARS:gun_scale} 2.0E8 ${VARS:gun_phase} ${VARS:gun_fid} 0.1 0.0 0.0 0.0 0.0 [WORKFLOW] #Define sequence of tasks for this workflow task_01 = omega3p 1 task_02 = rfpost 1 task_03 = impactt 2