Move a bone without using bpy.ops?

Hi All,

I am trying to move a bone without using bpy.ops.

Here is what I have so far: (Using FatBastard character from Blendswap)

import bpy
import mathutils

ob =["FatBastard"]
arm =
bone_root = arm.bones["BASE"]
mx = bone_root.matrix

new_bone_loc = (1.0,2.0,3.0)
vec = mathutils.Vector(new_bone_loc)
mat_trans = mathutils.Matrix.Translation(vec)

The question is how do re-integrate the translation part back into the bone and update Blender so the new position is used?