Lineaarialgebra

Skaalauksia R:ssä ?

Esimerkki 1. Onko reaalilukujen skaalaus reaaliluvuilla?

${ 1. Skaalaus R:ssä $} #CODEBASE = "../jsp" #ARCHIVE = "jsp4.jar" #WIDTH = 500 #HEIGHT = 100 #ALIGN = Center *Frame = 0 *TextFont = "Helvetica" *TextBold = 1 *TextSize = 18 *LabelFont = "Courier" *LabelBold = 1 *MeasureFont = "Courier" *MeasureSize = 14 *MeasureBold = 1 *MeasureInDegrees = 1 *DirectedAngles = 0 *BackRed = 255 *BackGreen = 255 *BackBlue = 220 $reset FixedText(485,15,'Reset = ''R''')[red,bold,justifyRight]; $Rlabel FixedText(485, 45,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; $RO FixedPoint(250,50)[ black, label('0')]; $Rykk FixedPoint(275,50)[ white, label('1')]; $RL Line($Rykk,$RO)[black]; $x Point on object($RL,-9)[red, bold, label('x'),layer(5)]; $c Point on object($RL,-6)[red,label('c'),layer(5)]; $cx VectorTranslation($Rykk,$c,$x)[magenta, label('cx')];
Oheisessa dynaamisessa kuviossa voi liikutella hiirellä pisteitä c ja x. Tässä vektorit ja skalaarit ovat samasta joukosta R, joten ne voidaan esittää yhdellä reaaliakselilla.

Kaikilla c ja x tulos cx on täysin määrätty luku, joten kyseessä on funktio R × R ® R; siis reaalivektorien (-lukujen) skaalaus joukon R alkioilla.


Esimerkki 2. Onko reaalilukujen skaalaus reaaliluvuilla?

${ 2. Skaalaus R:ssä $} #CODEBASE = "../jsp" #ARCHIVE = "jsp4.jar" #WIDTH = 500 #HEIGHT = 100 #ALIGN = Center *Frame = 0 *TextFont = "Helvetica" *TextBold = 1 *TextSize = 18 *LabelFont = "Courier" *LabelBold = 1 *MeasureFont = "Courier" *MeasureSize = 14 *MeasureBold = 1 *MeasureInDegrees = 1 *DirectedAngles = 0 *BackRed = 255 *BackGreen = 220 *BackBlue = 220 $reset FixedText(485,15,'Reset = ''R''')[red,bold,justifyRight]; $Rlabel FixedText(485, 45,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; $RO FixedPoint(250,50)[ black, label('0')]; $Rykk FixedPoint(275,50)[ white, label('1')]; $RL Line($Rykk,$RO)[black]; $x Point on object($RL,-9)[red, label('x'),layer(5)]; $c Point on object($RL,-4)[red,label('c'),layer(5)]; $Pt FixedPoint(270,0)[hidden]; $cx Dilation/3PtRatio($Rykk,$RO,$Pt,$RO,$x)[magenta, label('cx')];
Oheisessa dynaamisessa kuviossa voi liikutella hiirellä pisteitä c ja x.

Kaikilla c ja x tulos cx on täysin määrätty luku, joten kyseessä on funktio R × R ® R; siis reaalivektorien (-lukujen) skaalaus joukon R alkioilla.

Huomaa funktion epäjatkuvuus (hyppy), ja se ettei arvo riipu lainkaan skaalaavasta muuttujasta!


Esimerkki 3. Onko kyseessä joukon [a,b] alkioiden skaalaus reaaliluvuilla?

${ 3. Ei skaalaus välillä [a,b] $} #CODEBASE = "../jsp" #ARCHIVE = "jsp4.jar" #WIDTH = 500 #HEIGHT = 100 #ALIGN = Center *Frame = 1 *TextFont = "Helvetica" *TextBold = 1 *TextSize = 18 *LabelFont = "Courier" *LabelBold = 1 *MeasureFont = "Courier" *MeasureSize = 14 *MeasureBold = 1 *MeasureInDegrees = 1 *DirectedAngles = 0 *BackRed = 255 *BackGreen = 220 *BackBlue = 255 $reset FixedText(485,15,'Reset = ''R''')[red,bold,justifyRight]; $RO FixedPoint(250,50)[ black, label('0')]; $Rykk FixedPoint(275,50)[ white, label('1')]; $RL Line($Rykk,$RO)[black]; $a FixedPoint(50,50)[color(0,150,0), label('a'),layer(5)]; $b FixedPoint(450,50)[color(0,150,0), label('b'),layer(5)]; $Jana Segment($a,$b)[color(0,150,0),thick,layer(10)]; $x Point on object($RL,-4)[red, label('x'),layer(5)]; $c Point on object($RL, 1.5)[red,label('c'),layer(5)]; FixedText(485, 45,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; $cx VectorTranslation($c,$x,$a)[magenta, label('cx')]; $AnBx AnimateButton(1, 1,'Animoi x')($x,$Jana)(2)(0)(0)[red, bold]; $AnBy AnimateButton(1,21,'Animoi c')($c,$Jana)(3)(0)(0)[red, bold,hidden];
Oheisessa dynaamisessa kuviossa voi liikutella hiirellä pisteitä c ja x. Lisäksi voit käyttää animointia.

