data type error in Ruby
Hi, i want to modify the COP of CoilCoolingDXSingleSpeed according to a csv file:
arr_of_arrs = CSV.read('C:\Users\sdl06\Documents\essence-144\144assumption\PTAC_Efficiency.csv')
coils.each do |coil|
arr_of_arrs.each do |arr|
if coil.name.get.casecmp(arr[0])==0
coil.setRatedCOP(arr[1].to_f)
end
end
end
However, I got error like that:
TypeError: Expected argument 1 of type boost::optional< double >, but got String "3.98"
in SWIG method 'setRatedCOP'
I know that is data type error, but I don't know how to transfer Float to Double. Any suggestion? Thanks!
Well
arr[1].to_f
should convert the value to a float but SWIG thinks it is being pass a string, so that is odd. I would try:If the argument is a float and SWIG rejects it then I would try:
We have standardized away from methods taking OptionalDouble values as input but these still remain in the older APIs.
This is a known issue for CoilCoolingDXSingleSpeed.
@macumber Thx! I figured out