File:Normal lines to the ellipse.svg
From WikiMD's medical encyclopedia
Size of this PNG preview of this SVG file: 600 × 600 pixels. Other resolutions: 240 × 240 pixels | 480 × 480 pixels | 768 × 768 pixels | 1,024 × 1,024 pixels | 2,048 × 2,048 pixels | 2,000 × 2,000 pixels.
Original file (SVG file, nominally 2,000 × 2,000 pixels, file size: 290 KB)
This file is from Wikimedia Commons and may be used by other projects. The description on its file description page there is shown below.
Summary
| DescriptionNormal lines to the ellipse.svg |
English: Normal lines to the ellipse.[1] The evolute of the ellipse ( = Stretched astroid) can be seen. The streched astroid itself is not not drawn: we see it as the locus of points where the lines are especially close to each other. Stretched = "squashed" astroid = dilated in one direction only= the Lamé curve. Is it generalization of the astroid curve) |
| Date | |
| Source | Own work |
| Author | Adam majewski |
| Other versions |
|
| SVG development InfoField |
Licensing
I, the copyright holder of this work, hereby publish it under the following license:
This file is licensed under the Creative Commons Attribution-Share Alike 4.0 International license.
- You are free:
- to share – to copy, distribute and transmit the work
- to remix – to adapt the work
- Under the following conditions:
- attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
Maxima CAS src code
/*
===============
Batch file for Maxima CAS
save as a
c.mac
run maxima :
maxima
and then :
batch("e.mac");
------------text output =--------------
maxima
Maxima 5.41.0 http://maxima.sourceforge.net
using Lisp GNU Common Lisp (GCL) GCL 2.6.12
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) batch("e.mac");
read and interpret file: #p/home/a/maxima/batch/curves/ellipse/e2/e.mac
(%i2) kill(all)
(%o0) done
(%i1) remvalue(all)
(%o1) []
(%i2) ratprint:false
(%o2) false
(%i3) display2d:false
(%o3) false
(%i4) ellipse:x^2/a^2+y^2/b^2-1
(%o4) y^2/b^2+x^2/a^2-1
(%i5) GiveSlopeEquation(e):=block([deriv,m],depends(y,x),deriv:diff(e,x),
m:solve(deriv,'diff(y,x)),m:m[1],m:rhs(m),return(m))
(%i6) define(m(x,y),GiveSlopeEquation(ellipse))
(%o6) m(x,y):=-(b^2*x)/(a^2*y)
(%i7) t:0.33
(%o7) 0.33
(%i8) a:2
(%o8) 2
(%i9) b:1
(%o9) 1
(%i10) x0:a*cos(t)
(%o10) 1.892084687056774
(%i11) y0:b*sin(t)
(%o11) 0.3240430283948683
(%i12) m0:m(x0,y0)
(%o12) -1.459748028239586
(%i13) tangent:y = m0*(x-x0)+y0
(%o13) y = 0.3240430283948683-1.459748028239586*(x-1.892084687056774)
(%i14) normal:y = (-(x-x0))/m0+y0
(%o14) y = 0.3240430283948683-0.6850497350600779*(1.892084687056774-x)
(%i15) load(draw)
(%o15) "/usr/share/maxima/5.41.0/share/draw/draw.lisp"
(%i16) path:"~/maxima/batch/curves/ellipse/e2/"
(%i17) draw2d(user_preamble = "set key top right; unset mouse; ",
terminal = 'svg,file_name = sconcat(path,"ell3"),font_size = 13,
font = "Liberation Sans",
title = "Normal and tangent line to the ellipse ",
proportional_axes = 'xy,xrange = [-3,3],yrange = [-3,3],
ip_grid = [100,100],color = blue,key = "circle",
implicit(ellipse,x,-4,4,y,-4,4),key = "tangent",color = red,
implicit(tangent,x,-4,4,y,-4,4),key = "normal",color = green,
implicit(normal,x,-4,4,y,-4,4),key = "point",
point_type = filled_circle,color = black,points([[x0,y0]]))
(%o17) "e.mac"
*/
kill(all);
remvalue(all);
ratprint:false; /* a message informing the user of the conversion of floating point numbers to rational numbers is displayed. */
display2d:false;
/* ---------- functions ---------------------------------------------------- */
/* ellipse in implicit form */
ellipse : x^2/a^2 + y^2/b^2 - 1;
/*
https://www.linuxjournal.com/content/maximum-calculus-maxima
implicit differentiation
compute m equation
find dy/dx of implicit equation e
*/
GiveSlopeEquation(e):=block(
[deriv,m],
depends(y,x),
deriv:diff(e,x),
m:solve(deriv,'diff(y,x)),
m:m[1],
m:rhs(m),
return(m)
)$
/*
m(x,y):=-x/y
*/
define(
m(x,y),
GiveSlopeEquation(ellipse));
give_line(t):=block(
[x0, y0, m0],
t:float(t),
/* compute point z = x+y*i of the ellipse */
x0: a*cos(t),
y0: b*sin(t),
/* compute slope */
m0 : m(x0,y0),
return(explicit(-(x-x0)/m0 + y0,x,-4,4)) /* normal */
)$
/* ellipse parameters */
a:2;
b:1;
iMin:1; /* cot: argument 0.0 isn't in the domain of cot. #0: give_line(t=0) */
iMax:200;
/* --------------------computations -------------------------------*/
tt: makelist(2*%pi*i/iMax, i, iMin, iMax)$ /* list of angles from 0 to 2 Pi */
lines: map(give_line,tt)$
/* ------- draw --------------------------------------- */
load(draw);
path:"~/maxima/batch/curves/ellipse/en/"$ /* pwd, if empty then file is in a home dir , path should end with "/" */
draw2d(
user_preamble="set key top right; unset mouse; ",
terminal = 'svg,
file_name = sconcat(path,"en200_2000_e"),
font_size = 50,
font = "Liberation Sans", /* https://commons.wikimedia.org/wiki/Help:SVG#Font_substitution_and_fallback_fonts */
title= "Normal lines to the ellipse ",
proportional_axes = 'xy,
dimensions = [2000,2000],
xrange = [-5,5],
yrange = [-5,5],
ip_grid=[200,200],
color= blue,
key = "",
lines,
color=black,
implicit(ellipse, x,-4,4, y,-4,4)
)$
Captions
Normal lines to the ellipse
Items portrayed in this file
depicts
some value
22 June 2019
image/svg+xml
File history
Click on a date/time to view the file as it appeared at that time.
| Date/Time | Thumbnail | Dimensions | User | Comment | |
|---|---|---|---|---|---|
| current | 15:50, 22 June 2019 | 2,000 × 2,000 (290 KB) | Soul windsurfer | better quality |
File usage
The following page uses this file:
Metadata
This file contains additional information, probably added from the digital camera or scanner used to create or digitize it.
If the file has been modified from its original state, some details may not fully reflect the modified file.
| Short title | Gnuplot |
|---|---|
| Image title | Produced by GNUPLOT 5.3 patchlevel 0 |
| Width | 2000 |
| Height | 2000 |
Retrieved from "https://wikimd.org/wiki/File:Normal_lines_to_the_ellipse.svg"