set_state_variable supports ints, floats and booleans, but if setting with an int 0 in python for a property that is actually a float will not do the dynamic type conversion and set to 0.0. Maybe in this case it should, but in other cases with loss of percision or ambiguity, an error should be raised, if possible. Perhaps it is already, but because of the way things are done, the error is not surfaced/trapped and reported, in a manner similar to #5