Kaikilla c ja x tulos cx on täysin määrätty luku, mutta se ei kaikilla välin [a,b] arvoilla x kuulu välille [a,b], joten kyseessä ei ole funktio R × [a,b] ® [a,b]; siis ei ole skaalausfunktio.


Esimerkki 4. Onko kyseessä joukon [a,b] alkioiden skaalaus saman joukon alkioilla?

${ 4. Skaalaus välillä [a,b] $} #CODEBASE = "../jsp" #ARCHIVE = "jsp4.jar" #WIDTH = 500 #HEIGHT = 200 #ALIGN = Center *Frame = 0 *TextFont = "Helvetica" *TextBold = 1 *TextSize = 18 *LabelFont = "Courier" *LabelBold = 1 *MeasureFont = "Courier" *MeasureSize = 14 *MeasureBold = 1 *MeasureInDegrees = 1 *DirectedAngles = 0 *BackRed = 220 *BackGreen = 220 *BackBlue = 255 $reset FixedText(485,15,'Reset = ''R''')[red,bold,justifyRight]; FixedText(485, 45,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; FixedText(485,145,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; $RO FixedPoint(250,50)[ black, label('0')]; $Rykk FixedPoint(280,50)[ white, label('1')]; $RL Line($Rykk,$RO)[black]; $Rnumx Point on object($RL,-4)[red, label('x'),layer(5)]; $fRO FixedPoint(250,150)[ black, label('0')]; $fRykk FixedPoint(280,150)[ white, label('1')]; $fRL Line($fRykk,$fRO)[black]; $Rnumc Point on object($fRL, 3)[red,label('c'),layer(5)]; $xval Ratio/Points($RO,$Rykk,$Rnumx,0,40,'x = ')[red,bold,hidden]; $cval Ratio/Points($fRO,$fRykk,$Rnumc,0,40,'c = ')[blue,bold,hidden]; $cxval Calculate(0,70,'cx = ','A @cos_ B @sin_ *A*')($xval,$cval)[hidden]; $Rcx Dilation/MarkedRatio($Rykk,$RO,$cxval)[magenta, label('cx'),layer(10)]; $RcxTR Translation($Rcx,0,0)[magenta,hidden,traced]; $Sxcx Segment($Rcx,$Rnumx)[red, layer(20)]; $Sccx Segment($Rcx,$Rnumc)[red, layer(20)]; $vasen FixedPoint(100,50)[color(0,150,0),label('a')]; $oikea FixedPoint(400,50)[color(0,150,0),label('b')]; $SL Segment($oikea,$vasen)[color(0,150,0),thick,layer(10)]; $fvasen FixedPoint(100,150)[color(0,150,0),label('a')]; $foikea FixedPoint(400,150)[color(0,150,0),label('b')]; $fSL Segment($foikea,$fvasen)[color(0,150,0),thick,layer(10)]; $AnBx AnimateButton(1, 1,'Animoi x')($Rnumx,$SL)(2)(0)(0)[red, bold]; $AnBy AnimateButton(1,21,'Animoi c')($Rnumc,$SL)(3)(0)(0)[red, bold]; $SBTR ShowButton(200,170, 'Jäljitä')($RcxTR)[magenta]; $HBTR HideButton(240,170, 'Lopeta' )($RcxTR)[magenta];
Oheisessa dynaamisessa kuviossa voi liikutella hiirellä pisteitä c ja x. Lisäksi voit käyttää animointia.

Kaikilla c ja x tulos cx on täysin määrätty luku, joten kyseessä on funktio [a,b] × [a,b] ® [a,b]; kyseessä on välin [a,b] lukujen skaalaus saman välin luvuilla.


Esimerkki 5. Onko reaalilukujen skaalaus reaaliluvuilla?

