diff --git a/toroid.html b/toroid.html index c58c05e..abf8aea 100644 --- a/toroid.html +++ b/toroid.html @@ -59,7 +59,7 @@
- +
@@ -126,6 +126,8 @@
Change history:
+ [26-Oct-21]
+ * Increased resolution of the f-slider, making it smoothly regenerate the dataset. [24-Oct-21]
* Fixed frozen f-slider issue that was occurring in some browsers running on Windows.
* Increased contrast for experimental Ceff and SRF calculations, based on David Knight's (G3YNH) paper. @@ -494,7 +496,7 @@ frequencies = []; //for(var i = 4.0; i <= 8.0; i+=0.01) { var f = 1.0 * frequency_slider.value; - for(var i = 4.00+f; i <= 5.52+f; i+=0.01) { + for(var i = Math.floor(4.00+f); i <= 5.52+f; i+=0.01) { frequencies.push(10.0**i); } } @@ -833,71 +835,67 @@ var conductor_diameter_timer_handler = 0; conductor_diameter_slider.oninput = function() { - recalculate(); - if(conductor_diameter_timer_handler == 0) { - conductor_diameter_timer_handler = setTimeout(function(){ - updateChart(); - conductor_diameter_timer_handler = 0; - }, emphasis_delay); - } else { - clearTimeout(conductor_diameter_timer_handler); - conductor_diameter_timer_handler = setTimeout(function(){ - updateChart(); - conductor_diameter_timer_handler = 0; - }, emphasis_delay); + // Check if we have exceeded the maximum turns: + const max_N = getMaxTurnsFrom(); + if(max_N > toroid.N) { + loop_turns_slider.value = (toroid.N * 100.0) / max_N; } + + recalculate(); + + if(conductor_diameter_timer_handler != 0) { + clearTimeout(conductor_diameter_timer_handler); + } + + conductor_diameter_timer_handler = setTimeout(function(){ + updateChart(); + conductor_diameter_timer_handler = 0; + }, emphasis_delay); } var loop_turns_timer_handler = 0; loop_turns_slider.oninput = function() { recalculate(); - if(loop_turns_timer_handler == 0) { - loop_turns_timer_handler = setTimeout(function(){ - updateChart(); - loop_turns_timer_handler = 0; - }, emphasis_delay); - } else { + + if(loop_turns_timer_handler != 0) { clearTimeout(loop_turns_timer_handler); - loop_turns_timer_handler = setTimeout(function(){ - updateChart(); - loop_turns_timer_handler = 0; - }, emphasis_delay); - } + } + + loop_turns_timer_handler = setTimeout(function(){ + updateChart(); + loop_turns_timer_handler = 0; + }, emphasis_delay); + + generateTurnsRatioLUT(loop_turns_slider.value); } var frequency_timer_handler = 0; frequency_slider.oninput = function() { updateFrequencies(); recalculate(); - if(frequency_timer_handler == 0) { - frequency_timer_handler = setTimeout(function(){ - updateChart(); - frequency_timer_handler = 0; - }, emphasis_delay); - } else { + + if(frequency_timer_handler != 0) { clearTimeout(frequency_timer_handler); - frequency_timer_handler = setTimeout(function(){ - updateChart(); - frequency_timer_handler = 0; - }, emphasis_delay); } + + frequency_timer_handler = setTimeout(function(){ + updateChart(); + frequency_timer_handler = 0; + }, emphasis_delay); } var voltage_timer_handler = 0; voltage_slider.oninput = function() { recalculate(); - if(voltage_timer_handler == 0) { - voltage_timer_handler = setTimeout(function(){ - updateChart(); - voltage_timer_handler = 0; - }, emphasis_delay); - } else { + + if(voltage_timer_handler != 0) { clearTimeout(voltage_timer_handler); - voltage_timer_handler = setTimeout(function(){ - updateChart(); - voltage_timer_handler = 0; - }, emphasis_delay); - } + } + + voltage_timer_handler = setTimeout(function(){ + updateChart(); + voltage_timer_handler = 0; + }, emphasis_delay); } window.onresize = function() {