var dataJSON = []
function JSONData(data) {
var result = [];
var element = {
"Nin": data.Nin,
"Nout": data.Nout,
"Eff": data.Eff.toPrecision(4),
"KZVS": data.KZVS.toPrecision(4),
"vibVel": data.vibVel.toPrecision(4),
"fitness": data.fit.toPrecision(3),
"L1": data.L1.toExponential(2),
"C1": data.C1.toExponential(4),
"R": data.R.toPrecision(4),
"Cin": data.Cin.toExponential(4),
"Cout": data.Cout.toExponential(4),
"N1": data.N1.toPrecision(4),
"Rad":data.rad.toPrecision(3),
"Tin": data.Tin.toPrecision(2),
"Tout": data.Tout.toPrecision(2),
"VDC":data.Vdc,
"RL": data.RL,
"fS":data.fS.toExponential(6),
"Phi":data.phi,
"mosCout":data.mosCout,
"VoutP":data.VoutP,
"zeta2":data.Zeta2,
"fDiff":data.fDiff,
}
result.push(element)
dataJSON = JSON.stringify(result);
}
var data = [];
$("#inputSpec").submit(function (event) {
if (screen.width <= 576){
closeSidebar()
}
event.preventDefault()
if ($('#spurModeMeth').serialize()=='spurModeMeth=1'){
$('#error').html(`Please wait.
Spurious mode estimation using a thick plate model can take 1 min + `);
} else {
$('#error').html(``);
}
$('#loading-spinner').html(`Loading...
`);
Plotly.purge('FitPlot');
Plotly.purge('Vcin_plot');
Plotly.purge('Vout_plot');
Plotly.purge('Imp_plot');
$('#extraResults').html('')
$('#resultsPhy').html('')
$('#resultsElec').html('')
$('#resultsCirc').html('')
$('#circuitInfo').hide()
$('#hideOnSub1').hide()
$('#hideOnSub2').hide()
$('#hideOnSub3').hide()
$('#hideOnSub4').hide()
$.ajax({
url: '/PTDesigner/receivedataRadModeGen',
data: $('form').serialize(),
type: 'POST',
success: function (response) {
$('#hideOnSub1').show()
$('#hideOnSub2').show()
$('#hideOnSub3').show()
$('#hideOnSub4').show()
data = JSON.parse(response);
JSONData(data);
console.log(dataJSON)
drawCharts(data);
str = []
str += 'Physical Dimentions
'
str += 'Radius (Rad): '
str += data.rad.toFixed(0)
str += 'mm'
str += '
'
str += 'Input Layer Thickness (Tin): '
str += data.Tin.toPrecision(3)
str += 'mm'
str += '
'
str += 'Output Layer Thickness (Tout): '
str += data.Tout.toPrecision(3)
str += 'mm'
str += '
'
str += 'Numb. Input Layers (Nin): '
str += data.Nin.toFixed(0)
str += '
'
str += 'Numb. Output Layers (Nout): '
str += data.Nout.toFixed(0)
str += '
'
str += 'Radius/Thickness Ratio: '
str += (data.rad.toFixed(0)/((data.Tin*data.Nin)+(data.Nout*data.Tout))).toPrecision(2)
str += '
'
str += '
'
$('#resultsPhy').html(str)
str = []
str += 'Electrical Properties
'
str += 'Equiv. Inductance (R1): '
str += data.R.toPrecision(2)
str += 'Ω'
str += '
'
str += 'Equiv. Inductance (L1): '
str += (data.L1/1e-3).toPrecision(3)
str += 'mH'
str += '
'
str += 'Equiv. Capacitance (C1): '
str += (data.C1/1e-12).toPrecision(4)
str += 'pF'
str += '
'
str += 'Equiv. Input Capacitance (Cin): '
str += (data.Cin/1e-9).toPrecision(4)
str += 'nF'
str += '
'
str += 'Equiv. Output Capacitance (Cout): '
str += (data.Cout/1e-9).toPrecision(4)
str += 'nF'
str += '
'
str += 'Equiv. Turns Ratio (N1): '
str += (data.N1).toPrecision(4)
str += '
'
str += '
'
$('#resultsElec').html(str)
str = []
str += 'Circuit Properties
'
str += 'Output Voltage: '
str += (data.VoutP/Math.sqrt(2)).toPrecision(2)
str += 'V'
str += '
'
str += 'Efficiency: '
str += data.Eff.toPrecision(3)
str += '%'
str += '
'
str += 'Vibration Velcoity: '
str += data.vibVel.toPrecision(4)
str += 'm/s'
str += '
'
str += 'kZVS: '
str += data.KZVS.toPrecision(4)
str += '
'
str += 'Operating Frequnecy: '
str += (data.fS/1e3).toPrecision(4)
str += 'kHz'
str += '
'
str += '
'
if (data.Zeta2.toFixed(0) != 1) {
str += 'Zeta2: '
str += (data.Zeta2/1e3).toPrecision(4)
str += 'kΩ'
str += '
'
str += 'Minimum Frequency Difference: '
str += data.fDiff.toPrecision(4)
str += '
'
} else {
str += '
'
}
$('#resultsCirc').html(str)
$.ajax({
url: '/PTDesigner/receivebestdataRD',
data: dataJSON,
type: 'POST',
success: function (response) {
spiceData = JSON.parse(response)
console.log(spiceData)
str =[]
str += ' Load: '
str += data.RL.toPrecision(4)
str += 'Ω'
str += '
VoutRMS: '
str += spiceData.VoutRMS.toPrecision(3)
str += 'V'
$('#extraResults').html(str)
drawBestChart(spiceData)
$('#circuitInfo').show()
$('#loading-spinner').html(``);
$('#error').html(``);
},
error: function (error) {
console.log(error);
}
});
},
error: function (error) {
$('#loading-spinner').html(``);
console.log(error);
}
});
});
function openSidebar() {
if (screen.width > 576){
$(".sidebar-wrapper").width(300);
document.getElementById("page-content-wrapper").style.marginLeft = "300px"
} else{
$(".sidebar-wrapper").width('100%');
document.getElementById("page-content-wrapper").style.marginLeft = "100%"
}
$('#buttonDiv').show();
$('#sidebarOpen').hide();
}
function closeSidebar() {
$(".sidebar-wrapper").width(0);
document.getElementById("page-content-wrapper").style.marginLeft = "0px"
$('#buttonDiv').hide();
$('#sidebarOpen').show();
}
function lossChange() {
if (document.getElementById("lossCho").value == 0){
document.getElementById("lossDiv").style.display = "none";
document.getElementById("qfactDiv").style.display = "block";
} else{
document.getElementById("lossDiv").style.display = "block";
document.getElementById("qfactDiv").style.display = "none";
}
}
$(document).ready(function () {
$('[data-toggle="tooltip"]').tooltip();
$('#circuitInfo').hide();
$('#hideOnSub1').hide()
$('#hideOnSub2').hide()
$('#hideOnSub3').hide()
$('#hideOnSub4').hide()
document.getElementById("lossDiv").style.display = "none";
document.getElementById("qfactDiv").style.display = "block";
if (screen.width > 720){
// $('#buttonDiv').hide();
// $('#sidebarOpen').hide();
openSidebar()
$('#sidebarOpen').hide();
}
});