def add_to_Cfunc_dict__find_dsmin(rel_path_to_Cparams=os.path.join('./')):
    gridsuffix = ''
    desc = 'Find dsmin = min_i sqrt(ghat_{ii} dx^i dx^i)'
    c_type = 'REAL'
    name = ('find_dsmin' + gridsuffix)
    params = 'const paramstruct *restrict params, const int i0i1i2[3], const REAL *restrict xx[3]'
    body = '\n  REAL dsmin = 1e38; // Start with a crazy high value... close to the largest number in single precision.\n  const REAL xx0 = xx[0][i0i1i2[0]];\n  const REAL xx1 = xx[1][i0i1i2[1]];\n  const REAL xx2 = xx[2][i0i1i2[2]];\n'
    ds_drn = ds_dirn(gri.dxx, append_gridsuffix_to_xx=False)
    body += '  REAL ds_dirn0, ds_dirn1, ds_dirn2;\n'
    body += outputC([ds_drn[0], ds_drn[1], ds_drn[2]], ['ds_dirn0', 'ds_dirn1', 'ds_dirn2'], 'returnstring', params='outCverbose=false,includebraces=false').replace('dxx0', ('dxx0' + gridsuffix)).replace('dxx1', ('dxx1' + gridsuffix)).replace('dxx2', ('dxx2' + gridsuffix))
    body += '\n#ifndef MIN\n#define MIN(A, B) ( ((A) < (B)) ? (A) : (B) )\n#endif\n'
    indent = ''
    body += (indent + '  // Set dsmin = MIN(dsmin, ds_dirn0, ds_dirn1, ds_dirn2):\n')
    body += (indent + '  return MIN(dsmin, MIN(ds_dirn0, MIN(ds_dirn1, ds_dirn2)));\n')
    add_to_Cfunction_dict(includes=[os.path.join(rel_path_to_Cparams, 'NRPy_basic_defines.h')], desc=desc, c_type=c_type, name=name, params=params, body=body, rel_path_to_Cparams=rel_path_to_Cparams)
def add_to_Cfunc_dict__find_dsmin(rel_path_to_Cparams=os.path.join('./')):
    gridsuffix = 
    desc = 'Find dsmin = min_i sqrt(ghat_{ii} dx^i dx^i)'
    c_type = 'REAL'
    name = ('find_dsmin' + gridsuffix)
    params = 'const paramstruct *restrict params, const int i0i1i2[3], const REAL *restrict xx[3]'
    body = '\n  REAL dsmin = 1e38; // Start with a crazy high value... close to the largest number in single precision.\n  const REAL xx0 = xx[0][i0i1i2[0]];\n  const REAL xx1 = xx[1][i0i1i2[1]];\n  const REAL xx2 = xx[2][i0i1i2[2]];\n'
    ds_drn = ds_dirn(gri.dxx, append_gridsuffix_to_xx=False)
    body += '  REAL ds_dirn0, ds_dirn1, ds_dirn2;\n'
    body += outputC([ds_drn[0], ds_drn[1], ds_drn[2]], ['ds_dirn0', 'ds_dirn1', 'ds_dirn2'], 'returnstring', params='outCverbose=false,includebraces=false').replace('dxx0', ('dxx0' + gridsuffix)).replace('dxx1', ('dxx1' + gridsuffix)).replace('dxx2', ('dxx2' + gridsuffix))
    body += '\n#ifndef MIN\n#define MIN(A, B) ( ((A) < (B)) ? (A) : (B) )\n#endif\n'
    indent = 
    body += (indent + '  // Set dsmin = MIN(dsmin, ds_dirn0, ds_dirn1, ds_dirn2):\n')
    body += (indent + '  return MIN(dsmin, MIN(ds_dirn0, MIN(ds_dirn1, ds_dirn2)));\n')
    add_to_Cfunction_dict(includes=[os.path.join(rel_path_to_Cparams, 'NRPy_basic_defines.h')], desc=desc, c_type=c_type, name=name, params=params, body=body, rel_path_to_Cparams=rel_path_to_Cparams)