Applets:Periodendauer periodischer Signale: Difference between revisions

From LNTwww
No edit summary
No edit summary
Line 78: Line 78:
         });
         });
         // Erstellen der Schieberegler
         // Erstellen der Schieberegler
         a = cnfBox.create('slider', [ [-0.7, 1.5], [3, 1.5], [0, 0.5, 1] ], {
         sldA1 = cnfBox.create('slider', [ [-0.7, 1.5], [3, 1.5], [0, 0.5, 1] ], {
             suffixlabel: '$A_1=$',
             suffixlabel: '$A_1=$',
             unitLabel: 'V', snapWidth: 0.01
             unitLabel: 'V', snapWidth: 0.01
             }),
             }),
         b = cnfBox.create('slider', [ [-0.7, 0.5], [3, 0.5], [0, 1, 10] ], {
         sldF1 = cnfBox.create('slider', [ [-0.7, 0.5], [3, 0.5], [0, 1, 10] ], {
             suffixlabel: '$f_1=$',
             suffixlabel: '$f_1=$',
             unitLabel: 'kHz', snapWidth: 0.1
             unitLabel: 'kHz', snapWidth: 0.1
         }),
         }),
         c = cnfBox.create('slider', [ [-0.7, -0.5], [3, -0.5], [-180, 0, 180] ], {
         sldPHI1 = cnfBox.create('slider', [ [-0.7, -0.5], [3, -0.5], [-180, 0, 180] ], {
             suffixlabel: '$\\phi_1=$',
             suffixlabel: '$\\phi_1=$',
             unitLabel: 'Grad', snapWidth: 5
             unitLabel: 'Grad', snapWidth: 5
         }),
         }),
         d = cnfBox.create('slider', [ [6, 1.5], [9.7, 1.5], [0, 0.5, 1] ], {
         sldA2 = cnfBox.create('slider', [ [6, 1.5], [9.7, 1.5], [0, 0.5, 1] ], {
             suffixlabel: '$A_2=$',
             suffixlabel: '$A_2=$',
             unitLabel: 'V', snapWidth: 0.01
             unitLabel: 'V', snapWidth: 0.01
         }),
         }),
         e = cnfBox.create('slider', [ [6, 0.5], [9.7, 0.5], [0, 2, 10] ], {
         sldF2 = cnfBox.create('slider', [ [6, 0.5], [9.7, 0.5], [0, 2, 10] ], {
             suffixlabel: '$f_2=$',
             suffixlabel: '$f_2=$',
             unitLabel: 'kHz', snapWidth: 0.1
             unitLabel: 'kHz', snapWidth: 0.1
         }),
         }),
         g = cnfBox.create('slider', [ [6, -0.5], [9.7, -0.5], [-180, 90, 180] ], {
         sldPHI2 = cnfBox.create('slider', [ [6, -0.5], [9.7, -0.5], [-180, 90, 180] ], {
             suffixlabel: '$\\phi_2=$',
             suffixlabel: '$\\phi_2=$',
             unitLabel: 'Grad', snapWidth: 5
             unitLabel: 'Grad', snapWidth: 5
         }),
         }),
         t = cnfBox.create('slider', [ [-0.7, -1.5], [3, -1.5], [0, 0, 10] ], {
         sldT = cnfBox.create('slider', [ [-0.7, -1.5], [3, -1.5], [0, 0, 10] ], {
             suffixlabel: '$t=$',
             suffixlabel: '$t=$',
             unitLabel: 's', snapWidth: 0.2
             unitLabel: 's', snapWidth: 0.2
Line 108: Line 108:
         // Definition der Funktion
         // Definition der Funktion
         signaldarstellung = pltBox.create('functiongraph', [function(x) {
         signaldarstellung = pltBox.create('functiongraph', [function(x) {
             return (a.Value() * Math.cos(2 * Math.PI * b.Value() * x - 2 * Math.PI * c.Value() / 360) + d.Value() * Math.cos(2 * Math.PI * e.Value() * x - 2 * Math.PI * g.Value() / 360))
             return (sldA1.Value() * Math.cos(2 * Math.PI * sldF1.Value() * x - 2 * Math.PI * sldPHI1.Value() / 360) + sldA2.Value() * Math.cos(2 * Math.PI * sldF2.Value() * x - 2 * Math.PI * sldPHI2.Value() / 360))
         }], {
         }], {
             strokeColor: "red"
             strokeColor: "red"
Line 118: Line 118:
             },
             },
             function() {
             function() {
                 return a.Value() * Math.cos(2 * Math.PI * b.Value() * (Math.round(getT0() * 100) / 100) - 2 * Math.PI * c.Value() / 360) +
                 return sldA1.Value() * Math.cos(2 * Math.PI * sldF1.Value() * (Math.round(getT0() * 100) / 100) - 2 * Math.PI * sldPHI1.Value() / 360) +
                     d.Value() * Math.cos(2 * Math.PI * e.Value() * (Math.round(getT0() * 100) / 100) - 2 * Math.PI * g.Value() / 360);
                     sldA2.Value() * Math.cos(2 * Math.PI * sldF2.Value() * (Math.round(getT0() * 100) / 100) - 2 * Math.PI * sldPHI2.Value() / 360);
             }],
             }],
             { color: "blue", fixed: true, label: false, size: 1, name: '' }
             { color: "blue", fixed: true, label: false, size: 1, name: '' }
Line 137: Line 137:
         function getT0() {
         function getT0() {
             var A, B, C, Q;
             var A, B, C, Q;
             if (b.Value() < e.Value()) {
             if (sldF1.Value() < sldF2.Value()) {
                 A = b.Value();
                 A = sldF1.Value();
                 B = e.Value();
                 B = sldF2.Value();
             } else {
             } else {
                 B = b.Value();
                 B = sldF1.Value();
                 A = e.Value();
                 A = sldF2.Value();
             }
             }
             // console.log('Berechne T0 mit A=' + A, 'B=' + B);
             // console.log('Berechne T0 mit A=' + A, 'B=' + B);
Line 162: Line 162:
         // Ausgabe des Wertes x(t)
         // Ausgabe des Wertes x(t)
         setInterval(function() {
         setInterval(function() {
             document.getElementById("x(t)").innerHTML = Math.round((a.Value() * Math.cos(2 * Math.PI * b.Value() * t.Value() - 2 * Math.PI * c.Value() / 360) + d.Value() * Math.cos(2 * Math.PI * e.Value() * t.Value() - 2 * Math.PI * g.Value() /
             document.getElementById("x(t)").innerHTML = Math.round((sldA1.Value() * Math.cos(2 * Math.PI * sldF1.Value() * sldT.Value() - 2 * Math.PI * sldPHI1.Value() / 360) + sldA2.Value() * Math.cos(2 * Math.PI * sldF2.Value() * sldT.Value() - 2 * Math.PI * sldPHI2.Value() /
                 360)) * 1000) / 1000;
                 360)) * 1000) / 1000;
         }, 50);
         }, 50);
         // Ausgabe des Wertes x(t+T_0)
         // Ausgabe des Wertes x(t+T_0)
         setInterval(function() {
         setInterval(function() {
             document.getElementById("x(t+T_0)").innerHTML = Math.round((a.Value() * Math.cos(2 * Math.PI * b.Value() * (t.Value() + Math.round(getT0() * 1000) / 1000) - c.Value()) + d.Value() * Math.cos(2 * Math.PI * e.Value() * (t.Value() +
             document.getElementById("x(t+T_0)").innerHTML = Math.round((sldA1.Value() * Math.cos(2 * Math.PI * sldF1.Value() * (sldT.Value() + Math.round(getT0() * 1000) / 1000) - sldPHI1.Value()) + sldA2.Value() * Math.cos(2 * Math.PI * sldF2.Value() * (sldT.Value() +
                 Math.round(getT0() * 1000) / 1000) - g.Value())) * 1000) / 1000;
                 Math.round(getT0() * 1000) / 1000) - sldPHI2.Value())) * 1000) / 1000;
         }, 50);
         }, 50);
         // Ausgabe des Wertes x(t+2T_0)
         // Ausgabe des Wertes x(t+2T_0)
         setInterval(function() {
         setInterval(function() {
             document.getElementById("x(t+2T_0)").innerHTML = Math.round((a.Value() * Math.cos(2 * Math.PI * b.Value() * (t.Value() + 2 * Math.round(getT0() * 1000) / 1000) - c.Value()) + d.Value() * Math.cos(2 * Math.PI * e.Value() * (t.Value() +
             document.getElementById("x(t+2T_0)").innerHTML = Math.round((sldA1.Value() * Math.cos(2 * Math.PI * sldF1.Value() * (sldT.Value() + 2 * Math.round(getT0() * 1000) / 1000) - sldPHI1.Value()) + sldA2.Value() * Math.cos(2 * Math.PI * sldF2.Value() * (sldT.Value() +
                 2 * Math.round(getT0() * 1000) / 1000) - g.Value())) * 1000) / 1000;
                 2 * Math.round(getT0() * 1000) / 1000) - sldPHI2.Value())) * 1000) / 1000;
         }, 50);
         }, 50);
         // Ausgabe des Wertes x_max
         // Ausgabe des Wertes x_max
Line 179: Line 179:
             var x = new Array(50000);
             var x = new Array(50000);
             for (var i = 0; i < 50001; i++) {
             for (var i = 0; i < 50001; i++) {
                 x[i] = Math.round((a.Value() * Math.cos(2 * Math.PI * b.Value() * (i / 1000) - 2 * Math.PI * c.Value() / 360) + d.Value() * Math.cos(2 * Math.PI * e.Value() * (i / 1000) - 2 * Math.PI * g.Value() / 360)) * 1000) / 1000;
                 x[i] = Math.round((sldA1.Value() * Math.cos(2 * Math.PI * sldF1.Value() * (i / 1000) - 2 * Math.PI * sldPHI1.Value() / 360) + sldA2.Value() * Math.cos(2 * Math.PI * sldF2.Value() * (i / 1000) - 2 * Math.PI * sldPHI2.Value() / 360)) * 1000) / 1000;
             }
             }
             document.getElementById("x_max").innerHTML = Math.max.apply(Math, x);
             document.getElementById("x_max").innerHTML = Math.max.apply(Math, x);

Revision as of 10:17, 18 September 2017

Funktion: $$x(t) = A_1\cdot cos\Big(2\pi f_1\cdot t- \frac{2\pi}{360}\cdot \phi_1\Big)+A_2\cdot cos\Big(2\pi f_2\cdot t- \frac{2\pi}{360}\cdot \phi_2\Big)$$

$x(t)$= $x(t+ T_0)$= $x(t+2T_0)$=
$x_{\text{max}}$= $T_0$=