{"id":3294,"date":"2021-10-11T10:29:14","date_gmt":"2021-10-11T07:29:14","guid":{"rendered":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/?page_id=3294"},"modified":"2026-02-05T12:00:15","modified_gmt":"2026-02-05T10:00:15","slug":"sointu","status":"publish","type":"page","link":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/","title":{"rendered":"Sointu"},"content":{"rendered":"<div style=\"max-width: 850px;margin: 0 auto;float: none;font-size: 110%;text-align: justify\">\n<p>Jos pianossa painaa yht\u00e4 kosketinta, kuuluu \u00e4\u00e4ni, jota kutsutaan s\u00e4veleksi. Jos eri s\u00e4veli\u00e4 yhdist\u00e4\u00e4, syntyy sointu. Joskus kahden s\u00e4velen yhdistelm\u00e4\u00e4 kutsutaan harmoniaksi.<\/p>\n<p>Jotta soinnut olisivat ihmisest\u00e4 mielenkiintoisen kuuloisia, s\u00e4velien t\u00e4ytyy olla sopivasti valittuja. Esimerkiksi s\u00e4vel \\(A_4\\) soi taajuudella \\(440~\\mathrm{Hz}\\). Jos t\u00e4m\u00e4n kanssa soittaa s\u00e4velen \\(A_5=880~\\mathrm{Hz}\\), niin s\u00e4velet asettuvat mukavasti, koska toisen taajuus on toisen taajuus kaksinkertaisena. Sanotaan, ett\u00e4 n\u00e4iden s\u00e4velien et\u00e4isyys toisistaan eli intervalli on oktaavi. Oktaavi vastaa siis taajuuksien suhdetta \\(2\\) tai \\(\\frac{1}{2}\\).<\/p>\n<p>My\u00f6skin s\u00e4velet \\(A_4=440~\\mathrm{Hz}\\) ja \\(E_4=660~\\mathrm{Hz}\\) soivat todella mukavasti yhdess\u00e4. Niiden taajuuksien suhde on \\(\\frac{660}{440}=\\frac{3}{2}=1.5.\\) T\u00e4t\u00e4 intervallia kutsutaan nimell\u00e4 kvintti. Kvintti\u00e4 ihailivat muinaiset Kreikkalaiset ja k\u00e4ytt\u00e4v\u00e4t nyky\u00e4\u00e4n muun muassa rock-muusikot nimitt\u00e4en kahta kvintin intervallin s\u00e4velt\u00e4 voimasoinnuksi.<\/p>\n<p>T\u00e4rkeimm\u00e4t intervallit et\u00e4isyysj\u00e4rjestyksess\u00e4 ovat<\/p>\n<ul style=\"margin-left: 40px\">\n<li>pieni terssi \\(\\frac{6}{5}=1.2\\),<\/li>\n<li>suuri terssi \\(\\frac{5}{4}=1.25\\),<\/li>\n<li>kvartti \\(\\frac{4}{3}\\approx 1.33\\),<\/li>\n<li>kvintti \\(\\frac{3}{2}=1.5\\),<\/li>\n<li>seksti \\(\\frac{5}{3}\\approx 1.66\\),<\/li>\n<li>oktaavi \\(\\frac{2}{1}=2\\).<\/li>\n<\/ul>\n<p>Jossakin vaiheessa muusikot ja matemaatikot huomasivat, ett\u00e4 k\u00e4ytt\u00e4m\u00e4ll\u00e4 lukuja \\( (\\sqrt[12]{2})^k=2^{\\frac{k}{12}} \\) intervallit saadaan tuotettua suurinpiirtein oikein ja yhten\u00e4isell\u00e4 tavalla. Nimitt\u00e4in luvut \\[ 2^{\\frac{0}{12}},2^\\frac{1}{12},\\ldots,2^{\\frac{12}{12}}\\] ovat likiarvoina \\[ 1;\\, 1.06;\\, 1.12;\\, \\underline{1.19}; \\, \\underline{1.26};\\, \\underline{1.33};\\, 1.41; \\, \\underline{1.50}; \\, 1.59; \\, \\underline{1.68}; \\, 1.78; \\, 1.89; \\, \\underline{2}. \\] Siis mainitut t\u00e4rke\u00e4t intervallit on mahdollista tuottaa t\u00e4ll\u00e4 tavoin.<\/p>\n<p>Oheisessa dynaamisessa kuviossa voit soittaa harmonioita siirt\u00e4m\u00e4ll\u00e4 lukua \\(x\\) ja painamalla &#8221;soita&#8221;-nappia. Siirt\u00e4m\u00e4ll\u00e4 sek\u00e4 lukuja \\(x\\) ett\u00e4 \\(y\\) saat aikaan kolmisointuja.<\/p>\n<div class=\"jxgbox\" id=\"JSXBoard\"> <\/div>\r\n    <script>\r\n        (function() {\r\n            var JSXBoard_b = JXG.JSXGraph.initBoard('JSXBoard', {\r\n                boundingbox: [-0.2, 6, 1.2, -2],\r\n                originX: 4,\r\n                originY: 4,\r\n                zoomX: 1,\r\n                zoomY: 1,\r\n                keepaspectratio: false,\r\n               axis: true,\r\n                showCopyright: false,\r\n                showNavigation: false,\r\n                grid: false\r\n            });\r\n \r\n            \/* Write your jsxgraph code here *\/\r\n \r\n            var h1 = 5;\r\n            var h2 = 4;\r\n            var h3 = 3;\r\n \r\n            \/\/ kielten p\u00e4\u00e4tepisteet\r\n            var kiel = [];\r\n            var savel = [];\r\n            var nauha = [];\r\n            var kieli = [];\r\n            kiel[0] = JSXBoard_b.create('point', [0, h1], {\r\n                name: '0'\r\n            });\r\n            kiel[1] = JSXBoard_b.create('point', [1, h1], {\r\n                name: '1'\r\n            });\r\n            kiel[2] = JSXBoard_b.create('point', [0, h2], {\r\n                name: '0'\r\n            });\r\n            kiel[3] = JSXBoard_b.create('point', [1, h2], {\r\n                name: '1'\r\n            });\r\n            kiel[4] = JSXBoard_b.create('point', [0, h3], {\r\n                name: '0'\r\n            });\r\n            kiel[5] = JSXBoard_b.create('point', [1, h3], {\r\n                name: '1'\r\n            });\r\n \r\n            \/\/ p\u00e4\u00e4tepisteiden tyylit\r\n            for (let k = 0; k < kiel.length; k++) {\r\n                kiel[k].setAttribute({\r\n                    showInfoBox: false,\r\n                    visible: true,\r\n                    size: 2,\r\n                    fixed: true,\r\n                    color: 'none',\r\n                    highlight: false,\r\n                    label: {\r\n                        offset: [0, 20],\r\n                        highlight: false\r\n                    }\r\n                });\r\n            }\r\n \r\n            \/\/ kielet\r\n            kieli[0] = JSXBoard_b.create('arrow', [kiel[0], kiel[1]], {\r\n                firstArrow: {\r\n                    type: 3,\r\n                    size: 10\r\n                },\r\n                lastArrow: {\r\n                    type: 3,\r\n                    size: 10\r\n                }\r\n            });\r\n            kieli[1] = JSXBoard_b.create('arrow', [kiel[2], kiel[3]], {\r\n                firstArrow: {\r\n                    type: 3,\r\n                    size: 10\r\n                },\r\n                lastArrow: {\r\n                    type: 3,\r\n                    size: 10\r\n                }\r\n            });\r\n            kieli[2] = JSXBoard_b.create('arrow', [kiel[4], kiel[5]], {\r\n                firstArrow: {\r\n                    type: 3,\r\n                    size: 10\r\n                },\r\n                lastArrow: {\r\n                    type: 3,\r\n                    size: 10\r\n                }\r\n            });\r\n \r\n            \/\/ kielten tyylit\r\n            for (let k = 0; k < kieli.length; k++) {\r\n                kieli[k].setAttribute({\r\n                    strokeWidth: 2,\r\n                    strokeColor: 'black',\r\n                    showInfoBox: false,\r\n                    visible: true,\r\n                    size: 2,\r\n                    highlight: false,\r\n                });\r\n                \/\/ firstArrow: {type:3,size:10}, lastArrow: {type:3,size:10} \/\/ ei voi asettaa t\u00e4ss\u00e4\r\n            }\r\n \r\n            var nuotit = ['A', 'A^\\#', 'B', 'C', 'C^\\#', 'D', 'D^\\#', 'E', 'F', 'G', 'G^\\#', 'A^\\#'];\r\n \r\n            \/\/ kielten nauhat\r\n            var N = 20;\r\n            for (let k = 0; k < N; k++) {\r\n                oktaavi = 4 + Math.floor(k \/ 12);\r\n                nauha[k] = JSXBoard_b.create('point', [1 \/ (2 ** (k \/ 12)), h1], {\r\n                    name: ''\r\n                });\r\n                nauha[k + N] = JSXBoard_b.create('point', [1 \/ (2 ** (k \/ 12)), h2], {\r\n                    name: ''\r\n                });\r\n                nauha[k + 2 * N] = JSXBoard_b.create('point', [1 \/ (2 ** (k \/ 12)), h3], {\r\n                    name: nuotit[k % 12] + '_' + oktaavi,\r\n                    label: {\r\n                        offset: [0, -15],\r\n                        fontsize: '8'\r\n                    }\r\n                });\r\n                \/\/ JSXBoard_b .create('segment', [nauha[k],nauha[k+2*N]], {strokeWidth:1, strokeColor:'gray', highlight:false, showInfoBox:false, visible:true, size:2});\r\n            }\r\n \r\n \r\n \r\n            \/\/ nauhojen tyylit\r\n            for (let k = 0; k < nauha.length; k++) {\r\n                nauha[k].setAttribute({\r\n                    size: 1,\r\n                    color: 'black',\r\n                    fixed: true,\r\n                    highlight: false,\r\n                    showinfobox: false\r\n                });\r\n            }\r\n \r\n            var intervallit = ['pieni terssi', 'suuri terssi', 'kvartti', 'kvintti', 'seksti', 'oktaavi'];\r\n            var suhteet = ['6\/5', '5\/4', '4\/3', '3\/2', '5\/3', '2\/1'];\r\n            var suhteett = ['\\\\\\\\frac{5}{4}', '\\\\\\\\frac{4}{3}', '\\\\\\\\frac{3}{2}', '\\\\\\\\frac{5}{3}', '2'];\r\n \r\n            \/\/ s\u00e4velet\r\n            savel[6] = JSXBoard_b.create('point', [1 \/ 2, h1], {\r\n                name: '2'\r\n            });\r\n            savel[0] = JSXBoard_b.create('point', [1 \/ 4, h1], {\r\n                name: '4'\r\n            });\r\n            savel[1] = JSXBoard_b.create('point', [1 \/ (5 \/ 3), h1], {\r\n                name: '<element id=\"savel1\"><\/element>'\r\n            });\r\n            savel[2] = JSXBoard_b.create('point', [1 \/ (3 \/ 2), h1], {\r\n                name: '<element id=\"savel2\"><\/element>'\r\n            });\r\n            savel[3] = JSXBoard_b.create('point', [1 \/ (4 \/ 3), h1], {\r\n               name: '<element id=\"savel3\"><\/element>'\r\n            });\r\n            savel[4] = JSXBoard_b.create('point', [1 \/ (5 \/ 4), h1], {\r\n                name: '<element id=\"savel4\"><\/element>'\r\n            });\r\n            savel[5] = JSXBoard_b.create('point', [1 \/ (6 \/ 5), h1], {\r\n                name: '<element id=\"savel5\"><\/element>'\r\n            });\r\n \r\n \r\n \r\n \r\n \r\n \r\n            \/\/ s\u00e4velien tyylit\r\n            for (let k = 0; k < savel.length; k++) {\r\n                \/\/ savel[k]=JSXBoard_b .create('point', [eval(suhteet[k]),h1]); \/\/ , {name:'\\\\('+suhteett[k]+'\\\\)'});\r\n                savel[k].setAttribute({\r\n                    showInfoBox: false,\r\n                    visible: true,\r\n                    size: 2,\r\n                    fixed: true,\r\n                    color: 'blue',\r\n                    highlight: false,\r\n                    label: {\r\n                        offset: [0, 30],\r\n                        highlight: false\r\n                    }\r\n                });\r\n            }\r\n \r\n            x = JSXBoard_b.create('glider', [1, 0, kieli[0]], {\r\n                name: 'x'\r\n            });\r\n            y = JSXBoard_b.create('glider', [1, 1, kieli[1]], {\r\n                name: 'y'\r\n            });\r\n            z = JSXBoard_b.create('glider', [1, 1, kieli[2]], {\r\n                name: 'z'\r\n            });\r\n \r\n            var tker = 20;\r\n            var kork = 0.5;\r\n            var L = 2 * Math.PI * tker;\r\n \r\n            var graph = [];\r\n            graph[0] = JSXBoard_b.create('curve', [function(t) {\r\n                    return t;\r\n                },\r\n                function(t) {\r\n                    return kork * (Math.sin(tker * t \/ x.X()) + Math.sin(tker * t \/ y.X()) + Math.sin(tker * t \/ z.X()));\r\n                },\r\n                0, 1\r\n            ]);\r\n \r\n            \/\/ k\u00e4yr\u00e4t\r\n            for (let k = 0; k < graph.length; k++) {\r\n                graph[k].setAttribute({\r\n                    strokewidth: 2,\r\n                    highlight: false\r\n                });\r\n            }\r\n \r\n            JSXBoard_b.create('point', [0.2, 2], {\r\n                name: 'x=z*<element id=\"inter\"><\/element>',\r\n                showInfoBox: false,\r\n                visible: true,\r\n                size: 2\r\n            });\r\n \r\n            JSXBoard_b.create('point', [0.4, 2], {\r\n                name: 'y=z*<element id=\"inter2\"><\/element>',\r\n                showInfoBox: false,\r\n                visible: true,\r\n                size: 2\r\n            });\r\n \r\n            JSXBoard_b.create('point', [0.6, 2], {\r\n                name: '<button onclick=\"soita()\">soita<\/button>',\r\n                showInfoBox: false,\r\n                visible: true,\r\n                size: 2\r\n            });\r\n \r\n            var tol = 0.05;\r\n \r\n            function nimi() {\r\n                if (1 == 0) {} else if (Math.abs(z.X() \/ x.X() - eval(suhteet[0])) < tol) {\r\n                    return intervallit[0];\r\n                } else if (Math.abs(z.X() \/ x.X() - eval(suhteet[1])) < tol) {\r\n                    return intervallit[1];\r\n                } else if (Math.abs(z.X() \/ x.X() - eval(suhteet[2])) < tol) {\r\n                    return intervallit[2];\r\n                } else if (Math.abs(z.X() \/ x.X() - eval(suhteet[3])) < tol) {\r\n                    return intervallit[3];\r\n                } else if (Math.abs(z.X() \/ x.X() - eval(suhteet[4])) < tol) {\r\n                    return intervallit[4];\r\n                } else if (Math.abs(z.X() \/ x.X() - eval(suhteet[5])) < tol) {\r\n                    return intervallit[5];\r\n                } else {\r\n                    return '?';\r\n                }\r\n            }\r\n \r\n            function nimi2() {\r\n                if (1 == 0) {} else if (Math.abs(z.X() \/ y.X() - eval(suhteet[0])) < tol) {\r\n                    return intervallit[0];\r\n                } else if (Math.abs(z.X() \/ y.X() - eval(suhteet[1])) < tol) {\r\n                    return intervallit[1];\r\n                } else if (Math.abs(z.X() \/ y.X() - eval(suhteet[2])) < tol) {\r\n                    return intervallit[2];\r\n                } else if (Math.abs(z.X() \/ y.X() - eval(suhteet[3])) < tol) {\r\n                    return intervallit[3];\r\n                } else if (Math.abs(z.X() \/ y.X() - eval(suhteet[4])) < tol) {\r\n                    return intervallit[4];\r\n                } else if (Math.abs(z.X() \/ y.X() - eval(suhteet[5])) < tol) {\r\n                    return intervallit[5];\r\n                } else {\r\n                    return '?';\r\n                }\r\n            }\r\n \r\n \r\n            function laitanimi() {\r\n                inter = document.getElementById('inter');\r\n                inter.innerHTML = nimi();\r\n                inter2 = document.getElementById('inter2');\r\n                inter2.innerHTML = nimi2();\r\n            }\r\n \r\n            function laitanimi2() {\r\n                savel1 = document.getElement('savel1');\r\n                savel1.innerHTML = '\\\\(\\frac{5}{3}\\\\)';\r\n                savel2 = document.getElement('savel2');\r\n                savel2.innerHTML = '\\\\(\\frac{3}{2}\\\\)';\r\n                savel3 = document.getElement('savel3');\r\n                savel3.innerHTML = '\\\\(\\frac{4}{3}\\\\)';\r\n                savel4 = document.getElement('savel4');\r\n                savel4.innerHTML = '\\\\(\\frac{5}{4}\\\\)';\r\n                savel5 = document.getElement('savel5');\r\n                savel5.innerHTML = '\\\\(\\frac{6}{5}\\\\)';\r\n                MathJax.Hub.Queue([\"Typeset\", MathJax.Hub, savel1]);\r\n                MathJax.Hub.Queue([\"Typeset\", MathJax.Hub, savel2]);\r\n                MathJax.Hub.Queue([\"Typeset\", MathJax.Hub, savel3]);\r\n                MathJax.Hub.Queue([\"Typeset\", MathJax.Hub, savel4]);\r\n                MathJax.Hub.Queue([\"Typeset\", MathJax.Hub, savel5]);\r\n            }\r\n \r\n            JSXBoard_b.on('move', function() {\r\n                laitanimi();\r\n            });\r\n            laitanimi();\r\n            laitanimi2();\r\n \r\n        })();\r\n \r\n        function soita(fx, fy, fz) {\r\n            const context = new AudioContext();\r\n \r\n            const oscillatorx = context.createOscillator();\r\n            oscillatorx.type = \"sine\";\r\n            oscillatorx.frequency.value = Math.round(440 \/ x.X());\r\n \r\n            const oscillatory = context.createOscillator();\r\n            oscillatory.type = \"sine\";\r\n            oscillatory.frequency.value = Math.round(440 \/ y.X());\r\n \r\n            const oscillatorz = context.createOscillator();\r\n            oscillatorz.type = \"sine\";\r\n            oscillatorz.frequency.value = Math.round(440 \/ z.X());\r\n \r\n \r\n            const gainNode = context.createGain();\r\n            oscillatorx.connect(gainNode);\r\n            oscillatory.connect(gainNode);\r\n            oscillatorz.connect(gainNode);\r\n            gainNode.connect(context.destination);\r\n \r\n \r\n            oscillatorx.start(0); \/\/kaikki\r\n            oscillatory.start(0); \/\/kaikki\r\n            oscillatorz.start(0); \/\/kaikki\r\n            const duration = 2;\r\n            gainNode.gain.linearRampToValueAtTime(0.0001, context.currentTime + duration);\r\n \r\n \r\n            oscillatorx.stop(context.currentTime + duration); \/\/kaikki\r\n            oscillatory.stop(context.currentTime + duration); \/\/kaikki\r\n            oscillatorz.stop(context.currentTime + duration); \/\/kaikki\r\n        }\r\n    <\/script>\r\n \n<p>Mainitaan viel\u00e4 pari musiikin termi\u00e4. Jos \\(z\\) on peruss\u00e4vel, niin<\/p>\n<ul style=\"margin-left: 40px\">\n<li>duurikolmisointu: \\(y=\\textrm{suuri terssi}\\times z\\) ja \\(x=\\textrm{kvintti}\\times z\\)<\/li>\n<li>mollikolmisointu: \\(y=\\textrm{pieni terssi}\\times z\\) ja \\(x=\\textrm{kvintti}\\times z\\)<\/li>\n<\/ul>\n<p>Useimmat kokevat duurikolmisoinnun iloiseksi \u00e4\u00e4neksi ja mollikolmisoinnun surulliseksi.<\/p>\n<hr \/>\n<p>Tekij\u00e4: Juha-Matti Huusko<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Jos pianossa painaa yht\u00e4 kosketinta, kuuluu \u00e4\u00e4ni, jota kutsutaan s\u00e4veleksi. Jos eri s\u00e4veli\u00e4 yhdist\u00e4\u00e4, syntyy sointu. Joskus kahden s\u00e4velen yhdistelm\u00e4\u00e4 kutsutaan harmoniaksi. Jotta soinnut olisivat ihmisest\u00e4 mielenkiintoisen kuuloisia, s\u00e4velien t\u00e4ytyy olla sopivasti valittuja. Esimerkiksi s\u00e4vel \\(A_4\\) soi taajuudella \\(440~\\mathrm{Hz}\\). Jos t\u00e4m\u00e4n kanssa soittaa s\u00e4velen \\(A_5=880~\\mathrm{Hz}\\), niin s\u00e4velet asettuvat mukavasti, koska toisen taajuus on toisen taajuus [&hellip;]<\/p>\n","protected":false},"author":267,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"class_list":["post-3294","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Sointu - Mahtavaa matematiikkaa<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/\" \/>\n<meta property=\"og:locale\" content=\"fi_FI\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sointu - Mahtavaa matematiikkaa\" \/>\n<meta property=\"og:description\" content=\"Jos pianossa painaa yht\u00e4 kosketinta, kuuluu \u00e4\u00e4ni, jota kutsutaan s\u00e4veleksi. Jos eri s\u00e4veli\u00e4 yhdist\u00e4\u00e4, syntyy sointu. Joskus kahden s\u00e4velen yhdistelm\u00e4\u00e4 kutsutaan harmoniaksi. Jotta soinnut olisivat ihmisest\u00e4 mielenkiintoisen kuuloisia, s\u00e4velien t\u00e4ytyy olla sopivasti valittuja. Esimerkiksi s\u00e4vel (A_4) soi taajuudella (440~mathrm{Hz}). Jos t\u00e4m\u00e4n kanssa soittaa s\u00e4velen (A_5=880~mathrm{Hz}), niin s\u00e4velet asettuvat mukavasti, koska toisen taajuus on toisen taajuus [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/\" \/>\n<meta property=\"og:site_name\" content=\"Mahtavaa matematiikkaa\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-05T10:00:15+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Arvioitu lukuaika\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minuuttia\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/sointu\\\/\",\"url\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/sointu\\\/\",\"name\":\"Sointu - Mahtavaa matematiikkaa\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/#website\"},\"datePublished\":\"2021-10-11T07:29:14+00:00\",\"dateModified\":\"2026-02-05T10:00:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/sointu\\\/#breadcrumb\"},\"inLanguage\":\"fi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/sointu\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/sointu\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sointu\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/#website\",\"url\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/\",\"name\":\"Mahtavaa matematiikkaa\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/sites.uef.fi\\\/mahtavaa-matematiikkaa\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fi\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sointu - Mahtavaa matematiikkaa","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/","og_locale":"fi_FI","og_type":"article","og_title":"Sointu - Mahtavaa matematiikkaa","og_description":"Jos pianossa painaa yht\u00e4 kosketinta, kuuluu \u00e4\u00e4ni, jota kutsutaan s\u00e4veleksi. Jos eri s\u00e4veli\u00e4 yhdist\u00e4\u00e4, syntyy sointu. Joskus kahden s\u00e4velen yhdistelm\u00e4\u00e4 kutsutaan harmoniaksi. Jotta soinnut olisivat ihmisest\u00e4 mielenkiintoisen kuuloisia, s\u00e4velien t\u00e4ytyy olla sopivasti valittuja. Esimerkiksi s\u00e4vel (A_4) soi taajuudella (440~mathrm{Hz}). Jos t\u00e4m\u00e4n kanssa soittaa s\u00e4velen (A_5=880~mathrm{Hz}), niin s\u00e4velet asettuvat mukavasti, koska toisen taajuus on toisen taajuus [&hellip;]","og_url":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/","og_site_name":"Mahtavaa matematiikkaa","article_modified_time":"2026-02-05T10:00:15+00:00","twitter_card":"summary_large_image","twitter_misc":{"Arvioitu lukuaika":"2 minuuttia"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/","url":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/","name":"Sointu - Mahtavaa matematiikkaa","isPartOf":{"@id":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/#website"},"datePublished":"2021-10-11T07:29:14+00:00","dateModified":"2026-02-05T10:00:15+00:00","breadcrumb":{"@id":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/#breadcrumb"},"inLanguage":"fi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/sointu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/"},{"@type":"ListItem","position":2,"name":"Sointu"}]},{"@type":"WebSite","@id":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/#website","url":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/","name":"Mahtavaa matematiikkaa","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fi"}]}},"_links":{"self":[{"href":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/wp-json\/wp\/v2\/pages\/3294","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/wp-json\/wp\/v2\/users\/267"}],"replies":[{"embeddable":true,"href":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/wp-json\/wp\/v2\/comments?post=3294"}],"version-history":[{"count":1,"href":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/wp-json\/wp\/v2\/pages\/3294\/revisions"}],"predecessor-version":[{"id":5336,"href":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/wp-json\/wp\/v2\/pages\/3294\/revisions\/5336"}],"wp:attachment":[{"href":"https:\/\/sites.uef.fi\/mahtavaa-matematiikkaa\/wp-json\/wp\/v2\/media?parent=3294"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}