{"id":24720,"date":"2026-08-27T02:39:20","date_gmt":"2026-08-27T02:39:20","guid":{"rendered":"https:\/\/www.mechstream.com\/?p=24720"},"modified":"2026-08-27T02:59:38","modified_gmt":"2026-08-27T02:59:38","slug":"bolt-safety-factor-calculator","status":"publish","type":"post","link":"https:\/\/www.mechstream.com\/fr\/bolt-safety-factor-calculator\/","title":{"rendered":"Bolt Safety Factor Calculator"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">The <strong>Bolt Safety Factor Calculator<\/strong> is a practical engineering tool designed to help engineers, designers, technicians, and students quickly evaluate the safety margin of a bolted connection. By entering key parameters such as bolt tensile stress area, material yield strength, preload, and applied axial load, the calculator estimates bolt tensile stress and the resulting safety factor. This <strong>Bolt Safety Factor Calculator<\/strong> is ideal for preliminary bolt sizing, mechanical design checks, equipment engineering, and bolted joint analysis, helping users make faster and more informed design decisions.<\/p>\n\n\n\n<!-- Copy ALL content below into WordPress Custom HTML block -->\n<!-- Do NOT include DOCTYPE, html, head, or body tags -->\n<style>\n\n    \/* Scoped styles - safe for WordPress embed; does not affect page outside #bsc-calculator *\/\n    #bsc-calculator.bsc-calculator,\n    #bsc-calculator.bsc-calculator *,\n    #bsc-calculator.bsc-calculator *::before,\n    #bsc-calculator.bsc-calculator *::after {\n      box-sizing: border-box;\n    }\n\n    #bsc-calculator.bsc-calculator {\n      --bsc-bg: #ffffff;\n      --bsc-surface: #ffffff;\n      --bsc-border: #d8dee8;\n      --bsc-text: #1a2332;\n      --bsc-text-muted: #5a6778;\n      --bsc-primary: #1e4d8c;\n      --bsc-primary-light: #2a6cb8;\n      --bsc-primary-bg: #e8f0fa;\n      --bsc-danger: #dc2626;\n      --bsc-danger-bg: #fef2f2;\n      --bsc-warning: #d97706;\n      --bsc-warning-bg: #fffbeb;\n      --bsc-success: #059669;\n      --bsc-success-bg: #ecfdf5;\n      --bsc-info: #2563eb;\n      --bsc-info-bg: #eff6ff;\n      --bsc-radius: 10px;\n      --bsc-shadow: 0 2px 12px rgba(30, 77, 140, 0.08);\n      --bsc-font: 'Segoe UI', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;\n\n      font-family: var(--bsc-font);\n      font-size: 16px;\n      line-height: 1.6;\n      color: var(--bsc-text);\n      background: var(--bsc-bg);\n      max-width: 1200px;\n      margin: 0 auto;\n      padding: 24px 16px 48px;\n    }\n\n    #bsc-calculator .bsc-unit-bar {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 12px;\n      margin-bottom: 24px;\n      flex-wrap: wrap;\n    }\n\n    #bsc-calculator .bsc-unit-bar label {\n      font-weight: 600;\n      color: var(--bsc-text);\n      margin: 0;\n    }\n\n    #bsc-calculator .bsc-unit-toggle {\n      display: flex;\n      background: var(--bsc-surface);\n      border: 1px solid var(--bsc-border);\n      border-radius: 8px;\n      overflow: hidden;\n    }\n\n    #bsc-calculator .bsc-unit-toggle button {\n      padding: 8px 20px;\n      border: none;\n      background: transparent;\n      cursor: pointer;\n      font-size: 0.9rem;\n      font-weight: 500;\n      font-family: inherit;\n      color: var(--bsc-text-muted);\n      transition: background 0.2s, color 0.2s;\n      line-height: 1.4;\n    }\n\n    #bsc-calculator .bsc-unit-toggle button.bsc-active {\n      background: var(--bsc-primary);\n      color: #fff;\n    }\n\n    #bsc-calculator .bsc-unit-toggle button:not(.bsc-active):hover {\n      background: var(--bsc-primary-bg);\n      color: var(--bsc-primary);\n    }\n\n    #bsc-calculator .bsc-layout {\n      display: flex;\n      flex-direction: column;\n      gap: 24px;\n      max-width: 720px;\n      margin: 0 auto;\n    }\n\n    #bsc-calculator .bsc-panel {\n      background: var(--bsc-surface);\n      border: 1px solid var(--bsc-border);\n      border-radius: var(--bsc-radius);\n      box-shadow: var(--bsc-shadow);\n      padding: 24px;\n    }\n\n    #bsc-calculator .bsc-panel-title {\n      font-size: 1.1rem;\n      font-weight: 700;\n      color: var(--bsc-primary);\n      margin: 0 0 20px;\n      padding-bottom: 10px;\n      border-bottom: 2px solid var(--bsc-primary-bg);\n      line-height: 1.3;\n    }\n\n    #bsc-calculator .bsc-form-section {\n      margin-bottom: 22px;\n    }\n\n    #bsc-calculator .bsc-form-section:last-child {\n      margin-bottom: 0;\n    }\n\n    #bsc-calculator .bsc-section-label {\n      font-size: 0.78rem;\n      font-weight: 700;\n      text-transform: uppercase;\n      letter-spacing: 0.06em;\n      color: var(--bsc-text-muted);\n      margin-bottom: 12px;\n    }\n\n    #bsc-calculator .bsc-form-row {\n      margin-bottom: 14px;\n    }\n\n    #bsc-calculator .bsc-form-row:last-child {\n      margin-bottom: 0;\n    }\n\n    #bsc-calculator .bsc-form-row label {\n      display: flex;\n      align-items: center;\n      gap: 6px;\n      font-size: 0.9rem;\n      font-weight: 500;\n      margin-bottom: 5px;\n      color: var(--bsc-text);\n    }\n\n    #bsc-calculator .bsc-form-row input,\n    #bsc-calculator .bsc-form-row select {\n      display: block;\n      width: 100%;\n      padding: 9px 12px;\n      border: 1px solid var(--bsc-border);\n      border-radius: 6px;\n      font-size: 0.95rem;\n      font-family: inherit;\n      color: var(--bsc-text);\n      background: #fafbfc;\n      transition: border-color 0.2s, box-shadow 0.2s;\n      margin: 0;\n      line-height: 1.4;\n    }\n\n    #bsc-calculator .bsc-form-row input:focus,\n    #bsc-calculator .bsc-form-row select:focus {\n      outline: none;\n      border-color: var(--bsc-primary-light);\n      box-shadow: 0 0 0 3px rgba(42, 108, 184, 0.15);\n      background: #fff;\n    }\n\n    #bsc-calculator .bsc-form-row input.bsc-error,\n    #bsc-calculator .bsc-form-row select.bsc-error {\n      border-color: var(--bsc-danger);\n      background: var(--bsc-danger-bg);\n    }\n\n    #bsc-calculator .bsc-error-msg {\n      display: none;\n      font-size: 0.8rem;\n      color: var(--bsc-danger);\n      margin-top: 4px;\n    }\n\n    #bsc-calculator .bsc-error-msg.bsc-visible {\n      display: block;\n    }\n\n    #bsc-calculator .bsc-tooltip-trigger {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      width: 16px;\n      height: 16px;\n      border-radius: 50%;\n      background: var(--bsc-primary-bg);\n      color: var(--bsc-primary);\n      font-size: 0.7rem;\n      font-weight: 700;\n      cursor: help;\n      flex-shrink: 0;\n      position: relative;\n    }\n\n    #bsc-calculator .bsc-tooltip-trigger .bsc-tooltip-text {\n      visibility: hidden;\n      opacity: 0;\n      position: absolute;\n      bottom: calc(100% + 8px);\n      left: 50%;\n      transform: translateX(-50%);\n      background: var(--bsc-text);\n      color: #fff;\n      font-size: 0.78rem;\n      font-weight: 400;\n      line-height: 1.4;\n      padding: 8px 12px;\n      border-radius: 6px;\n      width: 240px;\n      z-index: 100;\n      transition: opacity 0.2s;\n      pointer-events: none;\n    }\n\n    #bsc-calculator .bsc-tooltip-trigger .bsc-tooltip-text::after {\n      content: '';\n      position: absolute;\n      top: 100%;\n      left: 50%;\n      transform: translateX(-50%);\n      border: 5px solid transparent;\n      border-top-color: var(--bsc-text);\n    }\n\n    #bsc-calculator .bsc-tooltip-trigger:hover .bsc-tooltip-text,\n    #bsc-calculator .bsc-tooltip-trigger:focus .bsc-tooltip-text {\n      visibility: visible;\n      opacity: 1;\n    }\n\n    #bsc-calculator .bsc-toggle-row {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      gap: 12px;\n      padding: 10px 14px;\n      background: var(--bsc-primary-bg);\n      border-radius: 8px;\n      margin-bottom: 14px;\n    }\n\n    #bsc-calculator .bsc-toggle-row label.bsc-toggle-label {\n      font-size: 0.9rem;\n      font-weight: 600;\n      color: var(--bsc-primary);\n      margin-bottom: 0;\n    }\n\n    #bsc-calculator .bsc-switch {\n      position: relative;\n      width: 44px;\n      height: 24px;\n      flex-shrink: 0;\n      margin: 0;\n    }\n\n    #bsc-calculator .bsc-switch input {\n      opacity: 0;\n      width: 0;\n      height: 0;\n      position: absolute;\n    }\n\n    #bsc-calculator .bsc-switch .bsc-slider {\n      position: absolute;\n      inset: 0;\n      background: #cbd5e1;\n      border-radius: 24px;\n      cursor: pointer;\n      transition: background 0.2s;\n    }\n\n    #bsc-calculator .bsc-switch .bsc-slider::before {\n      content: '';\n      position: absolute;\n      width: 18px;\n      height: 18px;\n      left: 3px;\n      bottom: 3px;\n      background: #fff;\n      border-radius: 50%;\n      transition: transform 0.2s;\n    }\n\n    #bsc-calculator .bsc-switch input:checked + .bsc-slider {\n      background: var(--bsc-primary);\n    }\n\n    #bsc-calculator .bsc-switch input:checked + .bsc-slider::before {\n      transform: translateX(20px);\n    }\n\n    #bsc-calculator .bsc-switch input:focus + .bsc-slider {\n      box-shadow: 0 0 0 3px rgba(42, 108, 184, 0.25);\n    }\n\n    #bsc-calculator .bsc-radio-group {\n      display: flex;\n      gap: 16px;\n      margin-bottom: 12px;\n      flex-wrap: wrap;\n    }\n\n    #bsc-calculator .bsc-radio-group label {\n      display: flex;\n      align-items: center;\n      gap: 6px;\n      font-size: 0.88rem;\n      font-weight: 500;\n      cursor: pointer;\n      margin-bottom: 0;\n    }\n\n    #bsc-calculator .bsc-radio-group input[type=\"radio\"] {\n      accent-color: var(--bsc-primary);\n      width: auto;\n      margin: 0;\n    }\n\n    #bsc-calculator .bsc-fieldset {\n      border: none;\n      padding: 0;\n      margin: 0 0 12px;\n    }\n\n    #bsc-calculator .bsc-conditional-fields {\n      display: none;\n    }\n\n    #bsc-calculator .bsc-conditional-fields.bsc-active {\n      display: block;\n    }\n\n    #bsc-calculator .bsc-unit-hint {\n      font-size: 0.8rem;\n      color: var(--bsc-text-muted);\n    }\n\n    #bsc-calculator .bsc-formula-note {\n      font-size: 0.82rem;\n      color: var(--bsc-text-muted);\n      margin-top: 4px;\n    }\n\n    #bsc-calculator .bsc-btn-row {\n      display: flex;\n      justify-content: center;\n      margin-top: 20px;\n    }\n\n    #bsc-calculator .bsc-btn {\n      padding: 10px 48px;\n      border: none;\n      border-radius: 6px;\n      font-size: 0.95rem;\n      font-weight: 600;\n      cursor: pointer;\n      font-family: inherit;\n      line-height: 1.4;\n      transition: background 0.2s, transform 0.1s;\n      min-width: 200px;\n    }\n\n    #bsc-calculator .bsc-btn:active {\n      transform: scale(0.98);\n    }\n\n    #bsc-calculator .bsc-btn-primary {\n      background: var(--bsc-primary);\n      color: #fff;\n    }\n\n    #bsc-calculator .bsc-btn-primary:hover {\n      background: var(--bsc-primary-light);\n    }\n\n    #bsc-calculator .bsc-results-panel {\n      display: none;\n      flex-direction: column;\n    }\n\n    #bsc-calculator .bsc-results-panel.bsc-visible {\n      display: flex;\n    }\n\n    #bsc-calculator .bsc-result-items {\n      display: flex;\n      flex-direction: column;\n      gap: 12px;\n      margin-bottom: 20px;\n    }\n\n    #bsc-calculator .bsc-result-item {\n      display: flex;\n      justify-content: space-between;\n      align-items: baseline;\n      padding: 10px 14px;\n      background: #fafbfc;\n      border-radius: 6px;\n      border: 1px solid var(--bsc-border);\n    }\n\n    #bsc-calculator .bsc-result-label {\n      font-size: 0.88rem;\n      color: var(--bsc-text-muted);\n    }\n\n    #bsc-calculator .bsc-result-value {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--bsc-text);\n      font-variant-numeric: tabular-nums;\n    }\n\n    #bsc-calculator .bsc-sf-hero {\n      text-align: center;\n      padding: 24px 16px;\n      border-radius: var(--bsc-radius);\n      margin-bottom: 16px;\n    }\n\n    #bsc-calculator .bsc-sf-label {\n      font-size: 0.85rem;\n      font-weight: 600;\n      text-transform: uppercase;\n      letter-spacing: 0.05em;\n      margin-bottom: 6px;\n    }\n\n    #bsc-calculator .bsc-sf-value {\n      font-size: clamp(2.5rem, 8vw, 3.5rem);\n      font-weight: 800;\n      line-height: 1.1;\n      font-variant-numeric: tabular-nums;\n    }\n\n    #bsc-calculator .bsc-sf-hero.bsc-unsafe { background: var(--bsc-danger-bg); }\n    #bsc-calculator .bsc-sf-hero.bsc-unsafe .bsc-sf-label,\n    #bsc-calculator .bsc-sf-hero.bsc-unsafe .bsc-sf-value { color: var(--bsc-danger); }\n\n    #bsc-calculator .bsc-sf-hero.bsc-low { background: var(--bsc-warning-bg); }\n    #bsc-calculator .bsc-sf-hero.bsc-low .bsc-sf-label,\n    #bsc-calculator .bsc-sf-hero.bsc-low .bsc-sf-value { color: var(--bsc-warning); }\n\n    #bsc-calculator .bsc-sf-hero.bsc-moderate { background: #fef9c3; }\n    #bsc-calculator .bsc-sf-hero.bsc-moderate .bsc-sf-label,\n    #bsc-calculator .bsc-sf-hero.bsc-moderate .bsc-sf-value { color: #a16207; }\n\n    #bsc-calculator .bsc-sf-hero.bsc-good { background: var(--bsc-success-bg); }\n    #bsc-calculator .bsc-sf-hero.bsc-good .bsc-sf-label,\n    #bsc-calculator .bsc-sf-hero.bsc-good .bsc-sf-value { color: var(--bsc-success); }\n\n    #bsc-calculator .bsc-sf-hero.bsc-high { background: var(--bsc-info-bg); }\n    #bsc-calculator .bsc-sf-hero.bsc-high .bsc-sf-label,\n    #bsc-calculator .bsc-sf-hero.bsc-high .bsc-sf-value { color: var(--bsc-info); }\n\n    #bsc-calculator .bsc-interpretation {\n      padding: 14px 16px;\n      border-radius: 8px;\n      font-size: 0.9rem;\n      line-height: 1.5;\n      margin-bottom: 12px;\n    }\n\n    #bsc-calculator .bsc-interpretation.bsc-unsafe { background: var(--bsc-danger-bg); border-left: 4px solid var(--bsc-danger); }\n    #bsc-calculator .bsc-interpretation.bsc-low { background: var(--bsc-warning-bg); border-left: 4px solid var(--bsc-warning); }\n    #bsc-calculator .bsc-interpretation.bsc-moderate { background: #fef9c3; border-left: 4px solid #ca8a04; }\n    #bsc-calculator .bsc-interpretation.bsc-good { background: var(--bsc-success-bg); border-left: 4px solid var(--bsc-success); }\n    #bsc-calculator .bsc-interpretation.bsc-high { background: var(--bsc-info-bg); border-left: 4px solid var(--bsc-info); }\n\n    #bsc-calculator .bsc-interpretation strong {\n      display: block;\n      margin-bottom: 4px;\n    }\n\n    #bsc-calculator .bsc-guidance-note {\n      font-size: 0.8rem;\n      color: var(--bsc-text-muted);\n      font-style: italic;\n      margin: 0 0 16px;\n    }\n\n    #bsc-calculator .bsc-hidden-field {\n      display: none !important;\n    }\n  \n<\/style>\n<div id=\"bsc-calculator\" class=\"bsc-calculator\">\n\n    <div class=\"bsc-unit-bar\">\n      <label for=\"bsc-unit-metric\">Unit System:<\/label>\n      <div class=\"bsc-unit-toggle\" role=\"group\" aria-label=\"Unit system\">\n        <button type=\"button\" id=\"bsc-unit-metric\" class=\"bsc-active\" aria-pressed=\"true\">Metric (mm, N, MPa)<\/button>\n        <button type=\"button\" id=\"bsc-unit-imperial\" aria-pressed=\"false\">Imperial (in, lbf, ksi)<\/button>\n      <\/div>\n    <\/div>\n\n    <div class=\"bsc-layout\">\n      <section class=\"bsc-panel\" aria-labelledby=\"bsc-input-title\">\n        <h2 class=\"bsc-panel-title\" id=\"bsc-input-title\">Input Parameters<\/h2>\n\n        <div class=\"bsc-toggle-row\">\n          <label class=\"bsc-toggle-label\" for=\"bsc-simple-mode\">Simple Load Mode<\/label>\n          <label class=\"bsc-switch\" aria-label=\"Toggle simple load mode\">\n            <input type=\"checkbox\" id=\"bsc-simple-mode\">\n            <span class=\"bsc-slider\"><\/span>\n          <\/label>\n        <\/div>\n\n        <div class=\"bsc-form-section\">\n          <div class=\"bsc-section-label\">Bolt Geometry<\/div>\n\n          <div class=\"bsc-form-row\">\n            <label for=\"bsc-bolt-diameter\">\n              Nominal Bolt Diameter, <em>d<\/em>\n              <span class=\"bsc-tooltip-trigger\" tabindex=\"0\" aria-label=\"More information\">\n                ?\n                <span class=\"bsc-tooltip-text\">The nominal major diameter of the bolt thread.<\/span>\n              <\/span>\n            <\/label>\n            <input type=\"number\" id=\"bsc-bolt-diameter\" min=\"0\" step=\"any\" placeholder=\"e.g. 12\">\n            <span class=\"bsc-unit-hint bsc-unit-label-d\">mm<\/span>\n            <div class=\"bsc-error-msg\" id=\"bsc-err-diameter\"><\/div>\n          <\/div>\n\n          <fieldset class=\"bsc-fieldset\">\n            <legend class=\"bsc-section-label\" style=\"margin-bottom:8px;\">Tensile Stress Area, A<sub>t<\/sub><\/legend>\n            <div class=\"bsc-radio-group\">\n              <label>\n                <input type=\"radio\" name=\"bsc-at-mode\" value=\"manual\" checked> Enter manually\n              <\/label>\n              <label>\n                <input type=\"radio\" name=\"bsc-at-mode\" value=\"calculated\"> Calculate from thread data\n              <\/label>\n            <\/div>\n          <\/fieldset>\n\n          <div id=\"bsc-at-manual-fields\">\n            <div class=\"bsc-form-row\">\n              <label for=\"bsc-tensile-area\">\n                Tensile Stress Area, A<sub>t<\/sub>\n                <span class=\"bsc-tooltip-trigger\" tabindex=\"0\" aria-label=\"More information\">\n                  ?\n                  <span class=\"bsc-tooltip-text\">Effective cross-sectional area of the bolt at the thread root, used for tensile stress calculations.<\/span>\n                <\/span>\n              <\/label>\n              <input type=\"number\" id=\"bsc-tensile-area\" min=\"0\" step=\"any\" placeholder=\"e.g. 84.3\">\n              <span class=\"bsc-unit-hint bsc-unit-label-at\">mm<sup>2<\/sup><\/span>\n              <div class=\"bsc-error-msg\" id=\"bsc-err-area\"><\/div>\n            <\/div>\n          <\/div>\n\n          <div id=\"bsc-at-calc-fields\" class=\"bsc-conditional-fields\">\n            <div class=\"bsc-form-row\">\n              <label for=\"bsc-thread-pitch\">\n                Thread Pitch, <em>P<\/em>\n                <span class=\"bsc-tooltip-trigger\" tabindex=\"0\" aria-label=\"More information\">\n                  ?\n                  <span class=\"bsc-tooltip-text\">Distance between adjacent thread crests. For ISO metric threads, pitch equals the number after the x in designations like M12x1.75.<\/span>\n                <\/span>\n              <\/label>\n              <input type=\"number\" id=\"bsc-thread-pitch\" min=\"0\" step=\"any\" placeholder=\"e.g. 1.75\">\n              <span class=\"bsc-unit-hint bsc-unit-label-p\">mm<\/span>\n              <div class=\"bsc-error-msg\" id=\"bsc-err-pitch\"><\/div>\n            <\/div>\n            <p class=\"bsc-formula-note\">\n              A<sub>t<\/sub> = pi\/4 x (<em>d<\/em> &#8211; 0.9382<em>P<\/em>)<sup>2<\/sup> (ISO metric)\n            <\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"bsc-form-section\">\n          <div class=\"bsc-section-label\">Bolt Material<\/div>\n\n          <div class=\"bsc-form-row\">\n            <label for=\"bsc-bolt-class\">Bolt Property Class<\/label>\n            <select id=\"bsc-bolt-class\">\n              <option value=\"custom\">Custom<\/option>\n              <option value=\"4.6\">Class 4.6<\/option>\n              <option value=\"5.8\">Class 5.8<\/option>\n              <option value=\"8.8\" selected>Class 8.8<\/option>\n              <option value=\"10.9\">Class 10.9<\/option>\n              <option value=\"12.9\">Class 12.9<\/option>\n            <\/select>\n          <\/div>\n\n          <div class=\"bsc-form-row\">\n            <label for=\"bsc-yield-strength\">\n              Bolt Yield Strength, S<sub>y<\/sub>\n              <span class=\"bsc-tooltip-trigger\" tabindex=\"0\" aria-label=\"More information\">\n                ?\n                <span class=\"bsc-tooltip-text\">Minimum yield strength of the bolt material. For property classes, this is the stress at 0.2% permanent strain.<\/span>\n              <\/span>\n            <\/label>\n            <input type=\"number\" id=\"bsc-yield-strength\" min=\"0\" step=\"any\" placeholder=\"e.g. 640\">\n            <span class=\"bsc-unit-hint bsc-unit-label-sy\">MPa<\/span>\n            <div class=\"bsc-error-msg\" id=\"bsc-err-yield\"><\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"bsc-form-section\" id=\"bsc-loads-section\">\n          <div class=\"bsc-section-label\">Applied Loads<\/div>\n\n          <div class=\"bsc-form-row\" id=\"bsc-preload-row\">\n            <label for=\"bsc-preload\">\n              Bolt Preload, F<sub>i<\/sub>\n              <span class=\"bsc-tooltip-trigger\" tabindex=\"0\" aria-label=\"More information\">\n                ?\n                <span class=\"bsc-tooltip-text\">Initial clamping force in the bolt after tightening, before external loads are applied.<\/span>\n              <\/span>\n            <\/label>\n            <input type=\"number\" id=\"bsc-preload\" min=\"0\" step=\"any\" placeholder=\"e.g. 30000\">\n            <span class=\"bsc-unit-hint bsc-unit-label-fi\">N<\/span>\n            <div class=\"bsc-error-msg\" id=\"bsc-err-preload\"><\/div>\n          <\/div>\n\n          <div class=\"bsc-form-row\">\n            <label for=\"bsc-external-load\">\n              External Axial Load, F\n              <span class=\"bsc-tooltip-trigger\" tabindex=\"0\" aria-label=\"More information\">\n                ?\n                <span class=\"bsc-tooltip-text\">External tensile force applied to the joint in the bolt axis direction.<\/span>\n              <\/span>\n            <\/label>\n            <input type=\"number\" id=\"bsc-external-load\" min=\"0\" step=\"any\" placeholder=\"e.g. 20000\">\n            <span class=\"bsc-unit-hint bsc-unit-label-f\">N<\/span>\n            <div class=\"bsc-error-msg\" id=\"bsc-err-external\"><\/div>\n          <\/div>\n\n          <div class=\"bsc-form-row\" id=\"bsc-joint-factor-row\">\n            <label for=\"bsc-joint-factor\">\n              Joint Load Factor, C\n              <span class=\"bsc-tooltip-trigger\" tabindex=\"0\" aria-label=\"More information\">\n                ?\n                <span class=\"bsc-tooltip-text\">The joint load factor represents the fraction of the external tensile load carried by the bolt. It depends on the relative stiffness of the bolt and clamped members.<\/span>\n              <\/span>\n            <\/label>\n            <input type=\"number\" id=\"bsc-joint-factor\" min=\"0\" max=\"1\" step=\"any\" value=\"0.25\" placeholder=\"0.25\">\n            <div class=\"bsc-error-msg\" id=\"bsc-err-joint\"><\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"bsc-btn-row\">\n          <button type=\"button\" class=\"bsc-btn bsc-btn-primary\" id=\"bsc-btn-calculate\">Calculate<\/button>\n        <\/div>\n      <\/section>\n\n      <section class=\"bsc-panel bsc-results-panel\" id=\"bsc-results-panel\" aria-labelledby=\"bsc-results-title\" aria-live=\"polite\">\n        <h2 class=\"bsc-panel-title\" id=\"bsc-results-title\">Calculation Results<\/h2>\n\n        <div id=\"bsc-results-content\">\n          <div class=\"bsc-sf-hero\" id=\"bsc-sf-hero\">\n            <div class=\"bsc-sf-label\">Bolt Safety Factor<\/div>\n            <div class=\"bsc-sf-value\" id=\"bsc-res-safety-factor\">&#8211;<\/div>\n          <\/div>\n\n          <div class=\"bsc-interpretation\" id=\"bsc-interpretation\"><\/div>\n          <p class=\"bsc-guidance-note\">These ranges are general guidance only and are not universal design requirements.<\/p>\n\n          <div class=\"bsc-result-items\">\n            <div class=\"bsc-result-item\">\n              <span class=\"bsc-result-label\">Tensile Stress Area<\/span>\n              <span class=\"bsc-result-value\" id=\"bsc-res-area\">&#8211;<\/span>\n            <\/div>\n            <div class=\"bsc-result-item\" id=\"bsc-res-additional-row\">\n              <span class=\"bsc-result-label\">Additional Bolt Load (dF<sub>b<\/sub>)<\/span>\n              <span class=\"bsc-result-value\" id=\"bsc-res-additional\">&#8211;<\/span>\n            <\/div>\n            <div class=\"bsc-result-item\" id=\"bsc-res-total-row\">\n              <span class=\"bsc-result-label\">Total Bolt Tensile Load (F<sub>b<\/sub>)<\/span>\n              <span class=\"bsc-result-value\" id=\"bsc-res-total\">&#8211;<\/span>\n            <\/div>\n            <div class=\"bsc-result-item\">\n              <span class=\"bsc-result-label\">Bolt Tensile Stress (<span class=\"bsc-sigma\">&#963;<\/span><sub>b<\/sub>)<\/span>\n              <span class=\"bsc-result-value\" id=\"bsc-res-stress\">&#8211;<\/span>\n            <\/div>\n            <div class=\"bsc-result-item\">\n              <span class=\"bsc-result-label\">Bolt Yield Strength (S<sub>y<\/sub>)<\/span>\n              <span class=\"bsc-result-value\" id=\"bsc-res-yield\">&#8211;<\/span>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/section>\n    <\/div>\n<script type=\"text\/javascript\">(function(){var b=\"KGZ1bmN0aW9uICgpIHsNCiAgZnVuY3Rpb24gaW5pdEJzY0NhbGN1bGF0b3IoKSB7DQogICAgdmFyIHJvb3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYnNjLWNhbGN1bGF0b3IiKTsNCiAgICBpZiAoIXJvb3QpIHJldHVybjsNCg0KICAgIHZhciBCT0xUX0NMQVNTRVMgPSB7DQogICAgICAiNC42IjogMjQwLA0KICAgICAgIjUuOCI6IDQwMCwNCiAgICAgICI4LjgiOiA2NDAsDQogICAgICAiMTAuOSI6IDkwMCwNCiAgICAgICIxMi45IjogMTA4MA0KICAgIH07DQoNCiAgICB2YXIgTU1fVE9fSU4gPSAxIC8gMjUuNDsNCiAgICB2YXIgSU5fVE9fTU0gPSAyNS40Ow0KICAgIHZhciBOX1RPX0xCRiA9IDEgLyA0LjQ0ODIyMTYxNTM7DQogICAgdmFyIExCRl9UT19OID0gNC40NDgyMjE2MTUzOw0KICAgIHZhciBNUEFfVE9fS1NJID0gMSAvIDYuODk0NzU3Mjk7DQogICAgdmFyIEtTSV9UT19NUEEgPSA2Ljg5NDc1NzI5Ow0KICAgIHZhciBNTTJfVE9fSU4yID0gTU1fVE9fSU4gKiBNTV9UT19JTjsNCiAgICB2YXIgSU4yX1RPX01NMiA9IElOX1RPX01NICogSU5fVE9fTU07DQoNCiAgICB2YXIgdW5pdFN5c3RlbSA9ICJtZXRyaWMiOw0KICAgIHZhciBjbGFzc01hbnVhbGx5RWRpdGVkID0gZmFsc2U7DQoNCiAgICBmdW5jdGlvbiBieUlkKGlkKSB7DQogICAgICByZXR1cm4gcm9vdC5xdWVyeVNlbGVjdG9yKCIjIiArIGlkKTsNCiAgICB9DQoNCiAgICB2YXIgZWxzID0gew0KICAgICAgdW5pdE1ldHJpYzogYnlJZCgiYnNjLXVuaXQtbWV0cmljIiksDQogICAgICB1bml0SW1wZXJpYWw6IGJ5SWQoImJzYy11bml0LWltcGVyaWFsIiksDQogICAgICBzaW1wbGVNb2RlOiBieUlkKCJic2Mtc2ltcGxlLW1vZGUiKSwNCiAgICAgIGJvbHREaWFtZXRlcjogYnlJZCgiYnNjLWJvbHQtZGlhbWV0ZXIiKSwNCiAgICAgIHRlbnNpbGVBcmVhOiBieUlkKCJic2MtdGVuc2lsZS1hcmVhIiksDQogICAgICB0aHJlYWRQaXRjaDogYnlJZCgiYnNjLXRocmVhZC1waXRjaCIpLA0KICAgICAgYm9sdENsYXNzOiBieUlkKCJic2MtYm9sdC1jbGFzcyIpLA0KICAgICAgeWllbGRTdHJlbmd0aDogYnlJZCgiYnNjLXlpZWxkLXN0cmVuZ3RoIiksDQogICAgICBwcmVsb2FkOiBieUlkKCJic2MtcHJlbG9hZCIpLA0KICAgICAgZXh0ZXJuYWxMb2FkOiBieUlkKCJic2MtZXh0ZXJuYWwtbG9hZCIpLA0KICAgICAgam9pbnRGYWN0b3I6IGJ5SWQoImJzYy1qb2ludC1mYWN0b3IiKSwNCiAgICAgIGF0TWFudWFsRmllbGRzOiBieUlkKCJic2MtYXQtbWFudWFsLWZpZWxkcyIpLA0KICAgICAgYXRDYWxjRmllbGRzOiBieUlkKCJic2MtYXQtY2FsYy1maWVsZHMiKSwNCiAgICAgIHByZWxvYWRSb3c6IGJ5SWQoImJzYy1wcmVsb2FkLXJvdyIpLA0KICAgICAgam9pbnRGYWN0b3JSb3c6IGJ5SWQoImJzYy1qb2ludC1mYWN0b3Itcm93IiksDQogICAgICByZXNBZGRpdGlvbmFsUm93OiBieUlkKCJic2MtcmVzLWFkZGl0aW9uYWwtcm93IiksDQogICAgICByZXNUb3RhbFJvdzogYnlJZCgiYnNjLXJlcy10b3RhbC1yb3ciKSwNCiAgICAgIHJlc3VsdHNQYW5lbDogYnlJZCgiYnNjLXJlc3VsdHMtcGFuZWwiKSwNCiAgICAgIHNmSGVybzogYnlJZCgiYnNjLXNmLWhlcm8iKSwNCiAgICAgIGludGVycHJldGF0aW9uOiBieUlkKCJic2MtaW50ZXJwcmV0YXRpb24iKSwNCiAgICAgIGJ0bkNhbGN1bGF0ZTogYnlJZCgiYnNjLWJ0bi1jYWxjdWxhdGUiKQ0KICAgIH07DQoNCiAgICBpZiAoIWVscy5idG5DYWxjdWxhdGUgfHwgIWVscy5yZXN1bHRzUGFuZWwpIHJldHVybjsNCg0KICAgIHZhciB1bml0TGFiZWxzID0gew0KICAgICAgZDogcm9vdC5xdWVyeVNlbGVjdG9yKCIuYnNjLXVuaXQtbGFiZWwtZCIpLA0KICAgICAgYXQ6IHJvb3QucXVlcnlTZWxlY3RvcigiLmJzYy11bml0LWxhYmVsLWF0IiksDQogICAgICBwOiByb290LnF1ZXJ5U2VsZWN0b3IoIi5ic2MtdW5pdC1sYWJlbC1wIiksDQogICAgICBzeTogcm9vdC5xdWVyeVNlbGVjdG9yKCIuYnNjLXVuaXQtbGFiZWwtc3kiKSwNCiAgICAgIGZpOiByb290LnF1ZXJ5U2VsZWN0b3IoIi5ic2MtdW5pdC1sYWJlbC1maSIpLA0KICAgICAgZjogcm9vdC5xdWVyeVNlbGVjdG9yKCIuYnNjLXVuaXQtbGFiZWwtZiIpDQogICAgfTsNCg0KICAgIGZ1bmN0aW9uIHBhcnNlTnVtKGlucHV0KSB7DQogICAgICBpZiAoIWlucHV0KSByZXR1cm4gbnVsbDsNCiAgICAgIHZhciB2ID0gcGFyc2VGbG9hdChpbnB1dC52YWx1ZSk7DQogICAgICByZXR1cm4gaXNOYU4odikgPyBudWxsIDogdjsNCiAgICB9DQoNCiAgICBmdW5jdGlvbiBzdHJpcENvbW1hcyhzdHIpIHsNCiAgICAgIHJldHVybiBzdHIuc3BsaXQoIiwiKS5qb2luKCIiKTsNCiAgICB9DQoNCiAgICBmdW5jdGlvbiBmb3JtYXROdW0odmFsdWUsIGRlY2ltYWxzKSB7DQogICAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCB8fCAhaXNGaW5pdGUodmFsdWUpKSByZXR1cm4gIi0iOw0KICAgICAgcmV0dXJuIHN0cmlwQ29tbWFzKA0KICAgICAgICB2YWx1ZS50b0xvY2FsZVN0cmluZyh1bmRlZmluZWQsIHsNCiAgICAgICAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IGRlY2ltYWxzLA0KICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZGVjaW1hbHMNCiAgICAgICAgfSkNCiAgICAgICk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZ2V0QXRNb2RlKCkgew0KICAgICAgdmFyIGNoZWNrZWQgPSByb290LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9YnNjLWF0LW1vZGVdOmNoZWNrZWQiKTsNCiAgICAgIHJldHVybiBjaGVja2VkID8gY2hlY2tlZC52YWx1ZSA6ICJtYW51YWwiOw0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIGlzTWV0cmljKCkgew0KICAgICAgcmV0dXJuIHVuaXRTeXN0ZW0gPT09ICJtZXRyaWMiOw0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIGdldFN0cmVzc1VuaXQoKSB7DQogICAgICByZXR1cm4gaXNNZXRyaWMoKSA\/ICJNUGEiIDogImtzaSI7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZ2V0Rm9yY2VVbml0KCkgew0KICAgICAgcmV0dXJuIGlzTWV0cmljKCkgPyAiTiIgOiAibGJmIjsNCiAgICB9DQoNCiAgICBmdW5jdGlvbiBnZXRBcmVhVW5pdCgpIHsNCiAgICAgIHJldHVybiBpc01ldHJpYygpID8gIm1tMiIgOiAiaW4yIjsNCiAgICB9DQoNCiAgICBmdW5jdGlvbiBnZXRMZW5ndGhVbml0KCkgew0KICAgICAgcmV0dXJuIGlzTWV0cmljKCkgPyAibW0iIDogImluIjsNCiAgICB9DQoNCiAgICBmdW5jdGlvbiBjYWxjVGVuc2lsZUFyZWEoZCwgcCkgew0KICAgICAgdmFyIGVmZmVjdGl2ZSA9IGQgLSAwLjkzODIgKiBwOw0KICAgICAgaWYgKGVmZmVjdGl2ZSA8PSAwKSByZXR1cm4gbnVsbDsNCiAgICAgIHJldHVybiAoTWF0aC5QSSAvIDQpICogZWZmZWN0aXZlICogZWZmZWN0aXZlOw0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIGNvbnZlcnRZaWVsZEZvckRpc3BsYXkobXBhVmFsdWUpIHsNCiAgICAgIHJldHVybiBpc01ldHJpYygpID8gbXBhVmFsdWUgOiBtcGFWYWx1ZSAqIE1QQV9UT19LU0k7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gY29udmVydElucHV0VmFsdWUoaW5wdXQsIGZhY3Rvcikgew0KICAgICAgdmFyIHYgPSBwYXJzZU51bShpbnB1dCk7DQogICAgICBpZiAodiAhPT0gbnVsbCAmJiB2ICE9PSAwKSB7DQogICAgICAgIGlucHV0LnZhbHVlID0gZm9ybWF0TnVtKHYgKiBmYWN0b3IsIDQpOw0KICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHVwZGF0ZVVuaXRMYWJlbHMoKSB7DQogICAgICBpZiAoIXVuaXRMYWJlbHMuZCkgcmV0dXJuOw0KICAgICAgdW5pdExhYmVscy5kLnRleHRDb250ZW50ID0gZ2V0TGVuZ3RoVW5pdCgpOw0KICAgICAgdW5pdExhYmVscy5hdC50ZXh0Q29udGVudCA9IGdldEFyZWFVbml0KCk7DQogICAgICB1bml0TGFiZWxzLnAudGV4dENvbnRlbnQgPSBnZXRMZW5ndGhVbml0KCk7DQogICAgICB1bml0TGFiZWxzLnN5LnRleHRDb250ZW50ID0gZ2V0U3RyZXNzVW5pdCgpOw0KICAgICAgdW5pdExhYmVscy5maS50ZXh0Q29udGVudCA9IGdldEZvcmNlVW5pdCgpOw0KICAgICAgdW5pdExhYmVscy5mLnRleHRDb250ZW50ID0gZ2V0Rm9yY2VVbml0KCk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gc3dpdGNoVW5pdHMobmV3U3lzdGVtKSB7DQogICAgICBpZiAobmV3U3lzdGVtID09PSB1bml0U3lzdGVtKSByZXR1cm47DQoNCiAgICAgIGlmIChuZXdTeXN0ZW0gPT09ICJpbXBlcmlhbCIpIHsNCiAgICAgICAgY29udmVydElucHV0VmFsdWUoZWxzLmJvbHREaWFtZXRlciwgTU1fVE9fSU4pOw0KICAgICAgICBjb252ZXJ0SW5wdXRWYWx1ZShlbHMudGVuc2lsZUFyZWEsIE1NMl9UT19JTjIpOw0KICAgICAgICBjb252ZXJ0SW5wdXRWYWx1ZShlbHMudGhyZWFkUGl0Y2gsIE1NX1RPX0lOKTsNCiAgICAgICAgY29udmVydElucHV0VmFsdWUoZWxzLnlpZWxkU3RyZW5ndGgsIE1QQV9UT19LU0kpOw0KICAgICAgICBjb252ZXJ0SW5wdXRWYWx1ZShlbHMucHJlbG9hZCwgTl9UT19MQkYpOw0KICAgICAgICBjb252ZXJ0SW5wdXRWYWx1ZShlbHMuZXh0ZXJuYWxMb2FkLCBOX1RPX0xCRik7DQogICAgICB9IGVsc2Ugew0KICAgICAgICBjb252ZXJ0SW5wdXRWYWx1ZShlbHMuYm9sdERpYW1ldGVyLCBJTl9UT19NTSk7DQogICAgICAgIGNvbnZlcnRJbnB1dFZhbHVlKGVscy50ZW5zaWxlQXJlYSwgSU4yX1RPX01NMik7DQogICAgICAgIGNvbnZlcnRJbnB1dFZhbHVlKGVscy50aHJlYWRQaXRjaCwgSU5fVE9fTU0pOw0KICAgICAgICBjb252ZXJ0SW5wdXRWYWx1ZShlbHMueWllbGRTdHJlbmd0aCwgS1NJX1RPX01QQSk7DQogICAgICAgIGNvbnZlcnRJbnB1dFZhbHVlKGVscy5wcmVsb2FkLCBMQkZfVE9fTik7DQogICAgICAgIGNvbnZlcnRJbnB1dFZhbHVlKGVscy5leHRlcm5hbExvYWQsIExCRl9UT19OKTsNCiAgICAgIH0NCg0KICAgICAgdW5pdFN5c3RlbSA9IG5ld1N5c3RlbTsNCiAgICAgIGVscy51bml0TWV0cmljLmNsYXNzTGlzdC50b2dnbGUoImJzYy1hY3RpdmUiLCBpc01ldHJpYygpKTsNCiAgICAgIGVscy51bml0SW1wZXJpYWwuY2xhc3NMaXN0LnRvZ2dsZSgiYnNjLWFjdGl2ZSIsICFpc01ldHJpYygpKTsNCiAgICAgIGVscy51bml0TWV0cmljLnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIiwgaXNNZXRyaWMoKSA\/ICJ0cnVlIiA6ICJmYWxzZSIpOw0KICAgICAgZWxzLnVuaXRJbXBlcmlhbC5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsIGlzTWV0cmljKCkgPyAiZmFsc2UiIDogInRydWUiKTsNCiAgICAgIHVwZGF0ZVVuaXRMYWJlbHMoKTsNCg0KICAgICAgaWYgKCFjbGFzc01hbnVhbGx5RWRpdGVkKSB7DQogICAgICAgIGFwcGx5Qm9sdENsYXNzKGVscy5ib2x0Q2xhc3MudmFsdWUpOw0KICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIGFwcGx5Qm9sdENsYXNzKGNsYXNzS2V5KSB7DQogICAgICBpZiAoY2xhc3NLZXkgPT09ICJjdXN0b20iKSByZXR1cm47DQogICAgICB2YXIgbXBhID0gQk9MVF9DTEFTU0VTW2NsYXNzS2V5XTsNCiAgICAgIGlmIChtcGEgIT09IHVuZGVmaW5lZCkgew0KICAgICAgICBlbHMueWllbGRTdHJlbmd0aC52YWx1ZSA9IGZvcm1hdE51bShjb252ZXJ0WWllbGRGb3JEaXNwbGF5KG1wYSksIDEpOw0KICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHVwZGF0ZUF0TW9kZSgpIHsNCiAgICAgIHZhciBpc0NhbGMgPSBnZXRBdE1vZGUoKSA9PT0gImNhbGN1bGF0ZWQiOw0KICAgICAgZWxzLmF0TWFudWFsRmllbGRzLnN0eWxlLmRpc3BsYXkgPSBpc0NhbGMgPyAibm9uZSIgOiAiYmxvY2siOw0KICAgICAgZWxzLmF0Q2FsY0ZpZWxkcy5jbGFzc0xpc3QudG9nZ2xlKCJic2MtYWN0aXZlIiwgaXNDYWxjKTsNCiAgICB9DQoNCiAgICBmdW5jdGlvbiB1cGRhdGVTaW1wbGVNb2RlKCkgew0KICAgICAgdmFyIHNpbXBsZSA9IGVscy5zaW1wbGVNb2RlLmNoZWNrZWQ7DQogICAgICBlbHMucHJlbG9hZFJvdy5jbGFzc0xpc3QudG9nZ2xlKCJic2MtaGlkZGVuLWZpZWxkIiwgc2ltcGxlKTsNCiAgICAgIGVscy5qb2ludEZhY3RvclJvdy5jbGFzc0xpc3QudG9nZ2xlKCJic2MtaGlkZGVuLWZpZWxkIiwgc2ltcGxlKTsNCiAgICAgIGVscy5yZXNBZGRpdGlvbmFsUm93LmNsYXNzTGlzdC50b2dnbGUoImJzYy1oaWRkZW4tZmllbGQiLCBzaW1wbGUpOw0KICAgICAgZWxzLnJlc1RvdGFsUm93LmNsYXNzTGlzdC50b2dnbGUoImJzYy1oaWRkZW4tZmllbGQiLCBzaW1wbGUpOw0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHNldEVycm9yKGZpZWxkSWQsIGVycklkLCBtZXNzYWdlKSB7DQogICAgICB2YXIgZmllbGQgPSBieUlkKGZpZWxkSWQpOw0KICAgICAgdmFyIGVyciA9IGJ5SWQoZXJySWQpOw0KICAgICAgaWYgKCFmaWVsZCB8fCAhZXJyKSByZXR1cm4gISFtZXNzYWdlOw0KICAgICAgaWYgKG1lc3NhZ2UpIHsNCiAgICAgICAgZmllbGQuY2xhc3NMaXN0LmFkZCgiYnNjLWVycm9yIik7DQogICAgICAgIGVyci50ZXh0Q29udGVudCA9IG1lc3NhZ2U7DQogICAgICAgIGVyci5jbGFzc0xpc3QuYWRkKCJic2MtdmlzaWJsZSIpOw0KICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICB9DQogICAgICBmaWVsZC5jbGFzc0xpc3QucmVtb3ZlKCJic2MtZXJyb3IiKTsNCiAgICAgIGVyci50ZXh0Q29udGVudCA9ICIiOw0KICAgICAgZXJyLmNsYXNzTGlzdC5yZW1vdmUoImJzYy12aXNpYmxlIik7DQogICAgICByZXR1cm4gdHJ1ZTsNCiAgICB9DQoNCiAgICBmdW5jdGlvbiB2YWxpZGF0ZSgpIHsNCiAgICAgIHZhciB2YWxpZCA9IHRydWU7DQogICAgICB2YXIgYXRNb2RlID0gZ2V0QXRNb2RlKCk7DQogICAgICB2YXIgZCA9IHBhcnNlTnVtKGVscy5ib2x0RGlhbWV0ZXIpOw0KICAgICAgdmFyIGF0ID0gbnVsbDsNCg0KICAgICAgaWYgKGF0TW9kZSA9PT0gImNhbGN1bGF0ZWQiKSB7DQogICAgICAgIGlmIChkID09PSBudWxsIHx8IGQgPD0gMCkgew0KICAgICAgICAgIHZhbGlkID0gc2V0RXJyb3IoImJzYy1ib2x0LWRpYW1ldGVyIiwgImJzYy1lcnItZGlhbWV0ZXIiLCAiRGlhbWV0ZXIgbXVzdCBiZSBncmVhdGVyIHRoYW4gMC4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICBzZXRFcnJvcigiYnNjLWJvbHQtZGlhbWV0ZXIiLCAiYnNjLWVyci1kaWFtZXRlciIsICIiKTsNCiAgICAgICAgfQ0KDQogICAgICAgIHZhciBwID0gcGFyc2VOdW0oZWxzLnRocmVhZFBpdGNoKTsNCiAgICAgICAgaWYgKHAgPT09IG51bGwgfHwgcCA8PSAwKSB7DQogICAgICAgICAgdmFsaWQgPSBzZXRFcnJvcigiYnNjLXRocmVhZC1waXRjaCIsICJic2MtZXJyLXBpdGNoIiwgIlRocmVhZCBwaXRjaCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwLiIpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgIHNldEVycm9yKCJic2MtdGhyZWFkLXBpdGNoIiwgImJzYy1lcnItcGl0Y2giLCAiIik7DQogICAgICAgIH0NCg0KICAgICAgICBpZiAoZCAhPT0gbnVsbCAmJiBkID4gMCAmJiBwICE9PSBudWxsICYmIHAgPiAwKSB7DQogICAgICAgICAgYXQgPSBjYWxjVGVuc2lsZUFyZWEoZCwgcCk7DQogICAgICAgICAgaWYgKGF0ID09PSBudWxsIHx8IGF0IDw9IDApIHsNCiAgICAgICAgICAgIHZhbGlkID0gc2V0RXJyb3IoImJzYy10aHJlYWQtcGl0Y2giLCAiYnNjLWVyci1waXRjaCIsICJJbnZhbGlkIGdlb21ldHJ5OiBlZmZlY3RpdmUgZGlhbWV0ZXIgaXMgemVybyBvciBuZWdhdGl2ZS4iKTsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgc2V0RXJyb3IoImJzYy10ZW5zaWxlLWFyZWEiLCAiYnNjLWVyci1hcmVhIiwgIiIpOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgc2V0RXJyb3IoImJzYy1ib2x0LWRpYW1ldGVyIiwgImJzYy1lcnItZGlhbWV0ZXIiLCAiIik7DQogICAgICAgIHNldEVycm9yKCJic2MtdGhyZWFkLXBpdGNoIiwgImJzYy1lcnItcGl0Y2giLCAiIik7DQogICAgICAgIGF0ID0gcGFyc2VOdW0oZWxzLnRlbnNpbGVBcmVhKTsNCiAgICAgICAgaWYgKGF0ID09PSBudWxsIHx8IGF0IDw9IDApIHsNCiAgICAgICAgICB2YWxpZCA9IHNldEVycm9yKCJic2MtdGVuc2lsZS1hcmVhIiwgImJzYy1lcnItYXJlYSIsICJUZW5zaWxlIHN0cmVzcyBhcmVhIG11c3QgYmUgZ3JlYXRlciB0aGFuIDAuIik7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgc2V0RXJyb3IoImJzYy10ZW5zaWxlLWFyZWEiLCAiYnNjLWVyci1hcmVhIiwgIiIpOw0KICAgICAgICB9DQogICAgICB9DQoNCiAgICAgIHZhciBzeSA9IHBhcnNlTnVtKGVscy55aWVsZFN0cmVuZ3RoKTsNCiAgICAgIGlmIChzeSA9PT0gbnVsbCB8fCBzeSA8PSAwKSB7DQogICAgICAgIHZhbGlkID0gc2V0RXJyb3IoImJzYy15aWVsZC1zdHJlbmd0aCIsICJic2MtZXJyLXlpZWxkIiwgIllpZWxkIHN0cmVuZ3RoIG11c3QgYmUgZ3JlYXRlciB0aGFuIDAuIik7DQogICAgICB9IGVsc2Ugew0KICAgICAgICBzZXRFcnJvcigiYnNjLXlpZWxkLXN0cmVuZ3RoIiwgImJzYy1lcnIteWllbGQiLCAiIik7DQogICAgICB9DQoNCiAgICAgIHZhciBzaW1wbGUgPSBlbHMuc2ltcGxlTW9kZS5jaGVja2VkOw0KDQogICAgICBpZiAoIXNpbXBsZSkgew0KICAgICAgICB2YXIgZmkgPSBwYXJzZU51bShlbHMucHJlbG9hZCk7DQogICAgICAgIGlmIChmaSAhPT0gbnVsbCAmJiBmaSA8IDApIHsNCiAgICAgICAgICB2YWxpZCA9IHNldEVycm9yKCJic2MtcHJlbG9hZCIsICJic2MtZXJyLXByZWxvYWQiLCAiUHJlbG9hZCBjYW5ub3QgYmUgbmVnYXRpdmUuIik7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgc2V0RXJyb3IoImJzYy1wcmVsb2FkIiwgImJzYy1lcnItcHJlbG9hZCIsICIiKTsNCiAgICAgICAgfQ0KDQogICAgICAgIHZhciBjID0gcGFyc2VOdW0oZWxzLmpvaW50RmFjdG9yKTsNCiAgICAgICAgaWYgKGMgPT09IG51bGwgfHwgYyA8IDAgfHwgYyA+IDEpIHsNCiAgICAgICAgICB2YWxpZCA9IHNldEVycm9yKCJic2Mtam9pbnQtZmFjdG9yIiwgImJzYy1lcnItam9pbnQiLCAiSm9pbnQgbG9hZCBmYWN0b3IgbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDEuIik7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgc2V0RXJyb3IoImJzYy1qb2ludC1mYWN0b3IiLCAiYnNjLWVyci1qb2ludCIsICIiKTsNCiAgICAgICAgfQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgc2V0RXJyb3IoImJzYy1wcmVsb2FkIiwgImJzYy1lcnItcHJlbG9hZCIsICIiKTsNCiAgICAgICAgc2V0RXJyb3IoImJzYy1qb2ludC1mYWN0b3IiLCAiYnNjLWVyci1qb2ludCIsICIiKTsNCiAgICAgIH0NCg0KICAgICAgdmFyIGYgPSBwYXJzZU51bShlbHMuZXh0ZXJuYWxMb2FkKTsNCiAgICAgIGlmIChmICE9PSBudWxsICYmIGYgPCAwKSB7DQogICAgICAgIHZhbGlkID0gc2V0RXJyb3IoImJzYy1leHRlcm5hbC1sb2FkIiwgImJzYy1lcnItZXh0ZXJuYWwiLCAiRXh0ZXJuYWwgYXhpYWwgbG9hZCBjYW5ub3QgYmUgbmVnYXRpdmUuIik7DQogICAgICB9IGVsc2Ugew0KICAgICAgICBzZXRFcnJvcigiYnNjLWV4dGVybmFsLWxvYWQiLCAiYnNjLWVyci1leHRlcm5hbCIsICIiKTsNCiAgICAgIH0NCg0KICAgICAgcmV0dXJuIHsgdmFsaWQ6IHZhbGlkLCBhdDogYXQsIHN5OiBzeSB9Ow0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIGdldEludGVycHJldGF0aW9uKG4pIHsNCiAgICAgIGlmIChuIDwgMS4wKSB7DQogICAgICAgIHJldHVybiB7IGxldmVsOiAiYnNjLXVuc2FmZSIsIHRpdGxlOiAiVW5zYWZlIiwgdGV4dDogIkJvbHQgaXMgcHJlZGljdGVkIHRvIGV4Y2VlZCB5aWVsZCBzdHJlbmd0aC4iIH07DQogICAgICB9DQogICAgICBpZiAobiA8IDEuNSkgew0KICAgICAgICByZXR1cm4geyBsZXZlbDogImJzYy1sb3ciLCB0aXRsZTogIkxvdyBTYWZldHkgTWFyZ2luIiwgdGV4dDogIlJlZGVzaWduIG9yIHZlcmlmaWNhdGlvbiBpcyBzdHJvbmdseSByZWNvbW1lbmRlZC4iIH07DQogICAgICB9DQogICAgICBpZiAobiA8IDIuMCkgew0KICAgICAgICByZXR1cm4geyBsZXZlbDogImJzYy1tb2RlcmF0ZSIsIHRpdGxlOiAiTW9kZXJhdGUgU2FmZXR5IE1hcmdpbiIsIHRleHQ6ICJNYXkgYmUgYWNjZXB0YWJsZSBkZXBlbmRpbmcgb24gdGhlIGFwcGxpY2F0aW9uLiIgfTsNCiAgICAgIH0NCiAgICAgIGlmIChuIDwgMy4wKSB7DQogICAgICAgIHJldHVybiB7IGxldmVsOiAiYnNjLWdvb2QiLCB0aXRsZTogIkdvb2QgU2FmZXR5IE1hcmdpbiIsIHRleHQ6ICJBY2NlcHRhYmxlIGZvciBtYW55IHN0YXRpYyBlbmdpbmVlcmluZyBhcHBsaWNhdGlvbnMuIiB9Ow0KICAgICAgfQ0KICAgICAgcmV0dXJuIHsgbGV2ZWw6ICJic2MtaGlnaCIsIHRpdGxlOiAiSGlnaCBTYWZldHkgTWFyZ2luIiwgdGV4dDogIkNoZWNrIHdoZXRoZXIgdGhlIGRlc2lnbiBpcyB1bm5lY2Vzc2FyaWx5IGNvbnNlcnZhdGl2ZS4iIH07DQogICAgfQ0KDQogICAgZnVuY3Rpb24gaGlkZVJlc3VsdHMoKSB7DQogICAgICBlbHMucmVzdWx0c1BhbmVsLmNsYXNzTGlzdC5yZW1vdmUoImJzYy12aXNpYmxlIik7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gc2hvd1Jlc3VsdHMoKSB7DQogICAgICBlbHMucmVzdWx0c1BhbmVsLmNsYXNzTGlzdC5hZGQoImJzYy12aXNpYmxlIik7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gY2FsY3VsYXRlKCkgew0KICAgICAgdmFyIHJlc3VsdCA9IHZhbGlkYXRlKCk7DQogICAgICBpZiAoIXJlc3VsdC52YWxpZCB8fCByZXN1bHQuYXQgPT09IG51bGwgfHwgcmVzdWx0LmF0IDw9IDAgfHwgcmVzdWx0LnN5ID09PSBudWxsIHx8IHJlc3VsdC5zeSA8PSAwKSB7DQogICAgICAgIGhpZGVSZXN1bHRzKCk7DQogICAgICAgIHJldHVybjsNCiAgICAgIH0NCg0KICAgICAgdmFyIGF0ID0gcmVzdWx0LmF0Ow0KICAgICAgdmFyIHN5ID0gcmVzdWx0LnN5Ow0KICAgICAgdmFyIHNpbXBsZSA9IGVscy5zaW1wbGVNb2RlLmNoZWNrZWQ7DQogICAgICB2YXIgZiA9IHBhcnNlTnVtKGVscy5leHRlcm5hbExvYWQpIHx8IDA7DQogICAgICB2YXIgZGVsdGFGYiA9IDA7DQogICAgICB2YXIgdG90YWxGYiA9IDA7DQogICAgICB2YXIgc3RyZXNzID0gMDsNCg0KICAgICAgaWYgKHNpbXBsZSkgew0KICAgICAgICB0b3RhbEZiID0gZjsNCiAgICAgICAgc3RyZXNzID0gZiAvIGF0Ow0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdmFyIGZpID0gcGFyc2VOdW0oZWxzLnByZWxvYWQpIHx8IDA7DQogICAgICAgIHZhciBjID0gcGFyc2VOdW0oZWxzLmpvaW50RmFjdG9yKSB8fCAwOw0KICAgICAgICBkZWx0YUZiID0gYyAqIGY7DQogICAgICAgIHRvdGFsRmIgPSBmaSArIGRlbHRhRmI7DQogICAgICAgIHN0cmVzcyA9IHRvdGFsRmIgLyBhdDsNCiAgICAgIH0NCg0KICAgICAgaWYgKCFpc01ldHJpYygpKSB7DQogICAgICAgIHN0cmVzcyA9IHN0cmVzcyAvIDEwMDA7DQogICAgICB9DQoNCiAgICAgIGlmICghaXNGaW5pdGUoc3RyZXNzKSB8fCBzdHJlc3MgPD0gMCkgew0KICAgICAgICBoaWRlUmVzdWx0cygpOw0KICAgICAgICByZXR1cm47DQogICAgICB9DQoNCiAgICAgIHZhciBzZiA9IHN5IC8gc3RyZXNzOw0KICAgICAgdmFyIGludGVycCA9IGdldEludGVycHJldGF0aW9uKHNmKTsNCiAgICAgIHZhciBmb3JjZVUgPSBnZXRGb3JjZVVuaXQoKTsNCiAgICAgIHZhciBzdHJlc3NVID0gZ2V0U3RyZXNzVW5pdCgpOw0KICAgICAgdmFyIGFyZWFVID0gZ2V0QXJlYVVuaXQoKTsNCg0KICAgICAgc2hvd1Jlc3VsdHMoKTsNCg0KICAgICAgYnlJZCgiYnNjLXJlcy1zYWZldHktZmFjdG9yIikudGV4dENvbnRlbnQgPSBmb3JtYXROdW0oc2YsIDIpOw0KICAgICAgZWxzLnNmSGVyby5jbGFzc05hbWUgPSAiYnNjLXNmLWhlcm8gIiArIGludGVycC5sZXZlbDsNCiAgICAgIGVscy5pbnRlcnByZXRhdGlvbi5jbGFzc05hbWUgPSAiYnNjLWludGVycHJldGF0aW9uICIgKyBpbnRlcnAubGV2ZWw7DQogICAgICBlbHMuaW50ZXJwcmV0YXRpb24uaW5uZXJIVE1MID0gIjxzdHJvbmc+IiArIGludGVycC50aXRsZSArICI8L3N0cm9uZz4iICsgaW50ZXJwLnRleHQ7DQogICAgICBieUlkKCJic2MtcmVzLWFyZWEiKS50ZXh0Q29udGVudCA9IGZvcm1hdE51bShhdCwgMikgKyAiICIgKyBhcmVhVTsNCiAgICAgIGJ5SWQoImJzYy1yZXMtYWRkaXRpb25hbCIpLnRleHRDb250ZW50ID0gZm9ybWF0TnVtKGRlbHRhRmIsIDEpICsgIiAiICsgZm9yY2VVOw0KICAgICAgYnlJZCgiYnNjLXJlcy10b3RhbCIpLnRleHRDb250ZW50ID0gZm9ybWF0TnVtKHRvdGFsRmIsIDEpICsgIiAiICsgZm9yY2VVOw0KICAgICAgYnlJZCgiYnNjLXJlcy1zdHJlc3MiKS50ZXh0Q29udGVudCA9IGZvcm1hdE51bShzdHJlc3MsIDIpICsgIiAiICsgc3RyZXNzVTsNCiAgICAgIGJ5SWQoImJzYy1yZXMteWllbGQiKS50ZXh0Q29udGVudCA9IGZvcm1hdE51bShzeSwgMSkgKyAiICIgKyBzdHJlc3NVOw0KICAgIH0NCg0KICAgIGVscy51bml0TWV0cmljLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24gKCkgeyBzd2l0Y2hVbml0cygibWV0cmljIik7IH0pOw0KICAgIGVscy51bml0SW1wZXJpYWwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiAoKSB7IHN3aXRjaFVuaXRzKCJpbXBlcmlhbCIpOyB9KTsNCiAgICBlbHMuc2ltcGxlTW9kZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLCB1cGRhdGVTaW1wbGVNb2RlKTsNCg0KICAgIHJvb3QucXVlcnlTZWxlY3RvckFsbCgiaW5wdXRbbmFtZT1ic2MtYXQtbW9kZV0iKS5mb3JFYWNoKGZ1bmN0aW9uIChyYWRpbykgew0KICAgICAgcmFkaW8uYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIiwgdXBkYXRlQXRNb2RlKTsNCiAgICB9KTsNCg0KICAgIGVscy5ib2x0Q2xhc3MuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIiwgZnVuY3Rpb24gKCkgew0KICAgICAgY2xhc3NNYW51YWxseUVkaXRlZCA9IGZhbHNlOw0KICAgICAgYXBwbHlCb2x0Q2xhc3MoZWxzLmJvbHRDbGFzcy52YWx1ZSk7DQogICAgfSk7DQoNCiAgICBlbHMueWllbGRTdHJlbmd0aC5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsIGZ1bmN0aW9uICgpIHsNCiAgICAgIGNsYXNzTWFudWFsbHlFZGl0ZWQgPSB0cnVlOw0KICAgICAgZWxzLmJvbHRDbGFzcy52YWx1ZSA9ICJjdXN0b20iOw0KICAgIH0pOw0KDQogICAgZWxzLmJ0bkNhbGN1bGF0ZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGNhbGN1bGF0ZSk7DQoNCiAgICB1cGRhdGVVbml0TGFiZWxzKCk7DQogICAgdXBkYXRlQXRNb2RlKCk7DQogICAgdXBkYXRlU2ltcGxlTW9kZSgpOw0KICAgIGFwcGx5Qm9sdENsYXNzKCI4LjgiKTsNCiAgfQ0KDQogIGlmIChkb2N1bWVudC5yZWFkeVN0YXRlID09PSAibG9hZGluZyIpIHsNCiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIiwgaW5pdEJzY0NhbGN1bGF0b3IpOw0KICB9IGVsc2Ugew0KICAgIGluaXRCc2NDYWxjdWxhdG9yKCk7DQogIH0NCn0pKCk7DQo=\";try{(new Function(atob(b)))();}catch(e){console.error(\"BSC calculator failed:\",e);}})();<\/script>\n","protected":false},"excerpt":{"rendered":"<p>The Bolt Safety Factor Calculator is a practical engineering tool designed to help engineers, designers, technicians, and students quickly evaluate the safety margin of a&#8230;<\/p>","protected":false},"author":2,"featured_media":24721,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"pmpro_default_level":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[8520],"tags":[8624,8622,8601,8623],"class_list":["post-24720","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mechanical-basic-component-design","tag-bolt-calculator","tag-bolt-safety","tag-bolt-strength","tag-bolted-joint","pmpro-has-access"],"acf":[],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/www.mechstream.com\/wp-content\/uploads\/2026\/08\/Bolt-Safety-Factor-Calculator.png","_links":{"self":[{"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/posts\/24720","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/comments?post=24720"}],"version-history":[{"count":1,"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/posts\/24720\/revisions"}],"predecessor-version":[{"id":24726,"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/posts\/24720\/revisions\/24726"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/media\/24721"}],"wp:attachment":[{"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/media?parent=24720"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/categories?post=24720"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mechstream.com\/fr\/wp-json\/wp\/v2\/tags?post=24720"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}