def libra_vertex_cut(
    nc,
    node_degree,
    edgenum_unassigned,
    community_weights,
    u,
    v,
    w,
    out,
    N,
    N_e,
    dataset,
):
    """
    This function invokes C/C++ code for Libra based graph partitioning.
    Parameter details are present in dgl/src/array/libra_partition.cc
    """
    _CAPI_DGLLibraVertexCut(
        nc,
        to_dgl_nd_for_write(node_degree),
        to_dgl_nd_for_write(edgenum_unassigned),
        to_dgl_nd_for_write(community_weights),
        to_dgl_nd(u),
        to_dgl_nd(v),
        to_dgl_nd(w),
        to_dgl_nd_for_write(out),
        N,
        N_e,
        dataset,
    )

    This function invokes C/C++ code for Libra based graph partitioning.
    Parameter details are present in dgl/src/array/libra_partition.cc
    
python/dgl/_sparse_ops.py