{"id":100238,"date":"2026-02-15T20:29:12","date_gmt":"2026-02-15T20:29:12","guid":{"rendered":"https:\/\/vibromera.eu\/?post_type=calculator&#038;p=100238"},"modified":"2026-07-15T14:56:07","modified_gmt":"2026-07-15T14:56:07","slug":"spring-selection","status":"publish","type":"calculator","link":"https:\/\/vibromera.eu\/ja\/calculators\/spring-selection\/","title":{"rendered":"Idealized SDOF Spring-Stiffness Relation Worksheet"},"content":{"rendered":"<div class=\"vbm238\">\n<style>\n.vbm238{--ink:#172235;--muted:#556276;--line:#d8e0e9;--soft:#f4f7fa;--blue:#135ca8;--blue2:#0d447e;--amber:#8a5700;--amber-bg:#fff7df;--red:#a52828;--red-bg:#fff0f0;--green:#17613a;--green-bg:#edf9f1;max-width:1040px;margin:0 auto;padding:18px 14px 44px;color:var(--ink);font:15px\/1.55 system-ui,-apple-system,\"Segoe UI\",sans-serif}.vbm238 *{box-sizing:border-box}.vbm238 h1,.vbm238 h2,.vbm238 h3{line-height:1.2}.vbm238 h1{font-size:clamp(27px,4vw,42px);margin:8px 0 12px}.vbm238 h2{font-size:22px;margin:0 0 16px}.vbm238 p{margin:8px 0}.vbm238 a{color:var(--blue)}.vbm238-header{text-align:center;padding:32px 18px 26px}.vbm238-kicker{color:var(--blue);font-weight:750;text-transform:uppercase;letter-spacing:.11em;font-size:12px}.vbm238-lead{max-width:850px;margin:0 auto!important;color:var(--muted);font-size:17px}.vbm238-badges{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:18px}.vbm238-badge{border:1px solid var(--line);border-radius:999px;padding:5px 10px;background:#fff;font-size:12px;font-weight:700}.vbm238-notice{border-left:4px solid var(--amber);background:var(--amber-bg);padding:14px 16px;border-radius:8px;margin:0 0 20px}.vbm238-card{border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 4px 18px rgba(20,45,75,.07);padding:22px;margin:18px 0}.vbm238-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.vbm238-field{min-width:0}.vbm238-field.full{grid-column:1\/-1}.vbm238 label{display:block;font-weight:720;margin-bottom:5px}.vbm238-hint{display:block;color:var(--muted);font-weight:400;font-size:12px}.vbm238 input[type=text],.vbm238 textarea{width:100%;min-height:44px;border:1px solid #aebac8;border-radius:8px;background:#fff;color:var(--ink);font:inherit;padding:9px 11px}.vbm238 textarea{min-height:88px;resize:vertical}.vbm238 input:focus,.vbm238 textarea:focus{outline:3px solid rgba(19,92,168,.18);border-color:var(--blue)}.vbm238-checks{display:grid;gap:10px;margin:18px 0}.vbm238-check{display:grid!important;grid-template-columns:auto 1fr;gap:9px;align-items:start;font-weight:500!important}.vbm238-check input{margin-top:4px}.vbm238-actions{display:flex;gap:10px;flex-wrap:wrap}.vbm238 button{border:0;border-radius:9px;padding:11px 17px;font:inherit;font-weight:760;cursor:pointer}.vbm238-primary{background:var(--blue);color:#fff}.vbm238-primary:hover{background:var(--blue2)}.vbm238-secondary{background:#e8eef5;color:var(--ink)}.vbm238-error{display:none;margin-top:14px;padding:11px 13px;border:1px solid #edb5b5;border-radius:8px;background:var(--red-bg);color:var(--red);font-weight:650}.vbm238-error.show{display:block}.vbm238-results{display:none}.vbm238-results.show{display:block}.vbm238-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vbm238-result{border:1px solid var(--line);border-radius:10px;background:var(--soft);padding:13px}.vbm238-result.primary{border-color:#7dacda;background:#eef6ff}.vbm238-result-label{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.vbm238-result-value{font:700 17px\/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;margin-top:4px}.vbm238-result.primary .vbm238-result-value{font-size:22px;color:var(--blue2)}.vbm238-status{margin-top:14px;border-left:4px solid var(--green);background:var(--green-bg);padding:12px 14px}.vbm238-formula{overflow-x:auto;border:1px solid var(--line);border-radius:9px;background:var(--soft);padding:12px 14px;margin:10px 0;font:600 14px\/1.7 ui-monospace,SFMono-Regular,Consolas,monospace}.vbm238 table{width:100%;border-collapse:collapse;margin:12px 0}.vbm238 th,.vbm238 td{border:1px solid var(--line);padding:9px 10px;text-align:left;vertical-align:top}.vbm238 th{background:#eaf0f6}.vbm238 ul{padding-left:22px}.vbm238 details{border-top:1px solid var(--line);padding:11px 0}.vbm238 summary{cursor:pointer;font-weight:760}.vbm238-small{font-size:13px;color:var(--muted)}\n.vbm238 .vbm238-result-grid{grid-template-columns:1fr 1fr!important}\n@media(max-width:700px){.vbm238{padding-left:10px;padding-right:10px}.vbm238-card{padding:16px}.vbm238-grid,.vbm238 .vbm238-result-grid{grid-template-columns:1fr!important}.vbm238-field.full{grid-column:auto}.vbm238 table{display:block;overflow-x:auto}}\n<\/style>\n<header class=\"vbm238-header\">\n<p class=\"vbm238-kicker\">Linear SDOF relation \u00b7 controlled target \u00b7 no isolation claim<\/p>\n<h1>Idealized SDOF Spring-Stiffness Relation Worksheet<\/h1>\n<p class=\"vbm238-lead\">Calculate the ideal total stiffness, equal per-spring stiffness and weight-induced static deflection for one documented translational natural-frequency target.<\/p>\n<div class=\"vbm238-badges\"><span class=\"vbm238-badge\">k = m(2\u03c0f\u2099)\u00b2<\/span><span class=\"vbm238-badge\">Point or comma<\/span><span class=\"vbm238-badge\">No design presets<\/span><\/div>\n<\/header>\n<div class=\"vbm238-notice\"><strong>Not a spring selector or isolation-performance calculator.<\/strong> The arithmetic assumes one linear, undamped translational degree of freedom, a rigid supported mass and identical parallel springs sharing load equally. It does not model damping, forcing spectrum, startup\/shutdown, rocking modes, centre-of-mass offset, base\/floor flexibility, isolator mass, nonlinear travel limits or stability.<\/div>\n<form id=\"vbm238-form\" class=\"vbm238-card\" autocomplete=\"off\" novalidate>\n<h2>Documented model inputs and traceability<\/h2>\n<div class=\"vbm238-grid\">\n<div class=\"vbm238-field\"><label for=\"vbm238-mass\">Effective supported mass m (kg) <span class=\"vbm238-hint\">positive mass for the documented mode<\/span><\/label><input id=\"vbm238-mass\" type=\"text\" inputmode=\"decimal\" placeholder=\"e.g. 300\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-frequency\">Target natural frequency f\u2099 (Hz) <span class=\"vbm238-hint\">positive controlled design input\u2014not inferred from RPM<\/span><\/label><input id=\"vbm238-frequency\" type=\"text\" inputmode=\"decimal\" placeholder=\"e.g. 4\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-count\">Number of identical parallel springs N <span class=\"vbm238-hint\">positive integer; equal stiffness\/load idealization<\/span><\/label><input id=\"vbm238-count\" type=\"text\" inputmode=\"numeric\" placeholder=\"e.g. 4\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-record\">Calculation \/ model record ID<\/label><input id=\"vbm238-record\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-system\">Machine, payload and support boundary<\/label><input id=\"vbm238-system\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-mass-source\">Effective-mass source, method and revision<\/label><input id=\"vbm238-mass-source\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-frequency-source\">Target-frequency source, requirement and revision<\/label><input id=\"vbm238-frequency-source\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-mode\">Translation direction, coordinates and SDOF mode evidence<\/label><input id=\"vbm238-mode\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-configuration\">Spring count, positions and equal-load assumption<\/label><input id=\"vbm238-configuration\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-rocking\">Centre of mass, inertia and rocking-mode review<\/label><input id=\"vbm238-rocking\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-damping\">Damping and isolator dynamic-property source<\/label><input id=\"vbm238-damping\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-excitation\">Forcing spectrum, harmonics and startup\/shutdown review<\/label><input id=\"vbm238-excitation\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-limits\">Supplier load, travel, stability and environmental limits<\/label><input id=\"vbm238-limits\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-uncertainty\">Input uncertainty and reporting precision<\/label><input id=\"vbm238-uncertainty\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-person\">Responsible engineer \/ reviewer<\/label><input id=\"vbm238-person\" type=\"text\" placeholder=\"required\"><\/div>\n<div class=\"vbm238-field\"><label for=\"vbm238-date\">Review date<\/label><input id=\"vbm238-date\" type=\"text\" placeholder=\"YYYY-MM-DD\"><\/div>\n<div class=\"vbm238-field full\"><label for=\"vbm238-notes\">Notes and exclusions <span class=\"vbm238-hint\">Optional: preload, isolator self-mass, coupling, floor dynamics, nonlinear rate, snubbers and restraint conditions<\/span><\/label><textarea id=\"vbm238-notes\"><\/textarea><\/div>\n<\/p><\/div>\n<div class=\"vbm238-checks\">\n  <label class=\"vbm238-check\"><input type=\"checkbox\" id=\"vbm238-c1\"><span>The effective mass and target natural frequency apply to the same documented translational mode and boundary; neither value was inferred from a generic machine preset.<\/span><\/label><br \/>\n  <label class=\"vbm238-check\"><input type=\"checkbox\" id=\"vbm238-c2\"><span>The N springs are idealized as linear, identical and parallel with equal deflection\/load; unequal locations or centre-of-mass offset require individual reactions and coupled modes.<\/span><\/label><br \/>\n  <label class=\"vbm238-check\"><input type=\"checkbox\" id=\"vbm238-c3\"><span>The static deflection is weight-only under conventional standard acceleration g\u2099 = 9.80665 m\/s\u00b2; required travel must also include preload, tolerances and dynamic motion.<\/span><\/label><br \/>\n  <label class=\"vbm238-check\"><input type=\"checkbox\" id=\"vbm238-c4\"><span>No transmissibility, isolation percentage, damping adequacy, spring capacity, stability or acceptance verdict will be inferred from this idealized relation.<\/span><\/label>\n <\/div>\n<div class=\"vbm238-actions\"><button type=\"submit\" class=\"vbm238-primary\">Calculate documented relation<\/button><button type=\"button\" class=\"vbm238-secondary\" id=\"vbm238-clear\">Clear<\/button><\/div>\n<div id=\"vbm238-error\" class=\"vbm238-error\" role=\"alert\"><\/div>\n<\/form>\n<section id=\"vbm238-results\" class=\"vbm238-card vbm238-results\" aria-live=\"polite\">\n<h2>Idealized SDOF quantities<\/h2>\n<div class=\"vbm238-result-grid\">\n<div class=\"vbm238-result\">\n<div class=\"vbm238-result-label\">Angular natural frequency \u03c9\u2099<\/div>\n<div class=\"vbm238-result-value\" id=\"vbm238-r-omega\">\u2014<\/div>\n<\/div>\n<div class=\"vbm238-result primary\">\n<div class=\"vbm238-result-label\">Required total stiffness k<\/div>\n<div class=\"vbm238-result-value\" id=\"vbm238-r-total\">\u2014<\/div>\n<\/div>\n<div class=\"vbm238-result\">\n<div class=\"vbm238-result-label\">Equal nominal stiffness per spring<\/div>\n<div class=\"vbm238-result-value\" id=\"vbm238-r-per\">\u2014<\/div>\n<\/div>\n<div class=\"vbm238-result\">\n<div class=\"vbm238-result-label\">Weight-induced static deflection \u03b4<\/div>\n<div class=\"vbm238-result-value\" id=\"vbm238-r-deflection\">\u2014<\/div>\n<\/div><\/div>\n<div class=\"vbm238-status\" id=\"vbm238-r-status\"><\/div>\n<\/section>\n<section class=\"vbm238-card\">\n<h2>Formula, units and classification<\/h2>\n<div class=\"vbm238-formula\">\u03c9<sub>n<\/sub> = 2\u03c0f<sub>n<\/sub> &nbsp; [rad\/s]<br \/>k<sub>total<\/sub> = m\u03c9<sub>n<\/sub>\u00b2 &nbsp; [N\/m]<br \/>k<sub>each<\/sub> = k<sub>total<\/sub>\/N &nbsp; [N\/m], only for N identical parallel springs<br \/>\u03b4<sub>weight<\/sub> = mg<sub>n<\/sub>\/k<sub>total<\/sub> = g<sub>n<\/sub>\/\u03c9<sub>n<\/sub>\u00b2 &nbsp; [m], g<sub>n<\/sub> = 9.80665 m\/s\u00b2<\/div>\n<table>\n<thead>\n<tr>\n<th>Symbol<\/th>\n<th>Quantity and unit<\/th>\n<th>Boundary<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>m<\/td>\n<td>effective supported mass for the mode, kg<\/td>\n<td>not automatically total machine nameplate mass<\/td>\n<\/tr>\n<tr>\n<td>f<sub>n<\/sub><\/td>\n<td>target natural frequency, Hz<\/td>\n<td>controlled design input, not operating RPM or forcing frequency<\/td>\n<\/tr>\n<tr>\n<td>N<\/td>\n<td>number of ideal identical parallel springs<\/td>\n<td>equal-rate\/equal-deflection allocation only<\/td>\n<\/tr>\n<tr>\n<td>k<\/td>\n<td>linear stiffness, N\/m and N\/mm<\/td>\n<td>tangent\/secant and frequency dependence must match supplier data<\/td>\n<\/tr>\n<tr>\n<td>\u03b4<\/td>\n<td>weight-induced static deflection, mm<\/td>\n<td>not total required travel or dynamic displacement<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>This is a rearranged linear SDOF relation, not a standards-compliance formula and not a complete isolator design. The exact conventional value g<sub>n<\/sub> is used instead of the former rounded 9.81 m\/s\u00b2.<\/p>\n<\/section>\n<section class=\"vbm238-card\">\n<h2>Model boundary and removed unsupported claims<\/h2>\n<ul>\n<li><strong>No \u201cone-third frequency\u201d design rule.<\/strong> The former page prescribed f<sub>n<\/sub> \u2264 one third of the lowest operating frequency. Real forcing contains orders, harmonics, transients and multiple directions; acceptance must evaluate the full spectrum and each relevant mode.<\/li>\n<li><strong>No fixed 87.5% isolation claim.<\/strong> The former 12.5% transmissibility at frequency ratio 3 is the undamped scalar result 1\/|1\u2212r\u00b2|. NASA\u2019s published transmissibility relation includes damping ratio; input\/output quantity and forcing\/base-excitation model must also be defined.<\/li>\n<li><strong>No equal-load assumption hidden as spring selection.<\/strong> Dividing total stiffness by N is valid only for identical parallel springs with compatible deflection. Actual reactions depend on mount positions, centre of mass and rotational modes.<\/li>\n<li><strong>No universal frequency, deflection or layout ranges.<\/strong> \u201c2\u20138 Hz,\u201d \u201c5\u201325 mm,\u201d four-corner\/three-point and equal-spring recommendations were removed as unsourced application-dependent advice.<\/li>\n<li><strong>No capacity or travel verdict.<\/strong> Weight-only deflection excludes preload, isolator self-mass, dynamic motion, tolerances, nonlinear stiffness, snubbers and stability.<\/li>\n<li><strong>No hidden state or unit ambiguity.<\/strong> RPM equivalence, imperial approximations, defaults, presets, auto-calculation, URL\/storage history, clipboard output, dynamic FAQ HTML and external KaTeX were removed.<\/li>\n<\/ul>\n<\/section>\n<section class=\"vbm238-card\">\n<h2>Source traceability<\/h2>\n<table>\n<thead>\n<tr>\n<th>Claim<\/th>\n<th>Classification<\/th>\n<th>Evidence<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>For an ideal spring-mass mode, f<sub>n<\/sub> = (1\/2\u03c0)\u221a(k\/m); damping and forcing frequency enter the transmissibility relation, and different degrees of freedom can require different stiffness\/damping.<\/td>\n<td>NASA engineering paper; formula page visually inspected<\/td>\n<td><a href=\"https:\/\/ntrs.nasa.gov\/api\/citations\/20110024049\/downloads\/20110024049.pdf?attachment=true\" target=\"_blank\" rel=\"noopener\">NASA NTRS 20110024049, p. 4<\/a><\/td>\n<\/tr>\n<tr>\n<td>For an ideal gravity-loaded SDOF system, natural frequency may be related to static deflection by \u221a(g\/\u03b4).<\/td>\n<td>MIT OpenCourseWare engineering dynamics demonstration<\/td>\n<td><a href=\"https:\/\/ocw.mit.edu\/courses\/2-003sc-engineering-dynamics-fall-2011\/resources\/predicting-natural-frequency-by-sqrt-g-delta\/\" target=\"_blank\" rel=\"noopener\">MIT OCW: Predicting natural frequency by \u221a(g\/\u03b4)<\/a><\/td>\n<\/tr>\n<tr>\n<td>Conventional standard acceleration of free fall g<sub>n<\/sub> = 9.80665 m\/s\u00b2.<\/td>\n<td>Joint Committee for Guides in Metrology, VIM3 2.12<\/td>\n<td><a href=\"https:\/\/jcgm.bipm.org\/vim\/en\/2.12.html\" target=\"_blank\" rel=\"noopener\">JCGM VIM, conventional quantity value<\/a><\/td>\n<\/tr>\n<tr>\n<td>Weight is a force equal to mass times acceleration due to gravity; conventional g<sub>n<\/sub> is 980.665 cm\/s\u00b2.<\/td>\n<td>Official CGPM declaration<\/td>\n<td><a href=\"https:\/\/www.bipm.org\/en\/committees\/cg\/cgpm\/3-1901\/resolution-2\" target=\"_blank\" rel=\"noopener\">3rd CGPM (1901), Declaration 2<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p class=\"vbm238-small\"><strong>Accessed:<\/strong> 15 July 2026. No ISO or manufacturer acceptance requirement is claimed. Supplier dynamic stiffness, damping, load\/travel limits and the project-specific multi-degree-of-freedom model remain controlled external inputs.<\/p>\n<\/section>\n<section class=\"vbm238-card\">\n<h2>Reference checks<\/h2>\n<p>For m = 300 kg, f<sub>n<\/sub> = 4 Hz and N = 4, \u03c9<sub>n<\/sub> = 25.132741229 rad\/s, k<sub>total<\/sub> = 189.496404501 N\/mm, k<sub>each<\/sub> = 47.374101125 N\/mm and \u03b4 = 15.525334149 mm using g<sub>n<\/sub> = 9.80665 m\/s\u00b2. Doubling frequency quadruples stiffness and quarters the ideal weight deflection.<\/p>\n<\/section>\n<section class=\"vbm238-card\">\n<h2>Questions<\/h2>\n<details>\n<summary>Does this select a purchasable spring?<\/summary>\n<p>No. Match the result to supplier dynamic-rate, load, preload, travel, stability, environment, tolerance and fatigue data, then verify the assembled system.<\/p>\n<\/details>\n<details>\n<summary>Does a target at one third of running speed guarantee isolation?<\/summary>\n<p>No. Transmissibility depends on the defined input\/output, damping and frequency ratio; machinery also produces harmonics, orders and transients. Evaluate the actual spectrum and relevant modes.<\/p>\n<\/details>\n<details>\n<summary>Why is RPM input absent?<\/summary>\n<p>Operating speed is not automatically the target natural frequency. Convert and classify excitation orders in a separate controlled spectrum analysis, then supply the approved natural-frequency target in hertz.<\/p>\n<\/details>\n<\/section>\n<p><script>\n(function(){'use strict';var form=document.getElementById('vbm238-form'),error=document.getElementById('vbm238-error'),results=document.getElementById('vbm238-results'),GN=9.80665;\nfunction parsePositive(value,label){var s=String(value==null?'':value).trim();if(!\/^[+]?(?:\\d+(?:[.,]\\d*)?|[.,]\\d+)$\/.test(s))throw new Error(label+' must be one positive plain decimal using a point or comma.');var n=Number(s.replace(',','.'));if(!Number.isFinite(n)||n<=0)throw new Error(label+' must be finite and greater than zero.');return n}\nfunction parseCount(value){var s=String(value==null?'':value).trim();if(!\/^[+]?\\d+$\/.test(s))throw new Error('Number of springs must be one positive integer.');var n=Number(s);if(!Number.isSafeInteger(n)||n<=0)throw new Error('Number of springs must be a safe positive integer.');return n}\nfunction requiredText(id,label){var value=document.getElementById(id).value.trim();if(!value)throw new Error(label+' is required.');return value}\nfunction calculate(massValue,frequencyValue,countValue){var m=parsePositive(massValue,'Effective supported mass'),f=parsePositive(frequencyValue,'Target natural frequency'),count=parseCount(countValue),omega=2*Math.PI*f,kNm=m*omega*omega,kNmm=kNm\/1000,kEachNmm=kNmm\/count,deflectionMm=m*GN\/kNm*1000;if(![omega,kNm,kNmm,kEachNmm,deflectionMm].every(function(x){return Number.isFinite(x)&&x>0}))throw new Error('The derived quantity is outside the finite numeric range.');return{mass:m,frequency:f,count:count,omega:omega,kNm:kNm,kNmm:kNmm,kEachNmm:kEachNmm,deflectionMm:deflectionMm}}\nfunction fmt(n){if(!Number.isFinite(n))return'\u2014';return(n>=1e12||n<1e-9?n.toExponential(11):n.toPrecision(12)).replace(\/(\\.\\d*?[1-9])0+(e|$)\/,'$1$2').replace(\/\\.0+(e|$)\/,'$1')}\nfunction setText(id,text){document.getElementById(id).textContent=text}function render(r){setText('vbm238-r-omega',fmt(r.omega)+' rad\/s');setText('vbm238-r-total',fmt(r.kNm)+' N\/m = '+fmt(r.kNmm)+' N\/mm');setText('vbm238-r-per',fmt(r.kEachNmm)+' N\/mm each');setText('vbm238-r-deflection',fmt(r.deflectionMm)+' mm');setText('vbm238-r-status','Ideal linear SDOF relation only. No damping, transmissibility, isolation percentage, excitation-order, rocking-mode, load distribution, capacity, travel, stability or acceptance verdict has been generated. Record: '+requiredText('vbm238-record','Calculation \/ model record ID')+'; system: '+requiredText('vbm238-system','Machine, payload and support boundary')+'.');results.classList.add('show')}\nfunction setError(message){error.textContent=message;error.classList.add('show');results.classList.remove('show')}function clearError(){error.textContent='';error.classList.remove('show')}\nform.addEventListener('submit',function(e){e.preventDefault();clearError();try{['vbm238-record','vbm238-system','vbm238-mass-source','vbm238-frequency-source','vbm238-mode','vbm238-configuration','vbm238-rocking','vbm238-damping','vbm238-excitation','vbm238-limits','vbm238-uncertainty','vbm238-person','vbm238-date'].forEach(function(id){requiredText(id,document.querySelector('label[for=\"'+id+'\"]').textContent.trim())});['vbm238-c1','vbm238-c2','vbm238-c3','vbm238-c4'].forEach(function(id){if(!document.getElementById(id).checked)throw new Error('Confirm all four model, load-sharing, gravity and acceptance statements.')});render(calculate(document.getElementById('vbm238-mass').value,document.getElementById('vbm238-frequency').value,document.getElementById('vbm238-count').value))}catch(ex){setError(ex.message||'Unable to calculate the documented relation.')}});\nform.addEventListener('keydown',function(e){if(e.key==='Enter'&&e.target.tagName!=='TEXTAREA'&&e.target.tagName!=='BUTTON'){e.preventDefault();form.requestSubmit()}});document.getElementById('vbm238-clear').addEventListener('click',function(){form.reset();form.querySelectorAll('input[type=text],textarea').forEach(function(el){el.value=''});results.classList.remove('show');clearError();document.getElementById('vbm238-mass').focus()});form.querySelectorAll('input,textarea').forEach(function(el){el.addEventListener('input',function(){results.classList.remove('show');clearError()});el.addEventListener('change',function(){results.classList.remove('show');clearError()})});\n})();\n<\/script>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Calculate ideal total and equal per-spring stiffness plus weight-induced static deflection for a documented linear SDOF natural-frequency target\u2014without an isolation, capacity or selection verdict.<\/p>","protected":false},"featured_media":0,"template":"","meta":{"ai_generated_summary":"","footnotes":""},"categories":[],"tags":[],"class_list":["post-100238","calculator","type-calculator","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/vibromera.eu\/ja\/wp-json\/wp\/v2\/calculator\/100238","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vibromera.eu\/ja\/wp-json\/wp\/v2\/calculator"}],"about":[{"href":"https:\/\/vibromera.eu\/ja\/wp-json\/wp\/v2\/types\/calculator"}],"version-history":[{"count":2,"href":"https:\/\/vibromera.eu\/ja\/wp-json\/wp\/v2\/calculator\/100238\/revisions"}],"predecessor-version":[{"id":102584,"href":"https:\/\/vibromera.eu\/ja\/wp-json\/wp\/v2\/calculator\/100238\/revisions\/102584"}],"wp:attachment":[{"href":"https:\/\/vibromera.eu\/ja\/wp-json\/wp\/v2\/media?parent=100238"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vibromera.eu\/ja\/wp-json\/wp\/v2\/categories?post=100238"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vibromera.eu\/ja\/wp-json\/wp\/v2\/tags?post=100238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}