  We derive and analyse a new iterative algorithm for detecting network
core--periphery structure. Using techniques in nonlinear Perron-Frobenius
theory, we prove global convergence to the unique solution of a relaxed version
of a natural discrete optimization problem. On sparse networks, the cost of
each iteration scales linearly with the number of nodes, making the algorithm
feasible for large-scale problems. We give an alternative interpretation of the
algorithm from the perspective of maximum likelihood reordering of a new
logistic core--periphery random graph model. This viewpoint also gives a new
basis for quantitatively judging a core--periphery detection algorithm. We
illustrate the algorithm on a range of synthetic and real networks, and show
that it offers advantages over the current state-of-the-art.
