The SageMath worksheet provides our code for outputting crochet patterns for surfaces of revolution and inputs used to create the patterns in M. Martinez and A. Lipnicki's paper "Hooked on Calculus: Crocheting Quadric Surfaces".
ubuntu2004
Row 0: Chain 46. Join work and Sc46. Place marker for beginning of round; move marker up as each round is completed.
Row 1: Sc21, Dec, Sc23. (45 stitches)
Row 2: Sc43, Dec. (44 stitches)
Row 3: Sc9, Dec, Sc20, Dec, Sc11. (42 stitches)
Row 4: Sc19, Dec, Sc21. (41 stitches)
Row 5: Sc9, Dec, Sc18, Dec, Sc10. (39 stitches)
Row 6: Sc18, Dec, Sc17, Dec. (37 stitches)
Row 7: Sc8, Dec, Sc27. (36 stitches)
Row 8: *Sc16, Dec* (2 times). (34 stitches)
Row 9: Sc7, Dec, Sc15, Dec, Sc8. (32 stitches)
Row 10: *Sc14, Dec* (2 times). (30 stitches)
Row 11: Sc6, Dec, Sc13, Dec, Sc7. (28 stitches)
Row 12: *Sc12, Dec* (2 times). (26 stitches)
Row 13: Sc1, Dec, *Sc6, Dec* (2 times), Sc7. (23 stitches)
Row 14: Sc10, Dec, Sc9, Dec. (21 stitches)
Row 15: Sc1, Dec, *Sc5, Dec* (2 times), Sc4. (18 stitches)
Row 16: Sc3, Dec, *Sc4, Dec* (2 times), Sc1. (15 stitches)
Row 17: *Sc1, Dec* (4 times), Sc3. (11 stitches)
Row 18: *Dec* (4 times), Sc3. (7 stitches)
To close the surface, cut the yarn leaving a generous tail, thread a tapestry needle with the tail, and weave through the stitches in the last row. Pull to tighten and tie off.
Row measurements were taken at the following coordinates: [(1, sqrt(3)), (1.18000000000000, 1.67928556237467), (1.35000000000000, 1.62788205960997), (1.53000000000000, 1.57162336455017), (1.71000000000000, 1.51327459504216), (1.88000000000000, 1.45602197785610), (2.06000000000000, 1.39283882771841), (2.23000000000000, 1.33041346956501), (2.40000000000000, 1.26491106406735), (2.57000000000000, 1.19582607431014), (2.74000000000000, 1.12249721603218), (2.91000000000000, 1.04403065089105), (3.08000000000000, 0.959166304662544), (3.24000000000000, 0.871779788708137), (3.39999999999999, 0.774596669241488), (3.54999999999999, 0.670820393249945), (3.68999999999999, 0.556776436283014), (3.81999999999998, 0.424264068711948), (3.92999999999998, 0.264575131106494)]
Row 0: Chain 40. Join work and Sc40. Place marker for beginning of round; move marker up as each round is completed.
Row 1: Sc8, Dec, Sc18, Dec, Sc10. (38 stitches)
Row 2: *Sc17, Dec* (2 times). (36 stitches)
Row 3: Sc7, Dec, Sc16, Dec, Sc9. (34 stitches)
Row 4: *Sc15, Dec* (2 times). (32 stitches)
Row 5: Sc2, Dec, *Sc8, Dec* (2 times), Sc8. (29 stitches)
Row 6: Sc13, Dec, Sc12, Dec. (27 stitches)
Row 7: Sc6, Dec, Sc11, Dec, Sc6. (25 stitches)
Row 8: Sc11, Dec, Sc10, Dec. (23 stitches)
Row 9: Sc5, Dec, Sc9, Dec, Sc5. (21 stitches)
Row 10: Sc2, Dec, *Sc5, Dec* (2 times), Sc3. (18 stitches)
Row 11: Sc3, Dec, Sc7, Dec, Sc4. (16 stitches)
Row 12: *Sc6, Dec* (2 times). (14 stitches)
Row 13: Sc2, Dec, Sc5, Dec, Sc3. (12 stitches)
Row 14: *Sc2, Dec* (3 times). (9 stitches)
Row 15: Dec, Sc2, Dec, Sc3. (7 stitches)
Row 16: *Sc1, Dec* (2 times), Sc1. (5 stitches)
Row 17: Sc1, Dec, Dec. (3 stitches)
To close the surface, cut the yarn leaving a generous tail, thread a tapestry needle with the tail, and weave through the stitches in the last row. Pull to tighten and tie off.
Row measurements were taken at the following coordinates: [(1, 1.51000000000000), (1.17000000000000, 1.42500000000000), (1.33000000000000, 1.34500000000000), (1.50000000000000, 1.26000000000000), (1.66000000000000, 1.18000000000000), (1.83000000000000, 1.09500000000000), (2.00000000000000, 1.01000000000000), (2.16000000000000, 0.929999999999999), (2.33000000000000, 0.844999999999999), (2.49000000000000, 0.764999999999999), (2.66000000000000, 0.679999999999999), (2.83000000000000, 0.594999999999999), (2.99000000000000, 0.514999999999999), (3.16000000000000, 0.430000000000001), (3.32999999999999, 0.345000000000003), (3.48999999999999, 0.265000000000004), (3.65999999999999, 0.180000000000006), (3.81999999999998, 0.100000000000008)]
Row 0: Chain 53. Join work and Sc53. Place marker for beginning of round; move marker up as each round is completed.
Row 1: Sc8, Dec, *Sc15, Dec* (2 times), Sc9. (50 stitches)
Row 2: Dec, *Sc14, Dec* (2 times), Sc16. (47 stitches)
Row 3: Sc19, Dec, Sc21, Dec, Sc3. (45 stitches)
Row 4: Dec, *Sc13, Dec* (2 times), Sc13. (42 stitches)
Row 5: Sc10, Dec, Sc19, Dec, Sc9. (40 stitches)
Row 6: Dec, Sc18, Dec, Sc18. (38 stitches)
Row 7: Sc9, Dec, Sc17, Dec, Sc8. (36 stitches)
Row 8: Dec, Sc16, Dec, Sc16. (34 stitches)
Row 9: Sc8, Dec, Sc15, Dec, Sc7. (32 stitches)
Row 10: Dec, Sc30. (31 stitches)
Row 11: Sc31. (31 stitches)
Row 12: Sc15, Dec, Sc14. (30 stitches)
Row 13: Inc, Sc29. (31 stitches)
Row 14: Sc31. (31 stitches)
Row 15: Sc16, Inc, Sc14. (32 stitches)
Row 16: Sc9, Inc, Sc15, Inc, Sc6. (34 stitches)
Row 17: Sc1, Inc, Sc16, Inc, Sc15. (36 stitches)
Row 18: Sc10, Inc, Sc17, Inc, Sc7. (38 stitches)
Row 19: Sc1, Inc, Sc18, Inc, Sc17. (40 stitches)
Row 20: Sc11, Inc, Sc19, Inc, Sc8. (42 stitches)
Row 21: Sc1, Inc, *Sc13, Inc* (2 times), Sc12. (45 stitches)
Row 22: Sc5, Inc, Sc21, Inc, Sc17. (47 stitches)
Row 23: Sc9, Inc, *Sc14, Inc* (2 times), Sc7. (50 stitches)
Row 24: Sc2, Inc, *Sc15, Inc* (2 times), Sc15. (53 stitches)
Tie off.
Row measurements were taken at the following coordinates: [(0, 1.95959179422654), (0.150000000000000, 1.86290096355120), (0.310000000000000, 1.76292484241388), (0.470000000000000, 1.66678612905195), (0.620000000000000, 1.58076437206815), (0.780000000000000, 1.49418071196224), (0.950000000000001, 1.40911319630468), (1.12000000000000, 1.33252242007405), (1.29000000000000, 1.26594786622515), (1.46000000000000, 1.21104252609064), (1.64000000000000, 1.16745192620510), (1.82000000000000, 1.14049813678059), (2.00000000000000, 1.13137084989848), (2.18000000000000, 1.14049813678059), (2.36000000000000, 1.16745192620510), (2.54000000000000, 1.21104252609064), (2.71000000000000, 1.26594786622515), (2.88000000000000, 1.33252242007405), (3.05000000000000, 1.40911319630468), (3.22000000000000, 1.49418071196225), (3.38000000000000, 1.58076437206815), (3.53000000000000, 1.66678612905196), (3.69000000000000, 1.76292484241388), (3.85000000000000, 1.86290096355120), (4.00000000000000, 1.95959179422654)]
Row 0: Chain 4. Join work and Sc4. Place marker for beginning of round; move marker up as each round is completed.
Row 1: *Inc* (4 times). (8 stitches)
Row 2: *Inc* (5 times), Sc3. (13 stitches)
Row 3: Sc3, Inc, *Sc2, Inc* (3 times). (17 stitches)
Row 4: Sc1, Inc, *Sc4, Inc* (2 times), Sc5. (20 stitches)
Row 5: Inc, *Sc4, Inc* (3 times), Sc4. (24 stitches)
Row 6: Sc1, Inc, *Sc7, Inc* (2 times), Sc6. (27 stitches)
Row 7: Sc6, Inc, *Sc5, Inc* (3 times), Sc2. (31 stitches)
Row 8: Sc3, Inc, *Sc6, Inc* (3 times), Sc6. (35 stitches)
Row 9: Sc2, Inc, *Sc10, Inc* (2 times), Sc10. (38 stitches)
Row 10: Sc10, Inc, *Sc8, Inc* (3 times). (42 stitches)
Row 11: Sc1, Inc, *Sc13, Inc* (2 times), Sc12. (45 stitches)
Row 12: Sc7, Inc, *Sc10, Inc* (3 times), Sc4. (49 stitches)
Row 13: Sc2, Inc, *Sc11, Inc* (3 times), Sc10. (53 stitches)
Tie off.
Row measurements were taken at the following coordinates: [(0.430000000000000, 0.157797338380595), (0.510000000000000, 0.316385840391127), (0.620000000000000, 0.473708771293080), (0.740000000000000, 0.622575296650935), (0.860000000000000, 0.761314652426971), (0.980000000000000, 0.894650769853802), (1.10000000000000, 1.02469507659596), (1.23000000000000, 1.16314229568011), (1.36000000000000, 1.29984614474175), (1.49000000000000, 1.43530484566868), (1.61000000000000, 1.55951915666336), (1.74000000000000, 1.69339894885996), (1.87000000000000, 1.82671836909799), (2.00000000000000, 1.95959179422654)]
Row 0: Chain 5. Join work and Sc5. Place marker for beginning of round; move marker up as each round is completed.
Row 1: *Inc* (5 times). (10 stitches)
Row 2: Inc, *Sc1, Inc* (3 times), Sc3. (14 stitches)
Row 3: Sc4, Inc, *Sc3, Inc* (2 times), Sc1. (17 stitches)
Row 4: Sc2, Inc, *Sc4, Inc* (2 times), Sc4. (20 stitches)
Row 5: Sc6, Inc, Sc9, Inc, Sc3. (22 stitches)
Row 6: Sc1, Inc, Sc10, Inc, Sc9. (24 stitches)
Row 7: Sc7, Inc, Sc11, Inc, Sc4. (26 stitches)
Row 8: Sc1, Inc, Sc24. (27 stitches)
Row 9: Sc15, Inc, Sc11. (28 stitches)
Row 10: Sc28. (28 stitches)
Row 11: Sc2, Inc, Sc25. (29 stitches)
Row 12: Sc29. (29 stitches)
Row 13: Sc29. (29 stitches)
Row 14: Sc16, Dec, Sc11. (28 stitches)
Row 15: Sc28. (28 stitches)
Row 16: Sc2, Dec, Sc24. (27 stitches)
Row 17: Sc15, Dec, Sc10. (26 stitches)
Row 18: Sc8, Dec, Sc11, Dec, Sc3. (24 stitches)
Row 19: Sc2, Dec, Sc10, Dec, Sc8. (22 stitches)
Row 20: Sc7, Dec, Sc9, Dec, Sc2. (20 stitches)
Row 21: Sc3, Dec, *Sc4, Dec* (2 times), Sc3. (17 stitches)
Row 22: Dec, *Sc3, Dec* (2 times), Sc5. (14 stitches)
Row 23: Sc2, Dec, *Sc1, Dec* (3 times), Sc1. (10 stitches)
Row 24: *Dec* (5 times). (5 stitches)
Tie off.
Row measurements were taken at the following coordinates: [(-1.99000000000000, 0.180125081777190), (-1.92000000000000, 0.360250160000000), (-1.80000000000000, 0.516140054354067), (-1.66000000000000, 0.638013550695374), (-1.49000000000000, 0.747314624650906), (-1.32000000000000, 0.831515758839718), (-1.14000000000000, 0.901894852065859), (-0.959999999999999, 0.957518647978452), (-0.769999999999999, 1.00316673261098), (-0.579999999999999, 1.03727680539709), (-0.389999999999999, 1.06105340224586), (-0.189999999999999, 1.07572743246783), (1.55431223447522e-15, 1.08025016000000), (0.190000000000002, 1.07572743246783), (0.390000000000002, 1.06105340224586), (0.580000000000002, 1.03727680539709), (0.770000000000002, 1.00316673261098), (0.960000000000002, 0.957518647978452), (1.14000000000000, 0.901894852065858), (1.32000000000000, 0.831515758839717), (1.49000000000000, 0.747314624650905), (1.66000000000000, 0.638013550695372), (1.80000000000000, 0.516140054354064), (1.92000000000000, 0.360250159999995), (1.99000000000000, 0.180125081777175)]