beam generation