  We present a new 2D axisymmetric code, cuDisc, for studying protoplanetary
discs, focusing on the self-consistent calculation of dust dynamics, grain size
distribution and disc temperature. Self-consistently studying these physical
processes is essential for many disc problems, such as structure formation and
dust removal, given that the processes heavily depend on one another. To follow
the evolution over substantial fractions of the disc lifetime, cuDisc uses the
CUDA language and libraries to speed up the code through GPU acceleration.
cuDisc employs a second-order finite-volume Godonuv solver for dust dynamics,
solves the Smoluchowski equation for dust growth and calculates radiative
transfer using a multi-frequency hybrid ray-tracing/flux-limited-diffusion
method. We benchmark our code against current state-of-the-art codes. Through
studying steady-state problems, we find that including 2D structure reveals
that when collisions are important, the dust vertical structure appears to
reach a diffusion-settling-coagulation equilibrium that can differ
substantially from standard models that ignore coagulation. For low
fragmentation velocities, we find an enhancement of intermediate-sized dust
grains at heights of ~ 1 gas scale height due to the variation in collision
rates with height, and for large fragmentation velocities, we find an
enhancement of small grains around the disc mid-plane due to collisional
''sweeping'' of small grains by large grains. These results could be important
for the analysis of disc SEDs or scattered light images, given these
observables are sensitive to the vertical grain distribution.
