class Coilwraps::Calculator

Constants

RESISTIVITY

Public Class Methods

run(resistance:, wire_guage:, jig_diameter:, wire_type:) click to toggle source
# File lib/coilwraps/calculator.rb, line 8
def self.run(resistance:, wire_guage:, jig_diameter:, wire_type:)
  # area calculation inspired by http://www.rapidtables.com/calc/wire/awg-to-mm.htm
  area = 0.012668 * 92**((36-wire_guage)/19.5)

  radius = jig_diameter / 2

  circumference = radius * 2 * Math::PI

  resistivity = RESISTIVITY[wire_type]

  coil_length = (resistance * area) / resistivity
  wraps = coil_length / circumference

  wraps.round
end