{"version":3,"sources":["webpack:///./src/components/physics/refraction/Refraction.vue?bd55","webpack:///./src/components/physics/refraction/Refraction.vue","webpack:///./src/components/physics/refraction/Boxes.js","webpack:///src/components/physics/refraction/Refraction.vue","webpack:///./src/components/physics/refraction/Refraction.vue?113a","webpack:///./src/components/physics/refraction/Refraction.vue?2401"],"names":["ref","_vm","attrs","_c","staticStyle","_v","staticClass","staticRenderFns","_self","Boxes","box1","JXG","Options","layer","brd","JSXGraph","initBoard","boundingbox","axis","keepaspectratio","showNavigation","showCopyright","suspendUpdate","makeResponsive","placeTitle","origin","create","visible","fixed","lt","Rt","boundary","fontSize","strokeColor","strokeWidth","circ","fillColor","withLines","fillOpacity","vertices","_defineProperty","center","size","name","radiuspoint","anglepoint","arcc","torch","Math","cos","PI","sin","face","shadow","inc","straightFirst","a","radius","Label","Color","irot","toFixed","Value","type","Ptsi","Perpsi","Intersi","i","dash","bindTo","eye","b","mu1","mu2","tran","sineinc","x","sinetrans","trot","Pts","Perps","Inters","Tick","minX","setAttribute","Y","asin","unsuspendUpdate","created","_this","$store","commit","title","newTopics","img","action","goto","newshowhome","newPhys","newLeftArrow","newModule","mounted","MathJax","Hub","Queue","component"],"mappings":"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","file":"js/chunk-6806466a.7a960a74.js","sourcesContent":["export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Refraction.vue?vue&type=style&index=0&id=10113d6e&prod&lang=scss&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h3',{ref:\"def\"},[_vm._v(\"\\n What is Refraction?\\n \")]),_c('p',[_vm._v(\"\\n Refraction refers to the bending of light (change in its direction of propagation) as it moves from one transparent medium to another medium.\\n Shown below is an example of refraction of light as it goes from one medium (air) to another medium (glass).\\n You can notice the change in direction of propagation of light.\\n \")]),_c('div',{attrs:{\"align-center\":\"\",\"justify-center\":\"\"}},[_c('v-layout',{attrs:{\"justify-center\":\"\"}},[_c('v-img',{attrs:{\"src\":\"/assets/refraction.png\",\"max-height\":\"350px\",\"max-width\":\"350px\",\"width\":\"400px\"}})],1),_c('h5',{staticStyle:{\"text-align\":\"center\"}},[_vm._v(\"\\n Figure: Refraction of light as it travels from air into glass. Notice the bending of light.\\n \")])],1),_c('p'),_c('h3',{ref:\"cause\"},[_vm._v(\"\\n Cause of Refraction\\n \")]),_vm._m(0),_c('h3',{ref:\"law\"},[_vm._v(\"\\n Law of Refraction: Snell's Law\\n \")]),_c('p',[_vm._v(\"\\n Snell's law describes the relationship between the incident angle and the refracted angle as light passes from one medium to another. Let \\\\(i_a\\\\) be the incident angle (measured from the interface normal) and let \\\\(r_a\\\\) be the refracted angle (also measured from the interface normal). Then, according to Snell's law, the ratio of the sines of the indicent angle (\\\\(i_a\\\\)) and refracted angle (\\\\(r_a\\\\)) is same as the ratio of velocities of light in the two media, i.e.\\n $$ \\\\frac{\\\\sin r_a}{\\\\sin i_a} = \\\\frac{v_2}{v_1}$$\\n Now, the ratio of light velocities in the two media are related as:\\n $$\\\\frac{v_1}{v_2} = \\\\frac{\\\\mu_2}{\\\\mu_1}$$\\n Thus, in terms of refractive indices of the two media, the Snell's law can be written as:\\n $$ \\\\frac{\\\\sin r_a}{\\\\sin i_a} = \\\\frac{\\\\mu_1}{\\\\mu_2}$$\\n Or equivalently,\\n $$ \\\\mu_1 \\\\sin i_a = \\\\mu_2 \\\\sin r_a$$\\n \")]),_c('br'),_c('h3',{ref:\"playgraph\"},[_vm._v(\"\\n MagicGraph | Refraction of Light\\n \")]),_c('p',[_vm._v(\"\\n This MagicGraph offers a visually interactive module that explains refraction of light.\\n Shown is a ray of light travelling from medium 1 (with refraction index =\\\\(\\\\mu_1\\\\)) to medium 2 (with refraction index = \\\\(\\\\mu_2\\\\)).\\n The refraction indices \\\\(\\\\mu_1\\\\) and \\\\(\\\\mu_2\\\\) of these media can be changed by using the sliders.\\n \")]),_c('h5',[_vm._v(\"To Get Started \")]),_vm._m(1),_c('v-responsive',[_c('v-layout',{attrs:{\"justify-center\":\"\"}},[_c('div',{staticClass:\"edliy-box-about\",attrs:{\"id\":\"jxgbox1\"}})])],1)],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('p',[_vm._v(\"\\n Refraction is a consequence of the fact that as light goes from one medium to another medium with a different refractive index, both the speed and the wavelength of light change. Thus, in order to maintain the continuity of the wavefront at the interface, light has to bend and change its direction of propagation.\"),_c('br'),_vm._v(\"\\n The extent and direction of bending (towards or away from the normal) depends on the extent to which the speed (and wavelength) change, which depends on the refractive index of the two media. The following two scenarios are possible:\\n \"),_c('br'),_c('ul',{staticClass:\"a\"},[_c('li',[_vm._v(\" Light moving from a medium of lower refractive index to a medium of higher refractive index: in such a case both the speed and the wavelength of light decrease. \")]),_c('li',[_vm._v(\" Light moving from a medium of higher refractive index to a lower refractive index: in such cases both the speed and the wavelength of light increase.\")])])])\n},function (){var _vm=this,_c=_vm._self._c;return _c('p',[_c('ul',{staticStyle:{\"list-style-type\":\"square\"}},[_c('li',[_vm._v(\" Use the two sliders to change the refractive indices of two media:\\\\(\\\\mu_1\\\\) and \\\\(\\\\mu_2\\\\)\")]),_c('li',[_vm._v(\" Drag the laser pointer to change the incident angle. Press on the laser button to turn the light on. \")])])])\n}]\n\nexport { render, staticRenderFns }","// Import the edliy_utils\r\nimport {\r\n makeResponsive,\r\n placeTitle,\r\n placeImage,\r\n placeInput,\r\n placeSlider,\r\n hoverMe,\r\n placeRec,\r\n hiddenPt,\r\n fixedPt,\r\n clearInputFields,\r\n dragMe,\r\n placeArrow,\r\n placeGravity,\r\n placeText,\r\n placeLine,\r\n placePoint,\r\n placeGlider,\r\n placeRuler,\r\n placeLeftText,\r\n placeCircle,\r\n placeAngle,\r\n placeDash,\r\n placeLabel\r\n} from '../../../common/edliy_utils';\r\nconst Boxes = {\r\n box1: function () {\r\n JXG.Options.layer['ticks']=2;\r\n JXG.Options.layer['polygon']=2;\r\n JXG.Options.layer['line']=2;\r\n JXG.Options.layer['text']=3;\r\n JXG.Options.layer['point']=5;\r\n var brd = JXG.JSXGraph.initBoard('jxgbox1', {boundingbox:[-4.25,4.25,4.25,-4.25], axis:false, keepaspectratio:true, showNavigation:false, showCopyright:false});\r\n brd.suspendUpdate();\r\n //Make the board responsive\r\n makeResponsive(brd);\r\n // Creat titleStyle\r\n placeTitle(brd, 'Refraction of Light', '(Drag Laser Light P to Change Incident Angle.)');\r\n //Origin\r\n var origin=brd.create('point',[0,0], {visible:false, fixed:true});\r\n //LeftMost\r\n var lt=brd.create('point',[-4,0], {visible:false, fixed:true});\r\n //RightMost\r\n var Rt=brd.create('point',[4,0], {visible:false, fixed:true});\r\n //Titles\r\n var med1 = brd.create('text',[-2.5, 3.5, 'Medium#1'], {fontSize:20, fixed:true});\r\n var med2 = brd.create('text',[2.0, 3.5, 'Medium#2'], {fontSize:20, fixed:true});\r\n //Interface\r\n var boundary = brd.create('segment', [[0.0, -4],[-0.0,4]], {strokeColor:'grey', strokeWidth:3, visible:false});\r\n //Medium#1\r\n var rect = brd.create('polygon',[[0.0,-4.25],[-0.0, 4.25],[-4.25,4.25],[-4.25, -4.25]],{fillColor:'lightblue', strokeColor:'black', strokeWidth:5, withLines:false, fillOpacity:1, vertices:{visible:false}});\r\n //Left track\r\n var circ =brd.create('arc',[[0,0], [3.75,0], [0, 3.75]], {visible:false, center:{size:0, name:''}, radiuspoint:{size:0, name:''}, anglepoint:{size:0, name:''}, center:{size:0, name:''}});\r\n //Right track\r\n var arcc =brd.create('arc', [[0,0], [-4.,0],[0, -4.]], {visible:false, radiuspoint:{size:0, name:''}, anglepoint:{size:0, name:''}, center:{size:0, name:''}});\r\n // Torch\r\n var torch = brd.create('glider',[-2*Math.cos(Math.PI/4),-2*Math.sin(Math.PI/4), arcc],{name:'Drag me!', size:4, face:'circle', strokeColor:'black', shadow:true});\r\n //IncidentRay\r\n var inc =brd.create('line', [[0, 0], torch], {strokeWidth:4, strokeColor:'red', straightFirst:true, vertices:{visible:false}});\r\n var a=brd.create('angle',[lt,origin,torch], {name:'i_a', strokeColor:'black', fillOpacity:0, radius:1, Label:{fontSize:24, Color:'red'}});\r\n //Rotation transfrom\r\n var irot = brd.create('transform', [function(){return JXG.toFixed(a.Value(),2);}, 0, 0], {type:'rotate'});\r\n var Ptsi=[]; var Perpsi=[]; var Intersi=[]; var Ticki=[];\r\n var i;\r\n for(i=0; i<10; i++){\r\n Ptsi[i] = brd.create('point', [-(i+1)*1+5, 0 ], {name:'', visible:false});\r\n Perpsi[i] = brd.create('perpendicular',[Ptsi[i], inc], {strokeWidth:0.25, strokeColor:'red',visible:true, dash:1});\r\n Intersi[i] = brd.create('intersection',[Perpsi[i], boundary], {name:function(i){return function(){return 4-i;};}(i), face:'square', size:4, fillColor:'red', strokeColor:'red', fillOpacity:1, visible:false});\r\n //Ticki[i]= brd.create('line',[Intersi[i], Ptsi[i]], {strokeWidth:0.25, strokeColor:'red', visible:false});\r\n };\r\n irot.bindTo(Ptsi);\r\n //var front = brd.create('ticks', [inc],{ticksDistance:1.0, minorTicks:0, majorHeight:-1, strokeColor:'red', drawZero:true});\r\n //Eye\r\n var eye = brd.create('glider',[2,0, circ],{name:'Drag me!', size:4, face:'circle', strokeColor:'black',fillColor:'yellow',shadow:true});\r\n //Transmitted Angle\r\n var b =brd.create('angle',[Rt,origin,eye], {name:'r_a', fillOpacity:0, radius:1, strokeColor:'black', Label:{fontSize:24, Color:'blue'}});\r\n //Medium#2\r\n var punch = brd.create('polygon',[[0.0,-4.25],[-0.0, 4.25],[4.25,4.25],[4.25, -4.25]],{fillColor:'lightyellow', strokeColor:'black', strokeWidth:5, withLines:false, fillOpacity:1, vertices:{visible:false}});\r\n //var origin = brd.create('point',[0,0],{name:'', size:0});\r\n //1st\r\n var mu1 = brd.create('slider', [[1,-1.], [3,-1], [1,1,2]], {name:'mu_1', face:'square'});\r\n //2nd\r\n var mu2 = brd.create('slider', [[1,-1.5], [3,-1.5], [1,1,2]], {name:'mu_2', face:'square'});\r\n //\r\n var normal =brd.create('perpendicular', [origin,boundary], {dash:1, strokeWidth:1});\r\n //Transmitted Ray\r\n var tran = brd.create('line', [[0, 0], eye], {strokeWidth:4, straightFirst:false, vertices:{visible:false}});\r\n //Waveform#1\r\n var sineinc =brd.create('functiongraph', [function(x){return 0.25*Math.sin(2*Math.PI*x);}, -8, 0],{strokeColor:'red'});\r\n irot.bindTo(sineinc);\r\n var sinetrans =brd.create('functiongraph', [function(x){return 0.25*Math.sin(2*Math.PI*x*mu2.Value()/mu1.Value());}, 0, 8]);\r\n // Lattice Points and Segments\r\n var trot = brd.create('transform', [function(){return JXG.toFixed(b.Value(),2);}, 0, 0], {type:'rotate'});\r\n trot.bindTo(sinetrans);\r\n var i; var Pts=[]; var Perps=[]; var Inters=[]; var Tick=[];\r\n for(i=0; i<10; i++){\r\n Pts[i] = brd.create('point', [function(i){return function(){return (mu1.Value()/mu2.Value())*(i)*Math.cos(b.Value());};}(i),function(i){return function(){return (mu1.Value()/mu2.Value())*(i)*Math.sin(b.Value());};}(i) ], {name:'', visible:false});\r\n Perps[i] = brd.create('perpendicular',[Pts[i], tran], {visible:false, strokeWidth:0.5, strokeColor:'blue', dash:1, minX:0});\r\n Inters[i] = brd.create('intersection',[Perps[i], boundary], {name:'', face:'square', fillColor:'blue',size:4, strokeColor:'blue', fillOpacity:1, visible:false});\r\n Tick[i]= brd.create('line',[Inters[i], Pts[i]], {straightFirst:false, strokeWidth:0.5, strokeColor:'blue', dash:1, visible:true});\r\n };\r\n brd.create('line', [[0,0],[function(){return 10*Math.sin(b.Value());}, function(){return -10*Math.cos(b.Value());}]],{strokeWidth:0.5, strokeColor:'blue', dash:1, visible:true, straightFirst:false});\r\n Inters[0].setAttribute({visible:function(){if(JXG.toFixed(Inters[1].Y(),1) == JXG.toFixed(Intersi[3].Y(),1)){return true;} else {return false;}}});\r\n Inters[1].setAttribute({visible:function(){if(JXG.toFixed(Inters[1].Y(),1) == JXG.toFixed(Intersi[3].Y(),1)){return true;} else {return false;}}});\r\n Inters[2].setAttribute({visible:function(){if(JXG.toFixed(Inters[2].Y(),1) == JXG.toFixed(Intersi[2].Y(),1)){return true;} else {return false;}}});\r\n Inters[3].setAttribute({visible:function(){if(JXG.toFixed(Inters[3].Y(),1) == JXG.toFixed(Intersi[1].Y(),1)){return true;} else {return false;}}});\r\n var ang1 = brd.create('text',[2.0,-2.5, function(){return 'i_a =' + JXG.toFixed(a.Value()*180/Math.PI,2);}], {fontSize:20, fixed:true});\r\n //var ang2 = brd.create('text',[2.0,-3, function(){return 'r_a =' +JXG.toFixed(b.Value()*180/Math.PI,1);}], {fontSize:20, fixed:true});\r\n var ang2 = brd.create('text',[2.0,-3., function(){if(JXG.toFixed(Inters[1].Y(),1) == JXG.toFixed(Intersi[3].Y(),1)){return 'r_a =' +JXG.toFixed(Math.asin(mu1.Value()*Math.sin(a.Value())/mu2.Value())*180/Math.PI,2);} else {return 'r_a =' +JXG.toFixed(b.Value()*180/Math.PI,2);};}], {fontSize:20, fixed:true});\r\n brd.unsuspendUpdate();\r\n}\r\n}\r\nexport default Boxes;\r\n","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Refraction.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Refraction.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Refraction.vue?vue&type=template&id=10113d6e&\"\nimport script from \"./Refraction.vue?vue&type=script&lang=js&\"\nexport * from \"./Refraction.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Refraction.vue?vue&type=style&index=0&id=10113d6e&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}