${ 5. Tavallinen skaalaus R:ssä $} #CODEBASE = "../jsp" #ARCHIVE = "jsp4.jar" #WIDTH = 500 #HEIGHT = 200 #ALIGN = Center *Frame = 1 *TextFont = "Helvetica" *TextBold = 1 *TextSize = 18 *LabelFont = "Courier" *LabelBold = 1 *MeasureFont = "Courier" *MeasureSize = 14 *MeasureBold = 1 *MeasureInDegrees = 1 *DirectedAngles = 0 *BackRed = 200 *BackGreen = 240 *BackBlue = 230 $reset FixedText(485,15,'Reset = ''R''')[red,bold,justifyRight]; FixedText(485, 45,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; FixedText(485,145,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; $RO FixedPoint(250,50)[ black, label('0')]; $Rykk FixedPoint(280,50)[ white, label('1')]; $RL Line($Rykk,$RO)[black]; $Rnumx Point on object($RL,2)[red, label('x'),layer(5)]; $fRO FixedPoint(250,150)[ black, label('0')]; $fRykk FixedPoint(280,150)[ white, label('1')]; $fRL Line($fRykk,$fRO)[black]; $Rnumc Point on object($fRL, 3)[red,label('c'),layer(5)]; $xval Ratio/Points($RO,$Rykk,$Rnumx,0,40,'x = ')[red,bold,hidden]; $cval Ratio/Points($fRO,$fRykk,$Rnumc,0,40,'c = ')[blue,bold,hidden]; $cxval Calculate(0,70,'cx = ','A B *')($xval,$cval)[hidden]; $Rcx Dilation/MarkedRatio($Rykk,$RO,$cxval)[magenta, label('cx'),layer(10)]; $RcxTR Translation($Rcx,0,0)[magenta,hidden,traced]; $Sxcx Segment($Rcx,$Rnumx)[red, layer(20)]; $Sccx Segment($Rcx,$Rnumc)[red, layer(20)]; $vasen FixedPoint(0,50)[color(0,150,0),label('a'),hidden]; $oikea FixedPoint(500,50)[color(0,150,0),label('b'),hidden]; $SL Segment($oikea,$vasen)[color(0,150,0),thick,layer(10),hidden]; $fvasen FixedPoint(0,150)[color(0,150,0),label('a'),hidden]; $foikea FixedPoint(500,150)[color(0,150,0),label('b'),hidden]; $fSL Segment($foikea,$fvasen)[color(0,150,0),thick,layer(10),hidden]; $AnBx AnimateButton(1, 1,'Animoi x')($Rnumx,$SL)(2)(0)(0)[red, bold]; $AnBy AnimateButton(1,21,'Animoi c')($Rnumc,$SL)(3)(0)(0)[red, bold]; $SBTR ShowButton(200,170, 'Jäljitä')($RcxTR)[magenta]; $HBTR HideButton(240,170, 'Lopeta' )($RcxTR)[magenta];
Oheisessa dynaamisessa kuviossa voi liikutella hiirellä pisteitä c ja x. Lisäksi voit käyttää animointeja.

Kaikilla c ja x tulos cx on täysin määrätty luku, joten kyseessä on funktio R × R ® R; siis reaalivektorien (-lukujen) skaalaus joukon R alkioilla. Nyt kyseessä on tavallinen skaalaus (kertolasku).




Esimerkki 6. Onko reaalilukujen skaalaus sopivalla lukujoukolla?

