Construct a physical domain with the help of transformation of a reference domain

You need to create a perturbation function (uh) in the example above, that is the difference between the deformed domain and the reference domain (if you want to use +=), or you can simply use

mesh.geometry.x[:, :mesh.geometry.dim] = your_transformation_function(mesh.geometry.x)
where the my_transformation_function(x) takes in an x that is (3, num_points), i.e. each column will be the x,y,z coordinate of a node in the mesh.

You could also see: Changing the shape in the surface normal directions - #6 by dokken for more code explaining different deformation techniques.