{"id":100130,"date":"2026-02-15T20:19:22","date_gmt":"2026-02-15T20:19:22","guid":{"rendered":"https:\/\/vibromera.eu\/?post_type=calculator&#038;p=100130"},"modified":"2026-04-05T15:42:38","modified_gmt":"2026-04-05T15:42:38","slug":"hertz-contact-stress","status":"publish","type":"calculator","link":"https:\/\/vibromera.eu\/bn\/calculators\/hertz-contact-stress\/","title":{"rendered":"\u09b9\u09be\u09b0\u09cd\u099c \u09af\u09cb\u0997\u09be\u09af\u09cb\u0997 \u099a\u09be\u09aa \u0995\u09cd\u09af\u09be\u09b2\u0995\u09c1\u09b2\u09c7\u099f\u09b0 | \u09ac\u09bf\u09a8\u09be\u09ae\u09c2\u09b2\u09cd\u09af\u09c7 \u0985\u09a8\u09b2\u09be\u0987\u09a8 \u09b8\u09b0\u099e\u09cd\u099c\u09be\u09ae"},"content":{"rendered":"\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"WebApplication\",\"name\":\"Hertz Contact Stress Calculator\",\"description\":\"Free Hertz contact stress calculator for sphere and cylinder contact. Maximum pressure, contact radius\/width, approach.\",\"url\":\"https:\/\/vibromera.eu\/calculators\/hertz-contact-stress\/\",\"applicationCategory\":\"Engineering Calculator\",\"operatingSystem\":\"Any (Web Browser)\",\"offers\":{\"@type\":\"Offer\",\"price\":\"0\",\"priceCurrency\":\"EUR\"},\"creator\":{\"@type\":\"Organization\",\"name\":\"Vibromera\",\"url\":\"https:\/\/vibromera.eu\/\"},\"datePublished\":\"2024-01-01\",\"dateModified\":\"2025-02-14\",\"inLanguage\":\"en\",\"isAccessibleForFree\":true}\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[\n{\"@type\":\"Question\",\"name\":\"What is Hertz contact stress?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Hertz contact stress is the localized stress that develops when two curved bodies are pressed together. The contact area is very small and the maximum pressure occurs at the center. This theory applies to elastic, non-conforming contacts like ball bearings, gears, and wheel-rail interfaces.\"}},\n{\"@type\":\"Question\",\"name\":\"What is the maximum contact pressure formula for spheres?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"For two spheres: p_max = (1\/\u03c0)\u00b7(6F\u00b7E*\u00b2\/R*\u00b2)^(1\/3), where E* is the combined elastic modulus and R* is the combined radius. The contact area is circular with radius a = (3FR*\/(4E*))^(1\/3).\"}},\n{\"@type\":\"Question\",\"name\":\"What is the combined elastic modulus E*?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The combined (effective) elastic modulus accounts for both bodies: 1\/E* = (1-\u03bd\u2081\u00b2)\/E\u2081 + (1-\u03bd\u2082\u00b2)\/E\u2082. It represents the combined elastic compliance of both contacting surfaces.\"}},\n{\"@type\":\"Question\",\"name\":\"When does Hertz theory apply?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Hertz theory assumes: elastic material behavior, contact area much smaller than body dimensions, frictionless contact, smooth surfaces, and non-conforming geometries. It does not apply to plastic deformation, rough surfaces, or conforming contacts.\"}},\n{\"@type\":\"Question\",\"name\":\"Where is Hertz contact stress important?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Rolling element bearings, gear teeth, cam-follower systems, wheel-rail contact, indentation testing, and any machine element where curved surfaces press against each other. Contact fatigue (pitting) is often governed by Hertzian stress.\"}}\n]}\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[\n{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/vibromera.eu\/\"},\n{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Calculators\",\"item\":\"https:\/\/vibromera.eu\/calculators\/\"},\n{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Hertz Contact Stress\",\"item\":\"https:\/\/vibromera.eu\/calculators\/hertz-contact-stress\/\"}\n]}\n<\/script>\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&#038;family=JetBrains+Mono:wght@400;500;600&#038;family=Fraunces:opsz,wght@9..144,700;9..144,800&#038;display=swap\" rel=\"stylesheet\">\n\n<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/katex@0.16.11\/dist\/katex.min.css\">\n\n<style>\n:root{--vc-bg:#f4f1ec;--vc-surface:#ffffff;--vc-surface-alt:#f8f6f2;--vc-ink:#1a1a1a;--vc-ink-secondary:#5a5650;--vc-ink-muted:#8a857e;--vc-accent:#c85a2a;--vc-accent-hover:#b04d22;--vc-accent-light:#fdf0ea;--vc-blue:#2a5c8c;--vc-blue-light:#eaf1f8;--vc-green:#2a7a4b;--vc-green-light:#eaf8ef;--vc-yellow:#a67c00;--vc-yellow-light:#fef9e8;--vc-red:#b91c1c;--vc-red-light:#fef2f2;--vc-border:#d9d4cc;--vc-border-light:#e8e4dd;--vc-shadow:0 1px 3px rgba(26,26,26,0.06),0 4px 12px rgba(26,26,26,0.04);--vc-radius:8px;--vc-radius-lg:12px;--vc-font:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--vc-mono:'JetBrains Mono','Consolas','Monaco',monospace;--vc-display:'Fraunces',Georgia,serif}\n.vc-calculator{font-family:var(--vc-font);font-size:15px;line-height:1.65;color:var(--vc-ink);max-width:960px;margin:0 auto;padding:20px 16px 40px;-webkit-font-smoothing:antialiased}.vc-calculator *,.vc-calculator *::before,.vc-calculator *::after{box-sizing:border-box}.vc-header{text-align:center;padding:48px 24px 40px;position:relative}.vc-header::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:80px;height:3px;background:var(--vc-accent);border-radius:2px}.vc-header-eyebrow{font-family:var(--vc-mono);font-size:11px;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;color:var(--vc-accent);margin:0 0 12px}.vc-header-title{font-family:var(--vc-display);font-size:clamp(24px,4vw,36px);font-weight:800;line-height:1.15;color:var(--vc-ink);margin:0 0 16px;letter-spacing:-0.02em}.vc-header-subtitle{font-size:15px;color:var(--vc-ink-secondary);margin:0 auto 20px;max-width:600px}.vc-badges{display:inline-flex;gap:8px;flex-wrap:wrap;justify-content:center}.vc-badge{font-family:var(--vc-mono);font-size:11px;font-weight:500;padding:4px 10px;border-radius:4px;background:var(--vc-surface);border:1px solid var(--vc-border);color:var(--vc-ink-secondary)}.vc-card{background:var(--vc-surface);border:1px solid var(--vc-border);border-radius:var(--vc-radius-lg);box-shadow:var(--vc-shadow);overflow:hidden;margin-top:32px}.vc-form{padding:24px}.vc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:600px){.vc-form-grid{grid-template-columns:1fr}}.vc-field{display:flex;flex-direction:column}.vc-field-full{grid-column:1\/-1}.vc-label{font-size:12px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:var(--vc-ink-secondary);margin-bottom:6px}.vc-label-hint{font-weight:400;text-transform:none;letter-spacing:0;color:var(--vc-ink-muted);font-size:11px}.vc-select,.vc-input{width:100%;padding:10px 12px;border:1.5px solid var(--vc-border);border-radius:6px;font-family:var(--vc-font);font-size:14px;color:var(--vc-ink);background:var(--vc-surface);transition:border-color 0.15s,box-shadow 0.15s}.vc-select{padding-right:36px;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='16' height='16' fill='none' stroke='%235a5650' stroke-width='2'%3E%3Cpath d='M4 6l4 4 4-4'\/%3E%3C\/svg%3E\");background-repeat:no-repeat;background-position:right 10px center}.vc-select:focus,.vc-input:focus{outline:none;border-color:var(--vc-accent);box-shadow:0 0 0 3px rgba(200,90,42,0.12)}.vc-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;padding-top:18px;border-top:1px solid var(--vc-border-light)}.vc-presets-label{font-family:var(--vc-mono);font-size:11px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--vc-ink-muted);width:100%;margin-bottom:2px}.vc-preset-btn{padding:5px 12px;font-family:var(--vc-font);font-size:12px;font-weight:500;border:1px solid var(--vc-border);border-radius:6px;background:var(--vc-surface-alt);color:var(--vc-ink-secondary);cursor:pointer;transition:all 0.15s}.vc-preset-btn:hover{border-color:var(--vc-accent);color:var(--vc-accent);background:var(--vc-accent-light)}.vc-results{border-top:1px solid var(--vc-border-light);background:var(--vc-surface-alt);padding:0;max-height:0;overflow:hidden;transition:max-height 0.5s cubic-bezier(0.4,0,0.2,1),padding 0.3s}.vc-results.vc-visible{max-height:2000px;padding:24px}.vc-results-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.vc-results-title{font-family:var(--vc-display);font-size:20px;font-weight:700;color:var(--vc-ink);margin:0}.vc-copy-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--vc-border);border-radius:6px;background:var(--vc-surface);font-family:var(--vc-font);font-size:12px;font-weight:500;color:var(--vc-ink-secondary);cursor:pointer;transition:all 0.15s}.vc-copy-btn:hover{border-color:var(--vc-accent);color:var(--vc-accent)}.vc-copy-btn.vc-copied{background:var(--vc-green-light);border-color:var(--vc-green);color:var(--vc-green)}.vc-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}@media(max-width:500px){.vc-result-grid{grid-template-columns:1fr}}.vc-rcard{background:var(--vc-surface);border:1px solid var(--vc-border-light);border-radius:var(--vc-radius);padding:16px;transition:transform 0.2s}.vc-rcard:hover{transform:translateY(-1px)}.vc-rcard-primary{border-color:var(--vc-accent);border-width:2px;background:linear-gradient(135deg,#fdf6f2 0%,var(--vc-surface) 100%);grid-column:1\/-1}.vc-rcard-label{font-family:var(--vc-mono);font-size:10px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--vc-ink-muted);margin-bottom:4px}.vc-rcard-value{font-family:var(--vc-mono);font-size:22px;font-weight:600;color:var(--vc-ink);line-height:1.2}.vc-rcard-primary .vc-rcard-value{font-size:30px;color:var(--vc-accent)}.vc-rcard-unit{font-size:14px;font-weight:400;color:var(--vc-ink-secondary)}.vc-section{margin-top:24px;border:1px solid var(--vc-border);border-radius:var(--vc-radius-lg);background:var(--vc-surface);box-shadow:var(--vc-shadow);overflow:hidden}.vc-section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border:none;background:transparent;cursor:pointer;font-family:var(--vc-font);text-align:left;transition:background 0.15s}.vc-section-toggle:hover{background:var(--vc-surface-alt)}.vc-section-toggle-text{display:flex;align-items:center;gap:10px}.vc-section-icon{font-size:20px;line-height:1}.vc-section-title{font-family:var(--vc-display);font-size:18px;font-weight:700;color:var(--vc-ink);margin:0}.vc-section-chevron{width:20px;height:20px;color:var(--vc-ink-muted);transition:transform 0.3s;flex-shrink:0}.vc-section.vc-open .vc-section-chevron{transform:rotate(180deg)}.vc-section-body{max-height:0;overflow:hidden;transition:max-height 0.4s cubic-bezier(0.4,0,0.2,1)}.vc-section.vc-open .vc-section-body{max-height:20000px}.vc-section-inner{padding:0 24px 24px;border-top:1px solid var(--vc-border-light)}.vc-theory h3{font-family:var(--vc-display);font-size:17px;font-weight:700;color:var(--vc-ink);margin:28px 0 10px}.vc-theory h3:first-child{margin-top:20px}.vc-theory p{font-size:14px;color:var(--vc-ink-secondary);margin:0 0 10px}.vc-formula-box{background:var(--vc-surface-alt);border:2px solid var(--vc-border);border-radius:6px;padding:14px 20px;font-family:var(--vc-mono);font-size:16px;font-weight:500;text-align:center;margin:14px 0;color:var(--vc-ink);overflow-x:auto}.vc-warning-box{background:var(--vc-yellow-light);border-left:3px solid var(--vc-yellow);padding:14px 16px;border-radius:0 6px 6px 0;margin:14px 0}.vc-faq-list{display:flex;flex-direction:column;gap:8px;margin-top:20px}.vc-faq-item{border:1px solid var(--vc-border-light);border-radius:6px;overflow:hidden}.vc-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:none;background:var(--vc-surface-alt);cursor:pointer;font-family:var(--vc-font);font-size:15px;font-weight:600;color:var(--vc-ink);text-align:left;transition:background 0.15s}.vc-faq-q:hover{background:#ede9e3}.vc-faq-chevron{width:16px;height:16px;color:var(--vc-ink-muted);flex-shrink:0;transition:transform 0.25s}.vc-faq-item.vc-open .vc-faq-chevron{transform:rotate(180deg)}.vc-faq-a{max-height:0;overflow:hidden;transition:max-height 0.35s}.vc-faq-item.vc-open .vc-faq-a{max-height:1200px}.vc-faq-a-inner{padding:14px 16px;border-top:1px solid var(--vc-border-light);font-size:14px;color:var(--vc-ink-secondary)}.vc-faq-a-inner p{margin:0 0 8px}.vc-faq-a-inner p:last-child{margin-bottom:0}.vc-related{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.vc-related-link{display:inline-block;padding:8px 16px;font-family:var(--vc-font);font-size:13px;font-weight:600;background:var(--vc-surface-alt);color:var(--vc-ink-secondary);border:1px solid var(--vc-border);border-radius:var(--vc-radius);text-decoration:none;transition:all 0.15s}.vc-related-link:hover{border-color:var(--vc-accent);color:var(--vc-accent);background:var(--vc-accent-light)}.vc-promo{margin-top:24px;padding:20px;background:linear-gradient(135deg,var(--vc-accent-light),var(--vc-surface));border:1px solid var(--vc-border);border-radius:var(--vc-radius-lg);display:flex;align-items:center;gap:16px}.vc-promo-text{flex:1;font-size:14px;color:var(--vc-ink-secondary)}.vc-promo-text strong{color:var(--vc-ink)}.vc-promo-link{padding:8px 20px;font-size:13px;font-weight:700;color:#fff;background:var(--vc-accent);border-radius:var(--vc-radius);text-decoration:none;white-space:nowrap;transition:background 0.15s}.vc-promo-link:hover{background:var(--vc-accent-hover)}.vc-footer{text-align:center;padding:32px 16px;font-size:13px;color:var(--vc-ink-muted)}.vc-footer a{color:var(--vc-accent);text-decoration:none}.vc-footer a:hover{text-decoration:underline}.vc-footer-links{margin-top:8px;font-size:12px}.vc-footer-links a{margin:0 8px}@media print{.vc-section-body{max-height:none!important}.vc-faq-a{max-height:none!important}.vc-results{max-height:none!important;padding:24px!important}.vc-copy-btn,.vc-section-chevron,.vc-faq-chevron,.vc-presets,.vc-promo{display:none!important}}\n<\/style>\n\n<div class=\"vc-calculator\" id=\"vc-hertz-contact\">\n<header class=\"vc-header\">\n    <p class=\"vc-header-eyebrow\">Free Engineering Tool<\/p>\n    <h1 class=\"vc-header-title\">Hertz Contact Stress Calculator<\/h1>\n    <p class=\"vc-header-subtitle\">Calculate maximum Hertzian contact pressure, contact area, and approach for sphere-on-sphere and cylinder-on-cylinder elastic contact.<\/p>\n    <div class=\"vc-badges\"><span class=\"vc-badge\">Sphere Contact<\/span><span class=\"vc-badge\">Cylinder Contact<\/span><span class=\"vc-badge\">#171<\/span><\/div>\n<\/header>\n\n<div class=\"vc-card\">\n    <form class=\"vc-form\" id=\"vc-form\" autocomplete=\"off\">\n        <div class=\"vc-form-grid\">\n            <div class=\"vc-field vc-field-full\">\n                <label class=\"vc-label\" for=\"vc-type\">Contact Type<\/label>\n                <select class=\"vc-select\" id=\"vc-type\">\n                    <option value=\"sphere\" selected>Sphere on Sphere (or Sphere on Flat)<\/option>\n                    <option value=\"cylinder\">Cylinder on Cylinder (parallel, or Cyl on Flat)<\/option>\n                <\/select>\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-R1\">Radius R\u2081 <span class=\"vc-label-hint\">(mm) \u2014 \u221e for flat<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-R1\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 25\" value=\"25\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-R2\">Radius R\u2082 <span class=\"vc-label-hint\">(mm) \u2014 \u221e for flat, 0 = flat<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-R2\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 0 for flat\" value=\"0\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-F\">Force F <span class=\"vc-label-hint\">(N)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-F\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 1000\" value=\"1000\">\n            <\/div>\n            <div class=\"vc-field\" id=\"vc-field-Lc\" style=\"display:none\">\n                <label class=\"vc-label\" for=\"vc-Lc\">Contact Length L <span class=\"vc-label-hint\">(mm)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-Lc\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 50\" value=\"50\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-E1\">E\u2081 <span class=\"vc-label-hint\">(GPa)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-E1\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 200\" value=\"200\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-v1\">\u03bd\u2081 <span class=\"vc-label-hint\">(Poisson&#8217;s ratio)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-v1\" inputmode=\"decimal\" step=\"any\" min=\"0\" max=\"0.5\" placeholder=\"e.g. 0.3\" value=\"0.3\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-E2\">E\u2082 <span class=\"vc-label-hint\">(GPa)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-E2\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 200\" value=\"200\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-v2\">\u03bd\u2082 <span class=\"vc-label-hint\">(Poisson&#8217;s ratio)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-v2\" inputmode=\"decimal\" step=\"any\" min=\"0\" max=\"0.5\" placeholder=\"e.g. 0.3\" value=\"0.3\">\n            <\/div>\n        <\/div>\n        <div class=\"vc-presets\">\n            <div class=\"vc-presets-label\">Quick presets<\/div>\n            <button type=\"button\" class=\"vc-preset-btn\" data-type=\"sphere\" data-R1=\"12.7\" data-R2=\"0\" data-F=\"500\" data-E1=\"200\" data-v1=\"0.3\" data-E2=\"200\" data-v2=\"0.3\">Ball \u220525.4 on steel flat \/ 500N<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-type=\"sphere\" data-R1=\"10\" data-R2=\"50\" data-F=\"1000\" data-E1=\"200\" data-v1=\"0.3\" data-E2=\"200\" data-v2=\"0.3\">Ball \u220520 in groove R50 \/ 1kN<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-type=\"cylinder\" data-R1=\"25\" data-R2=\"0\" data-F=\"5000\" data-Lc=\"50\" data-E1=\"200\" data-v1=\"0.3\" data-E2=\"200\" data-v2=\"0.3\">Roller \u220550 on flat \/ 5kN<\/button>\n        <\/div>\n    <\/form>\n    <div class=\"vc-results\" id=\"vc-results\">\n        <div class=\"vc-results-head\"><h2 class=\"vc-results-title\">Results<\/h2><button type=\"button\" class=\"vc-copy-btn\" id=\"vc-copy-btn\"><svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"\/><path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"\/><\/svg> Copy<\/button><\/div>\n        <div class=\"vc-result-grid\">\n            <div class=\"vc-rcard vc-rcard-primary\"><div class=\"vc-rcard-label\">Maximum Contact Pressure p\u2080<\/div><div class=\"vc-rcard-value\" id=\"vc-r-pmax\">\u2014<\/div><\/div>\n            <div class=\"vc-rcard\"><div class=\"vc-rcard-label\">Contact Radius \/ Half-Width a<\/div><div class=\"vc-rcard-value\" id=\"vc-r-a\">\u2014<\/div><\/div>\n            <div class=\"vc-rcard\"><div class=\"vc-rcard-label\">Combined E* <\/div><div class=\"vc-rcard-value\" id=\"vc-r-Estar\">\u2014<\/div><\/div>\n            <div class=\"vc-rcard\"><div class=\"vc-rcard-label\">Combined R*<\/div><div class=\"vc-rcard-value\" id=\"vc-r-Rstar\">\u2014<\/div><\/div>\n        <\/div>\n        <div class=\"vc-viz\" id=\"vc-viz\" style=\"text-align:center;margin:16px 0 8px\"><\/div>\n    <\/div>\n<\/div>\n\n<div class=\"vc-section vc-open\" id=\"vc-sec-theory\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"true\"><span class=\"vc-section-toggle-text\"><span class=\"vc-section-icon\">\ud83d\udcd8<\/span><span class=\"vc-section-title\">Theory &amp; Formulas<\/span><\/span><svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg><\/button>\n    <div class=\"vc-section-body\"><div class=\"vc-section-inner vc-theory\">\n        <h3>Combined Elastic Modulus<\/h3>\n        <div class=\"vc-formula-box\" id=\"vc-katex-1\"><\/div>\n        <h3>Sphere on Sphere<\/h3>\n        <div class=\"vc-formula-box\" id=\"vc-katex-2\"><\/div>\n        <h3>Cylinder on Cylinder (parallel)<\/h3>\n        <div class=\"vc-formula-box\" id=\"vc-katex-3\"><\/div>\n        <div class=\"vc-warning-box\"><p style=\"margin:0;font-size:14px;color:var(--vc-ink-secondary);\"><strong>\u26a0\ufe0f Note:<\/strong> Enter R\u2082 = 0 for a flat surface (R\u2082 \u2192 \u221e). Hertz theory assumes elastic contact, small contact area relative to body size, and frictionless surfaces.<\/p><\/div>\n    <\/div><\/div>\n<\/div>\n\n<div class=\"vc-section\" id=\"vc-sec-related\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"false\"><span class=\"vc-section-toggle-text\"><span class=\"vc-section-icon\">\ud83d\udd17<\/span><span class=\"vc-section-title\">Related Calculators<\/span><\/span><svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg><\/button>\n    <div class=\"vc-section-body\"><div class=\"vc-section-inner\"><div class=\"vc-related\">\n        <a class=\"vc-related-link\" href=\"\/calculators\/stress-calculator\/\">Stress Calculator<\/a>\n        <a class=\"vc-related-link\" href=\"\/calculators\/stress-concentration-factor\/\">Stress Concentration<\/a>\n        <a class=\"vc-related-link\" href=\"\/calculators\/fatigue-life-calculator\/\">Fatigue Life<\/a>\n    <\/div><\/div><\/div>\n<\/div>\n\n<div class=\"vc-section\" id=\"vc-sec-faq\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"false\"><span class=\"vc-section-toggle-text\"><span class=\"vc-section-icon\">\u2753<\/span><span class=\"vc-section-title\">Frequently Asked Questions<\/span><\/span><svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg><\/button>\n    <div class=\"vc-section-body\"><div class=\"vc-section-inner\"><div class=\"vc-faq-list\" id=\"vc-faq-list\"><\/div><\/div><\/div>\n<\/div>\n\n<div class=\"vc-promo\"><div class=\"vc-promo-text\"><strong>Vibromera \u2014 Portable Balancing &amp; Vibration Analysis<\/strong><br>Professional field balancing instruments. Used in 50+ countries.<\/div><a class=\"vc-promo-link\" href=\"https:\/\/vibromera.eu\/\" target=\"_blank\" rel=\"noopener\">Learn More<\/a><\/div>\n<footer class=\"vc-footer\"><p>\u00a9 2024\u20132025 <a href=\"https:\/\/vibromera.eu\/\">Vibromera<\/a> \u2014 Engineering Calculators<\/p><p style=\"font-size:12px;margin-top:4px;\">Hertz contact theory. Last updated: February 2025<\/p><div class=\"vc-footer-links\"><a href=\"\/calculators\/engineering-calculators\/\">All Calculators<\/a><a href=\"https:\/\/vibromera.eu\/contacts\/\">Contact<\/a><\/div><\/footer>\n<\/div>\n\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/katex@0.16.11\/dist\/katex.min.js\"><\/script>\n<script>\n(function(){\n'use strict';\nvar SLUG='hertz-contact-stress';\nfunction $(id){return document.getElementById(id)}\nfunction fmt(n,d){if(isNaN(n)||!isFinite(n))return'\u2014';var f=n.toFixed(d===undefined?2:d);return f.replace(\/(\\.\\d*?)0+$\/,'$1').replace(\/\\.$\/,'')}\n\nfunction updateUI(){$('vc-field-Lc').style.display=$('vc-type').value==='cylinder'?'':'none'}\n\nfunction calculate(){\n    updateUI();\n    var type=$('vc-type').value;\n    var R1=parseFloat($('vc-R1').value),R2=parseFloat($('vc-R2').value),F=parseFloat($('vc-F').value);\n    var E1=parseFloat($('vc-E1').value),v1=parseFloat($('vc-v1').value),E2=parseFloat($('vc-E2').value),v2=parseFloat($('vc-v2').value);\n    if(!R1||R1<=0||!F||F>0===false||!E1||E1<=0||!E2||E2<=0){$('vc-results').classList.remove('vc-visible');return}\n    if(isNaN(v1)||isNaN(v2))return;\n\n    \/\/ Combined E* (in MPa = N\/mm\u00b2)\n    var E1n=E1*1e3,E2n=E2*1e3;\/\/ GPa \u2192 MPa\n    var Estar=1\/((1-v1*v1)\/E1n+(1-v2*v2)\/E2n);\n\n    \/\/ Combined R* (mm)\n    var Rstar;\n    if(R2<=0){Rstar=R1}\/\/ flat surface \u2192 1\/R* = 1\/R1\n    else{Rstar=1\/(1\/R1+1\/R2)}\n\n    var pmax,aContact;\n    if(type==='sphere'){\n        \/\/ Sphere: a = (3FR*\/(4E*))^(1\/3), p0 = (1\/pi)*(6FE*^2\/R*^2)^(1\/3)\n        aContact=Math.pow(3*F*Rstar\/(4*Estar),1\/3);\n        pmax=3*F\/(2*Math.PI*aContact*aContact);\n    } else {\n        \/\/ Cylinder: b = sqrt(4FR*\/(piE*L)), p0 = 2F\/(piLb) -- but we need per-unit-length or total\n        var Lc=parseFloat($('vc-Lc').value);\n        if(!Lc||Lc<=0){$('vc-results').classList.remove('vc-visible');return}\n        var fl=F\/Lc;\/\/ force per unit length\n        aContact=Math.sqrt(4*fl*Rstar\/(Math.PI*Estar));\n        pmax=2*fl\/(Math.PI*aContact);\n    }\n\n    $('vc-r-pmax').innerHTML=fmt(pmax,1)+' <span class=\"vc-rcard-unit\">MPa<\/span>';\n    $('vc-r-a').innerHTML=fmt(aContact,4)+' <span class=\"vc-rcard-unit\">mm<\/span>';\n    $('vc-r-Estar').innerHTML=fmt(Estar\/1e3,1)+' <span class=\"vc-rcard-unit\">GPa<\/span>';\n    $('vc-r-Rstar').innerHTML=fmt(Rstar,3)+' <span class=\"vc-rcard-unit\">mm<\/span>';\n    $('vc-results').classList.add('vc-visible');\n    drawViz(type,R1,R2<=0?1e6:R2,aContact,pmax);\n\n    saveHistory({type:type,pmax:pmax,a:aContact,_summary:'p\u2080='+fmt(pmax,0)+' MPa, a='+fmt(aContact,3)+' mm'});\n}\n\ndocument.querySelectorAll('.vc-preset-btn').forEach(function(btn){btn.addEventListener('click',function(e){e.preventDefault();\n    $('vc-type').value=this.getAttribute('data-type');$('vc-R1').value=this.getAttribute('data-R1');$('vc-R2').value=this.getAttribute('data-R2');$('vc-F').value=this.getAttribute('data-F');$('vc-E1').value=this.getAttribute('data-E1');$('vc-v1').value=this.getAttribute('data-v1');$('vc-E2').value=this.getAttribute('data-E2');$('vc-v2').value=this.getAttribute('data-v2');\n    if(this.getAttribute('data-Lc'))$('vc-Lc').value=this.getAttribute('data-Lc');\n    calculate();\n})});\n\n$('vc-form').addEventListener('input',calculate);$('vc-form').addEventListener('change',calculate);\n\n$('vc-copy-btn').addEventListener('click',function(){\n    var text='Hertz Contact Stress\\n\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\\np\u2080: '+$('vc-r-pmax').textContent+'\\na: '+$('vc-r-a').textContent+'\\nE*: '+$('vc-r-Estar').textContent+'\\nR*: '+$('vc-r-Rstar').textContent+'\\n\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\\nvibromera.eu';\n    if(navigator.clipboard){navigator.clipboard.writeText(text).then(function(){var b=$('vc-copy-btn');b.classList.add('vc-copied');b.innerHTML='<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Copied!';setTimeout(function(){b.classList.remove('vc-copied');b.innerHTML='<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"\/><path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"\/><\/svg> Copy';},2000)})}\n});\n\ndocument.querySelectorAll('.vc-section-toggle').forEach(function(btn){btn.addEventListener('click',function(){var s=this.closest('.vc-section');s.classList.toggle('vc-open');this.setAttribute('aria-expanded',s.classList.contains('vc-open'))})});\n\nvar faqData=[\n    {q:'What is Hertz contact stress?',a:'<p>Localized stress when two curved elastic bodies are pressed together. Max pressure at center of contact. Applies to bearings, gears, wheel-rail.<\/p>'},\n    {q:'What is the max pressure formula for spheres?',a:'<p>p\u2080 = (1\/\u03c0)\u00b7(6F\u00b7E*\u00b2\/R*\u00b2)^(1\/3). Contact radius a = (3FR*\/(4E*))^(1\/3). Distribution is semi-ellipsoidal.<\/p>'},\n    {q:'What is combined elastic modulus E*?',a:'<p>1\/E* = (1\u2212\u03bd\u2081\u00b2)\/E\u2081 + (1\u2212\u03bd\u2082\u00b2)\/E\u2082. Represents combined compliance of both surfaces.<\/p>'},\n    {q:'When does Hertz theory apply?',a:'<p>Elastic behavior, contact area << body size, frictionless, smooth, non-conforming geometries. Not valid for plastic deformation or conforming contacts.<\/p>'},\n    {q:'Where is Hertz stress important?',a:'<p>Rolling bearings, gear teeth, cams, wheel-rail, indentation testing. Contact fatigue (pitting) is governed by Hertzian stress.<\/p>'}\n];\nvar fl=$('vc-faq-list');faqData.forEach(function(f){fl.innerHTML+='<div class=\"vc-faq-item\"><button type=\"button\" class=\"vc-faq-q\"><span>'+f.q+'<\/span><svg class=\"vc-faq-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg><\/button><div class=\"vc-faq-a\"><div class=\"vc-faq-a-inner\">'+f.a+'<\/div><\/div><\/div>'});\nfl.addEventListener('click',function(e){var b=e.target.closest('.vc-faq-q');if(!b)return;b.closest('.vc-faq-item').classList.toggle('vc-open')});\n\nfunction drawViz(type,R1,R2,aContact,pmax){\n  var c=$('vc-viz'), W=360, H=260;\n  var svg='<svg width=\"'+W+'\" height=\"'+H+'\" viewBox=\"0 0 '+W+' '+H+'\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">';\n  var cx=W\/2, cy=H\/2;\n  \/\/ scale contact half-width for visual (min 8px, max 60px)\n  var aVis=Math.max(8,Math.min(60,aContact*5));\n  \/\/ Body radii for visual (clamp)\n  var r1Vis=Math.max(40,Math.min(120, R1*0.15));\n  var r2Vis=(type==='sphere-plate'||type==='cylinder-plate')?9999:Math.max(40,Math.min(120,R2*0.15));\n  \/\/ upper body (arc going up)\n  var y1=cy-2;\n  if(r2Vis>5000){\n    \/\/ flat plate on bottom\n    svg+='<rect x=\"'+(cx-140)+'\" y=\"'+cy+'\" width=\"280\" height=\"50\" rx=\"4\" fill=\"#e0e7ef\" stroke=\"#7b8fa3\" stroke-width=\"1.5\"\/>';\n    svg+='<text x=\"'+(cx)+'\" y=\"'+(cy+30)+'\" text-anchor=\"middle\" fill=\"#5a6a7a\" font-size=\"11\">Flat Surface<\/text>';\n  } else {\n    \/\/ lower curved body\n    var angR2=Math.asin(Math.min(1,100\/r2Vis));\n    var startX2=cx-r2Vis*Math.sin(angR2), startY2=cy;\n    var endX2=cx+r2Vis*Math.sin(angR2), endY2=cy;\n    svg+='<path d=\"M'+startX2+' '+startY2+' A'+r2Vis+' '+r2Vis+' 0 0 1 '+endX2+' '+endY2+'\" fill=\"#e0e7ef\" stroke=\"#7b8fa3\" stroke-width=\"1.5\"\/>';\n    svg+='<text x=\"'+(cx)+'\" y=\"'+(cy+r2Vis*0.35)+'\" text-anchor=\"middle\" fill=\"#5a6a7a\" font-size=\"11\">R\\u2082<\/text>';\n  }\n  \/\/ upper curved body\n  var angR1=Math.asin(Math.min(1,100\/r1Vis));\n  var startX1=cx-r1Vis*Math.sin(angR1), startY1=cy;\n  var endX1=cx+r1Vis*Math.sin(angR1), endY1=cy;\n  svg+='<path d=\"M'+startX1+' '+startY1+' A'+r1Vis+' '+r1Vis+' 0 0 0 '+endX1+' '+endY1+'\" fill=\"#d4e6f9\" stroke=\"#3578b2\" stroke-width=\"1.5\"\/>';\n  svg+='<text x=\"'+cx+'\" y=\"'+(cy-r1Vis*0.35)+'\" text-anchor=\"middle\" fill=\"#3578b2\" font-size=\"11\">R\\u2081<\/text>';\n  \/\/ contact patch ellipse\n  svg+='<ellipse cx=\"'+cx+'\" cy=\"'+cy+'\" rx=\"'+aVis+'\" ry=\"'+(aVis*0.3)+'\" fill=\"rgba(231,76,60,0.35)\" stroke=\"#e74c3c\" stroke-width=\"1.5\"\/>';\n  \/\/ dimension line for contact half-width a\n  var ay=cy+(aVis*0.3)+14;\n  svg+='<line x1=\"'+cx+'\" y1=\"'+ay+'\" x2=\"'+(cx+aVis)+'\" y2=\"'+ay+'\" stroke=\"#e74c3c\" stroke-width=\"1\" marker-end=\"url(#ah)\"\/>';\n  svg+='<line x1=\"'+cx+'\" y1=\"'+(ay-4)+'\" x2=\"'+cx+'\" y2=\"'+(ay+4)+'\" stroke=\"#e74c3c\" stroke-width=\"1\"\/>';\n  svg+='<text x=\"'+(cx+aVis\/2)+'\" y=\"'+(ay-4)+'\" text-anchor=\"middle\" fill=\"#e74c3c\" font-size=\"10\">a<\/text>';\n  \/\/ Force arrow\n  svg+='<defs><marker id=\"ah\" markerWidth=\"6\" markerHeight=\"4\" refX=\"5\" refY=\"2\" orient=\"auto\"><path d=\"M0,0 L6,2 L0,4\" fill=\"#e74c3c\"\/><\/marker><\/defs>';\n  svg+='<line x1=\"'+cx+'\" y1=\"20\" x2=\"'+cx+'\" y2=\"'+(cy-r1Vis*0.6)+'\" stroke=\"#2c3e50\" stroke-width=\"2\" marker-end=\"url(#af)\"\/>';\n  svg+='<defs><marker id=\"af\" markerWidth=\"8\" markerHeight=\"6\" refX=\"7\" refY=\"3\" orient=\"auto\"><path d=\"M0,0 L8,3 L0,6\" fill=\"#2c3e50\"\/><\/marker><\/defs>';\n  svg+='<text x=\"'+(cx+8)+'\" y=\"35\" fill=\"#2c3e50\" font-size=\"11\" font-weight=\"bold\">F<\/text>';\n  \/\/ pressure label\n  svg+='<text x=\"'+cx+'\" y=\"'+(H-8)+'\" text-anchor=\"middle\" fill=\"#2c3e50\" font-size=\"11\">p\\u2080 = '+pmax.toFixed(0)+' MPa<\/text>';\n  svg+='<\/svg>';\n  c.innerHTML=svg;\n}\n\nfunction saveHistory(entry){var key='vc_history_'+SLUG;var arr=[];try{arr=JSON.parse(localStorage.getItem(key))||[]}catch(e){}entry._ts=new Date().toISOString();arr.unshift(entry);if(arr.length>10)arr=arr.slice(0,10);try{localStorage.setItem(key,JSON.stringify(arr))}catch(e){}}\n\nfunction renderFormulas(){try{\n    katex.render('\\\\frac{1}{E^*}=\\\\frac{1-\\\\nu_1^2}{E_1}+\\\\frac{1-\\\\nu_2^2}{E_2}',$('vc-katex-1'),{displayMode:true,throwOnError:false});\n    katex.render('a=\\\\left(\\\\frac{3FR^*}{4E^*}\\\\right)^{1\/3},\\\\quad p_0=\\\\frac{3F}{2\\\\pi a^2}',$('vc-katex-2'),{displayMode:true,throwOnError:false});\n    katex.render('b=\\\\sqrt{\\\\frac{4F R^*}{\\\\pi E^* L}},\\\\quad p_0=\\\\frac{2F}{\\\\pi b L}',$('vc-katex-3'),{displayMode:true,throwOnError:false});\n}catch(e){}}\n\nfunction init(){renderFormulas();calculate()}\nif(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',init)}else{init()}\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>\u0997\u09cb\u09b2\u0995-\u0997\u09cb\u09b2\u0995 \u098f\u09ac\u0982 \u09b8\u09bf\u09b2\u09bf\u09a8\u09cd\u09a1\u09be\u09b0-\u09b8\u09bf\u09b2\u09bf\u09a8\u09cd\u09a1\u09be\u09b0 \u09af\u09cb\u0997\u09be\u09af\u09cb\u0997\u09c7\u09b0 \u099c\u09a8\u09cd\u09af \u09ac\u09bf\u09a8\u09be\u09ae\u09c2\u09b2\u09cd\u09af\u09c7 \u09b9\u09be\u09b0\u09cd\u099c \u09af\u09cb\u0997\u09be\u09af\u09cb\u0997 \u099a\u09be\u09aa \u0995\u09cd\u09af\u09be\u09b2\u0995\u09c1\u09b2\u09c7\u099f\u09b0\u0964 \u09b8\u09b0\u09cd\u09ac\u09be\u09a7\u09bf\u0995 \u09af\u09cb\u0997\u09be\u09af\u09cb\u0997 \u099a\u09be\u09aa, \u09af\u09cb\u0997\u09be\u09af\u09cb\u0997 \u0995\u09cd\u09b7\u09c7\u09a4\u09cd\u09b0 \u098f\u09ac\u0982 \u09aa\u09a6\u09cd\u09a7\u09a4\u09bf \u09a6\u09c2\u09b0\u09a4\u09cd\u09ac \u0997\u09a3\u09a8\u09be \u0995\u09b0\u09c1\u09a8\u0964<\/p>","protected":false},"featured_media":0,"template":"","meta":{"ai_generated_summary":"","footnotes":""},"categories":[],"tags":[],"class_list":["post-100130","calculator","type-calculator","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/calculator\/100130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/calculator"}],"about":[{"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/types\/calculator"}],"version-history":[{"count":2,"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/calculator\/100130\/revisions"}],"predecessor-version":[{"id":100951,"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/calculator\/100130\/revisions\/100951"}],"wp:attachment":[{"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/media?parent=100130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/categories?post=100130"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/tags?post=100130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}