${ 5. Joukolla {-1,0,1} skaalaaminen $} #CODEBASE = "../jsp" #ARCHIVE = "jsp4.jar" #WIDTH = 500 #HEIGHT = 200 #ALIGN = Center *Frame = 1 *TextFont = "Helvetica" *TextBold = 1 *TextSize = 18 *LabelFont = "Courier" *LabelBold = 1 *MeasureFont = "Courier" *MeasureSize = 14 *MeasureBold = 1 *MeasureInDegrees = 1 *DirectedAngles = 0 *BackRed = 230 *BackGreen = 255 *BackBlue = 180 $reset FixedText(485,15,'Reset = ''R''')[red,bold,justifyRight]; FixedText(485, 45,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; FixedText(485,145,'R')[plain,font('Helvetica'),bold, black,justifyCenter]; $RO FixedPoint(250,50)[ black, label('0')]; $Rykk FixedPoint(280,50)[ white, label('1')]; $RL Line($Rykk,$RO)[black]; $Rnumx Point on object($RL,-4)[red, label('x'),layer(5)]; $cRO FixedPoint(250,150)[ black, label('0')]; $cRm1 FixedPoint(220,150)[ white, label('-1')]; $cR1 FixedPoint(280,150)[ white, label('1')]; $cRL Line($cR1,$cRO)[black]; $c Point on object($cRL, 3)[red,label('c'),layer(5)]; $DccRm1 Distance($cRm1,$c,10,10,'d(c,cRm1) = ')[hidden]; $ind1 Calculate(10,20,'luku1 = ','0A-1+@sqrt')($DccRm1)[hidden]; $cRm1trans Translation/FixedAngle/MarkedDistance($cRm1,$ind1,0)[magenta]; $cRm1transVal Ratio/Points($cRO,$cR1,$cRm1trans,0,40,'x = ')[red,bold,hidden]; $DccRO Distance($cRO,$c,10,10,'d(c,cRO) = ')[hidden]; $ind2 Calculate(10,20,'luku2 = ','0A-1+@sqrt')($DccRO)[hidden]; $cROtrans Translation/FixedAngle/MarkedDistance($cRO,$ind2,0)[magenta]; $cROtransVal Ratio/Points($cRO,$cR1,$cROtrans,0,40,'x = ')[red,bold,hidden]; $DccR1 Distance($cR1,$c,10,10,'d(c,cR1) = ')[hidden]; $ind3 Calculate(10,20,'luku2 = ','0A-1+@sqrt')($DccR1)[hidden]; $cR1trans Translation/FixedAngle/MarkedDistance($cR1,$ind3,0)[magenta]; $cR1transVal Ratio/Points($cRO,$cR1,$cR1trans,0,40,'x = ')[red,bold,hidden]; $xval Ratio/Points($RO,$Rykk,$Rnumx,0,40,'x = ')[red,bold,hidden]; $cxvalm1 Calculate(0,70,'cx = ','A B *')($xval,$cRm1transVal)[hidden]; $cxvalO Calculate(0,70,'cx = ','A B *')($xval,$cROtransVal)[hidden]; $cxval1 Calculate(0,70,'cx = ','A B *')($xval,$cR1transVal)[hidden]; $Rcxm1 Dilation/MarkedRatio($Rykk,$RO,$cxvalm1)[magenta, label('cx'),layer(10)]; $Rcxm1TR Translation($Rcxm1,0,0)[magenta,hidden,traced]; $RcxO Dilation/MarkedRatio($Rykk,$RO,$cxvalO)[magenta, label('cx'),layer(10)]; $RcxOTR Translation($RcxO,0,0)[magenta,hidden,traced]; $Rcx1 Dilation/MarkedRatio($Rykk,$RO,$cxval1)[magenta, label('cx'),layer(10)]; $Rcx1TR Translation($Rcx1,0,0)[magenta,hidden,traced]; $Sxcxm1 Segment($Rcxm1,$Rnumx)[red, layer(20)]; $SxcxO Segment($RcxO,$Rnumx)[red, layer(20)]; $Sxcx1 Segment($Rcx1,$Rnumx)[red, layer(20)]; $Sccxm1 Segment($Rcxm1,$c)[red, layer(20)]; $SccxO Segment($RcxO,$c)[red, layer(20)]; $Sccx1 Segment($Rcx1,$c)[red, layer(20)]; $vasen FixedPoint(0,50)[color(0,150,0),label('a'),hidden]; $oikea FixedPoint(500,50)[color(0,150,0),label('b'),hidden]; $SL Segment($oikea,$vasen)[color(0,150,0),thick,layer(10),hidden]; $fvasen FixedPoint(0,150)[color(0,150,0),label('a'),hidden]; $foikea FixedPoint(500,150)[color(0,150,0),label('b'),hidden]; $fSL Segment($foikea,$fvasen)[color(0,150,0),thick,layer(10),hidden]; $AnBx AnimateButton(1, 1,'Animoi x')($Rnumx,$SL)(2)(0)(0)[red, bold]; $AnBy AnimateButton(1,21,'Animoi c')($c,$fSL)(3)(0)(0)[red, bold]; $SBTR ShowButton(200,170, 'Jäljitä')($Rcxm1TR,$RcxOTR,$Rcx1TR)[magenta]; $HBTR HideButton(240,170, 'Lopeta' )($Rcxm1TR,$RcxOTR,$Rcx1TR)[magenta];
Oheisessa dynaamisessa kuviossa voi liikutella hiirellä pisteitä c ja x. Lisäksi voit käyttää animointeja.

Tulos cx on määritelty vain arvoilla c = -1, 0 ja 1. Kun valitaan kerroinkunnaksi K = {-1, 0, 1}, saadaan funktio K × R ® R; siis reaalivektorien (-lukujen) skaalaus joukon K alkioilla.



Martti.Pesonen@Joensuu.Fi 2003