With the global variable vector_of_side_lengths properly defined in the set_input_parameters.m routine, the mesh_coreshell.m m-file generates a Delaunay-triangulated grid of points that discretizes the NW crosssectional geometry using the built-in initmesh MATLAB function . Specifically, the initmesh function utilizes a decomposed geometry matrix, g , and outputs the matrices p, e, and t for point, edge, and triangular mesh data (p and e are stored as global variables that are used by several other routines in HADOKEN). For simplicity, the same mesh grid is used for both the Schrödinger and Poisson equations. The average side length of the individual triangles forming this finite element mesh is computed and stored in the global variables avg_side_length_schrod and avg_side_length_poiss, which are used by several of the other MATLAB m-files. Fig. shows representative hexagonal/triangular cross-sectional geometries and finite element grids that are automatically plotted by the the builtin pdemesh MATLAB function in HADOKEN. It is also important to note that researchers interested in different NW cross-sections can construct a customized geometry matrix, g (see Ref. for further details), which can use the same iteration scheme (discussed further below) in the HADOKEN code for their own self-consistent calculations.