  Preferential attachment (PA) network models have a wide range of applications
in various scientific disciplines. Efficient generation of large-scale PA
networks helps uncover their structural properties and facilitate the
development of associated analytical methodologies. Existing software packages
only provide limited functions for this purpose with restricted configurations
and efficiency. We present a generic, user-friendly implementation of weighted,
directed PA network generation with R package wdnet. The core algorithm is
based on an efficient binary tree approach. The package further allows adding
multiple edges at a time, heterogeneous reciprocal edges, and user-specified
preference functions. The engine under the hood is implemented in C++. Usages
of the package are illustrated with detailed explanation. A benchmark study
shows that wdnet is efficient for generating general PA networks not available
in other packages. In restricted settings that can be handled by existing
packages, wdnet provides comparable efficiency.
