161:""" f: the function that produces the curve df: the derivative. That is, df(x) = f'(x) x0: the origin point l0: the string length at origin point dxs: the differential points at which to plot the involute. Assumed to be sorted in increasing order returns f_xs, f_ys, inv_xs, inv_ys """ f_xs = x0 + dxs f_ys = f(f_xs) inv_xs = np.zeros(len(dxs)) inv_ys = np.zeros(len(dxs)) arclength_integrand = lambda x: np.sqrt(1 + df(x)**2) for i in range(len(dxs)): x = x0 + dxs arclength = quad(arclength_integrand, x0, x) string_length = l0 - arclength string_angle = np.arctan(df(x)) inv_xs = f_xs + string_length * np.cos(string_angle) inv_ys = f_ys + string_length * np.sin(string_angle) return f_xs, f_ys, inv_xs, inv_ys
43:
239:
245:
250:
99:
633:
291:– 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.
185:
xlim_low = -0.5 xlim_width = 2 ylim_low = -0.5 plt.xlim(xlim_low, xlim_low + xlim_width) plt.ylim(ylim_low, ylim_low + xlim_width * y_x_ratio) plt.savefig("involutes of a cubic curve.svg") plt.show()
173:
f_xs, f_ys, inv_xs, inv_ys = involute(f, df, 0, l0=0.8, dxs=np.arange(200) / 100 - 1) y_x_ratio = 1 plt.figure(figsize=(16, int(16*y_x_ratio))) plt.plot(f_xs, f_ys) for l0 in np.arange(20)/10-1:
155:
import numpy as np import matplotlib.pyplot as plt from scipy.integrate import quad # numerical integration import matplotlib.cm as cm # for colormaps
176:
f_xs, f_ys, inv_xs, inv_ys = involute(f, df, 0, l0=l0, dxs=np.arange(200) / 100 - 0.5) plt.plot(inv_xs, inv_ys, color='green', linewidth=0.2)
73:
69:
65:
61:
57:
53:
47:
110:
82:
544:
508:
472:
705:
This file contains additional information, probably added from the digital camera or scanner used to create or digitize it.
298:
528:
456:
428:
413:
400:
182:
y = f(x) slope = df(x) plot_line(x, y, slope, -1, +2, color=cm.viridis(x), marker='o',markersize=5, linewidth=1)
564:
492:
420:
373:
356:
260:
708:
If the file has been modified from its original state, some details may not fully reflect the modified file.
660:
The following pages on the
English Knowledge (XXG) use this file (pages on other projects are not listed):
297:– If you remix, transform, or build upon the material, you must distribute your contributions under the
257:
435:
643:
118:
632:
627:
42:
216:
105:
232:
I, the copyright holder of this work, hereby publish it under the following license:
682:
196:
664:
600:
Click on a date/time to view the file as it appeared at that time.
650:
Uploaded while editing "Involute" on en.wikipedia.org
93:
87:(SVG file, nominally 1,440 × 1,440 pixels, file size: 59 KB)
509:
Creative
Commons Attribution-ShareAlike 4.0 International
692:
340:
Add a one-line explanation of what this file represents
164:
def plot_line(x, y, slope, dxmin, dxmax, **kwargs):
137:
117:
Commons is a freely licensed media file repository.
436:https://commons.wikimedia.org/User:Cosmia_Nebula
308:https://creativecommons.org/licenses/by-sa/4.0
98:
314:Creative Commons Attribution-Share Alike 4.0
238:
8:
274:– to copy, distribute and transmit the work
170:f = lambda x: x**3 df = lambda x: 3 * x**2
46:Size of this PNG preview of this SVG file:
710:
602:
336:
675:The following other wikis use this file:
261:Attribution-Share Alike 4.0 International
720:
712:
662:
578:
562:
542:
526:
506:
490:
470:
454:
387:
371:
354:
351:
332:
325:
179:for x in np.linspace(-0.5, 0.5, 15):
7:
167:plt.plot(, , **kwargs)
591:
249:
244:
703:
345:
339:
235:
231:
158:def involute(f, df, x0, l0, dxs):
147:
130:
80:
344:
330:
285:Under the following conditions:
256:This file is licensed under the
248:
243:
237:
97:
31:
21:
327:
148:
14:
326:
143:Involutes of a cubic curve.svg
26:
1:
545:original creation by uploader
36:
352:Items portrayed in this file
742:
689:Usage on fi.wikipedia.org
679:Usage on fa.wikipedia.org
299:same or compatible license
592:
206:
16:
329:
265:
104:This is a file from the
649:
628:06:07, 4 September 2023
212:
202:
195:
192:
140:
108:. Information from its
111:description page there
74:1,440 × 1,440 pixels
70:2,048 × 2,048 pixels
66:1,024 × 1,024 pixels
280:– to adapt the work
52:Other resolutions:
414:Wikimedia username
401:author name string
729:
728:
671:Global file usage
653:
493:copyright license
338:
222:
221:
126:
125:
106:Wikimedia Commons
32:Global file usage
733:
711:
640:
580:3 September 2023
457:copyright status
438:
433:
423:
418:
408:
405:
321:
318:
315:
312:
309:
301:as the original.
258:Creative Commons
252:
251:
247:
246:
241:
240:
208:
198:
197:3 September 2023
152:
144:
138:
122:
101:
100:
94:
88:
77:
62:768 × 768 pixels
58:480 × 480 pixels
54:240 × 240 pixels
48:600 × 600 pixels
741:
740:
736:
735:
734:
732:
731:
730:
699:
669:
661:
654:
646:
638:
594:
593:
590:
589:
588:
587:
586:
585:
584:
583:
581:
571:
570:
569:
567:
556:
555:
554:
553:
552:
551:
550:
549:
547:
535:
534:
533:
531:
520:
519:
518:
517:
516:
515:
514:
513:
511:
499:
498:
497:
495:
484:
483:
482:
481:
480:
479:
478:
477:
475:
463:
462:
461:
459:
448:
447:
446:
445:
444:
443:
442:
441:
440:
439:
434:
431:
425:
424:
419:
416:
410:
409:
406:
403:
394:
393:
392:
390:
380:
379:
378:
376:
365:
364:
363:
362:
361:
359:
343:
342:
341:
324:
323:
322:
319:
316:
313:
310:
307:
306:
264:
253:
234:
233:
228:
223:
188:
183:
177:
168:
162:
142:
135:
128:
127:
116:
115:
114:is shown below.
90:
86:
79:
78:
51:
12:
11:
5:
739:
737:
727:
726:
723:
719:
718:
715:
702:
698:
697:
696:
695:
687:
686:
685:
673:
672:
668:
667:
659:
658:
657:
652:
651:
648:
644:
641:
637:1,440 × 1,440
635:
630:
625:
621:
620:
617:
614:
611:
608:
605:
598:
597:
582:
579:
577:
576:
575:
574:
573:
572:
568:
563:
561:
560:
559:
558:
557:
548:
543:
541:
540:
539:
538:
537:
536:
532:
529:source of file
527:
525:
524:
523:
522:
521:
512:
507:
505:
504:
503:
502:
501:
500:
496:
491:
489:
488:
487:
486:
485:
476:
471:
469:
468:
467:
466:
465:
464:
460:
455:
453:
452:
451:
450:
449:
427:
426:
412:
411:
399:
398:
397:
396:
395:
391:
388:
386:
385:
384:
383:
382:
381:
377:
372:
370:
369:
368:
367:
366:
360:
355:
353:
350:
349:
348:
347:
346:
335:
334:
331:
328:
305:
304:
303:
302:
292:
283:
282:
281:
275:
268:You are free:
255:
254:
236:
230:
229:
227:
224:
220:
219:
214:
210:
209:
204:
200:
199:
194:
190:
189:
181:
175:
166:
160:
145:
136:
134:
131:
129:
124:
123:
102:
92:
91:
45:
41:
40:
39:
34:
29:
24:
19:
13:
10:
9:
6:
4:
3:
2:
738:
724:
721:
716:
713:
709:
706:
700:
694:
691:
690:
688:
684:
681:
680:
678:
677:
676:
670:
666:
663:
655:
647:
645:Cosmia Nebula
642:
636:
634:
631:
629:
626:
623:
622:
618:
615:
612:
609:
606:
604:
603:
601:
595:
566:
546:
530:
510:
494:
474:
458:
437:
430:
422:
421:Cosmia Nebula
415:
407:Cosmia Nebula
402:
375:
358:
311:CC BY-SA 4.0
300:
296:
293:
290:
287:
286:
284:
279:
276:
273:
270:
269:
267:
266:
262:
259:
242:
225:
218:
217:Cosmia Nebula
215:
211:
205:
201:
191:
186:
180:
174:
171:
165:
159:
156:
151:
146:
139:
132:
120:
113:
112:
107:
103:
96:
95:
89:
84:
83:Original file
75:
71:
67:
63:
59:
55:
49:
44:
38:
35:
33:
30:
28:
25:
23:
20:
18:
15:
707:
704:
674:
599:
596:File history
294:
288:
277:
271:
184:
178:
172:
169:
163:
157:
154:
149:
119:You can help
109:
81:
22:File history
473:copyrighted
295:share alike
289:attribution
141:Description
693:Evolventti
656:File usage
613:Dimensions
389:some value
153:```python
27:File usage
610:Thumbnail
607:Date/Time
565:inception
226:Licensing
150:English:
701:Metadata
665:Involute
333:Captions
278:to remix
272:to share
263:license.
207:Own work
37:Metadata
639:(59 KB)
624:current
619:Comment
374:creator
357:depicts
337:English
133:Summary
85:
725:1152pt
722:Height
717:1152pt
683:گستران
213:Author
203:Source
714:Width
616:User
320:true
317:true
193:Date
17:File
429:URL
187:```
432::
417::
404::
72:|
68:|
64:|
60:|
56:|
50:.
121:.
76:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.