Difference between revisions of "Lituus"

From JSXGraph Wiki
Jump to navigationJump to search
Line 20: Line 20:
 
</jsxgraph>
 
</jsxgraph>
 
</source>
 
</source>
===Other curves===
 
A '''rose''' or '''rhodonea curve''' is a sinusoid plotted in polar coordinates. Up to similarity, these curves can all be expressed by a polar equation of the form
 
 
:<math>        \!\,r=\cos(k\theta).</math>
 
 
If k is an integer, the curve will be rose shaped with
 
* 2k petals if k is even, and
 
* k petals if k is odd.
 
When k is even, the entire graph of the rose will be traced out exactly once when the value of θ changes from 0 to 2π. When k is odd, this will happen on the interval between 0 and π. (More generally, this will happen on any interval of length <math>2\pi</math> for <math>k</math> even, and <math>\pi</math> for <math>k</math> odd.)
 
 
The '''quadrifolium''' is a type of rose curve with n=2. It has polar equation:
 
 
:<math>    r = \cos(2\theta), \,</math>
 
 
with corresponding algebraic equation
 
 
:<math>    (x^2+y^2)^3 = (x^2-y^2)^2. \, </math>
 
 
<jsxgraph width="500" height="500" box="box2">
 
var b2 = JXG.JSXGraph.initBoard('box2', {axis:true,originX: 250, originY: 250, unitX: 25, unitY: 25});
 
var f = b2.createElement('slider', [[1,8],[5,8],[0,4,8]]);
 
var len = b2.createElement('slider', [[1,7],[5,7],[0,2,2]]);
 
var k = b2.createElement('slider', [[1,6],[5,6],[0,2,10]]);
 
var c = b2.createElement('curve', [function(phi){return f.Value()*Math.cos(Math.floor(k.Value())*phi); }, [0, 0],0, function(){return len.Value()*Math.PI;}],
 
            {curveType:'polar', strokewidth:2});     
 
</jsxgraph>
 
 
  
 
===External links===
 
===External links===

Revision as of 16:22, 18 March 2009

A lituus is a spiral in which the angle is inversely proportional to the square of the radius (as expressed in polar coordinates).

[math]r^2\theta = k \,[/math]

The JavaScript code to produce this picture

<jsxgraph width="500" height="500" box="box1">
 var b1 = JXG.JSXGraph.initBoard('box1', {axis:true,originX: 250, originY: 250, unitX: 25, unitY: 25});
 var k = b1.createElement('slider', [[1,8],[5,8],[0,1,4]]);
 var c = b1.createElement('curve', [function(phi){return Math.sqrt(k.Value()/phi); }, [0, 0],0, 8*Math.PI],
             {curveType:'polar', strokewidth:4});      
</jsxgraph>

External links