Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DX Cooling coil lower cutoff temperature #3976

Closed
kbenne opened this issue May 12, 2020 · 2 comments · Fixed by #3978
Closed

DX Cooling coil lower cutoff temperature #3976

kbenne opened this issue May 12, 2020 · 2 comments · Fixed by #3978
Assignees

Comments

@kbenne
Copy link
Contributor

kbenne commented May 12, 2020

Add function for DX Cooling coil (CoilCoolingDXSingleSpeed or other DX cooling coils) to set the lower cutoff temperature, EnergyPlus has this field, but OpenStudio does not have a method to access and change this field.

Picture1

@joseph-robertson and @jmarrec this is high priority. I'm not sure which of you is more loaded, but can one of you pick this up and remove the other assignee?

@jmarrec
Copy link
Collaborator

jmarrec commented May 12, 2020

I'm on it. Do you have a reference of all objects that are missing it or do I need to dig it up? @kbenne

@jmarrec
Copy link
Collaborator

jmarrec commented May 12, 2020

List of objects missing the field:

not_found_field
=> ["OS:Coil:Cooling:DX:SingleSpeed", "OS:Coil:Cooling:DX:TwoSpeed", "OS:Coil:Cooling:DX:MultiSpeed", "OS:Coil:Cooling:DX:VariableSpeed", "OS:Coil:Cooling:DX:TwoStageWithHumidityControlMode"]

Here's a script I used to find the objects that are missing it:

require 'openstudio'

field_name = "Minimum Outdoor Dry-Bulb Temperature for Compressor Operation"


puts "Parsing ProposedEnergy+.idd"
puts "=========================================================================="
ep_factory = OpenStudio::IddFileAndFactoryWrapper.new("EnergyPlus".to_IddFileType)

ep_objs = []
ep_factory.objects.each do |obj|
  obj.numFields.times do |i|
    if obj.getField(i).get.name == field_name
      puts "#{obj.name} - Found at #{i}"
      ep_objs << obj.name
    end
  end
end


puts "\n"
puts "Looking up the objects in the OpenStudio.idd to see if they have the field"
puts "=========================================================================="
os_factory = OpenStudio::IddFileAndFactoryWrapper.new("OpenStudio".to_IddFileType)

not_found_obj = []
not_found_field = []
found_field = []
ep_objs.each do |ep_obj_name|
  os_obj_name = "OS:#{ep_obj_name}"
  os_obj = os_factory.getObject(os_obj_name)
  if os_obj.empty?
    puts "Couldn't find #{ep_obj_name} in the IDD"
    not_found_obj << ep_obj_name
    next
  end

  os_obj = os_obj.get
  is_found = false
  os_obj.numFields.times do |i|
    if os_obj.getField(i).get.name == field_name
      puts "#{os_obj.name} - Found at #{i}"
      is_found = true
      break
    end
  end
  if !is_found
    puts "Found object #{os_obj_name} but doesn't have the field"
    not_found_field << os_obj_name
  else
    found_field << os_obj_name
  end
end
Parsing ProposedEnergy+.idd
==========================================================================
Coil:Cooling:DX:CurveFit:Performance - Found at 2
Coil:Cooling:DX:SingleSpeed - Found at 14
Coil:Cooling:DX:TwoSpeed - Found at 22
Coil:Cooling:DX:MultiSpeed - Found at 6
Coil:Cooling:DX:VariableSpeed - Found at 15
Coil:Cooling:DX:TwoStageWithHumidityControlMode - Found at 18
Coil:Heating:DX:SingleSpeed - Found at 14
Coil:Heating:DX:MultiSpeed - Found at 4
Coil:Heating:DX:VariableSpeed - Found at 9
AirLoopHVAC:UnitaryHeatPump:AirToAir:MultiSpeed - Found at 11

Looking up the objects in the OpenStudio.idd to see if they have the field
==========================================================================
Couldn't find Coil:Cooling:DX:CurveFit:Performance in the IDD
Found object OS:Coil:Cooling:DX:SingleSpeed but doesn't have the field
Found object OS:Coil:Cooling:DX:TwoSpeed but doesn't have the field
Found object OS:Coil:Cooling:DX:MultiSpeed but doesn't have the field
Found object OS:Coil:Cooling:DX:VariableSpeed but doesn't have the field
Found object OS:Coil:Cooling:DX:TwoStageWithHumidityControlMode but doesn't have the field
OS:Coil:Heating:DX:SingleSpeed - Found at 15
OS:Coil:Heating:DX:MultiSpeed - Found at 5
OS:Coil:Heating:DX:VariableSpeed - Found at 9
OS:AirLoopHVAC:UnitaryHeatPump:AirToAir:MultiSpeed - Found at 10

jmarrec added a commit that referenced this issue May 12, 2020
Insert Minimum Outdoor Dry-Bulb Temperature for Compressor Operation
jmarrec added a commit that referenced this issue May 12, 2020
jmarrec added a commit that referenced this issue May 12, 2020
jmarrec added a commit that referenced this issue May 13, 2020
Insert Minimum Outdoor Dry-Bulb Temperature for Compressor Operation
jmarrec added a commit that referenced this issue May 13, 2020
jmarrec added a commit that referenced this issue May 13, 2020
jmarrec added a commit that referenced this issue May 13, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT and RT
* Added a FT test
* RT test can't be done, the RT exists but it's not in use
jmarrec added a commit that referenced this issue May 13, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT
* Added a FT test
* RT doesn't exist at all
jmarrec added a commit that referenced this issue May 13, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT
* Added a FT test
* RT doesn't exist at all
jmarrec added a commit that referenced this issue May 13, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT
* Added a FT test
* RT doesn't exist at all
jmarrec added a commit that referenced this issue May 13, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT
* Added a FT test
* RT doesn't exist at all
jmarrec added a commit that referenced this issue May 15, 2020
Insert Minimum Outdoor Dry-Bulb Temperature for Compressor Operation
jmarrec added a commit that referenced this issue May 15, 2020
jmarrec added a commit that referenced this issue May 15, 2020
jmarrec added a commit that referenced this issue May 15, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT and RT
* Added a FT test
* RT test can't be done, the RT exists but it's not in use
jmarrec added a commit that referenced this issue May 15, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT
* Added a FT test
* RT doesn't exist at all
jmarrec added a commit that referenced this issue May 15, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT
* Added a FT test
* RT doesn't exist at all
jmarrec added a commit that referenced this issue May 15, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT
* Added a FT test
* RT doesn't exist at all
jmarrec added a commit that referenced this issue May 15, 2020
* Added double getter, isDefaulted, setter and resetter
* Added to Model Test
* Added VersionTranslation for inserted field
* Added VersionTranslation test
* Added new field to the FT
* Added a FT test
* RT doesn't exist at all
tijcolem added a commit that referenced this issue May 18, 2020
Fix #3976 - Add 'Minimum Outdoor Dry-Bulb Temperature for Compressor Operation' to all Coil:Cooling:DX:XXX objects
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants