Distort (transform) Mesh by formula I have a simple explicit formula F(x,y,z) = (f1(x,y,z),f2(x,y,z),f3(x,y,z)) and a mesh.

As an illustrating example (not the actual one) F(x,y,z) = (x+0.1*y*y,y-0.1*x*z,z+0.1*z*x), and say that the mesh is the usual monkey head.

I would like to modify the mesh by changing the position of each vertex but not the structure of the mesh. I want to do it one go: I am not creating an animation. There already are plenty of tools/modifiers that do that. However, I want the change of position to be precisely given by applying F to the position (x,y,z) of each vertex of the standard monkey head.

Is there a tool or an addon for that?
wouldn't a simple script work for you, something like this:

import bpy  
obj = bpy.context.object  
verts = obj.data.vertices  
for v in verts:  
    x,y,z = v.co[:]  
    v.co = (x+0.1*y*y, y-0.1*x*z, z+0.1*z*x)