iCAL Modern Calculus
with R and Python


Version 1.0 developed from May 2021 for Cal III by Dr. Samuel Shen, Distinguished Professor
San Diego State University, California, USA
https://shen.sdsu.edu
Email:


Chapter 10:Stokes-Cartan Theorem

setwd('/Users/sshen/CalculusR')

Example of computing the area of an ellipse by a planimeter

n=1000
a=4
b=2
t=seq(0, 2*pi, length = n+1)
x=a*cos(t)
y=b*sin(t)
s=rep(0,n)
for (i in 1:n) {
  s[i] = (1/2)*(-y[i]*(x[i+1]-x[i]) + x[i]*(y[i+1]-y[i]))
}
A=sum(s)
A
## [1] 25.13258

A simplified version for the area of an ellipse by a planimeter

n=1000
a=4
b=2
t=seq(0, 2*pi, length = n+1)
x=a*cos(t)
x
##    [1]  4.000000e+00  3.999921e+00  3.999684e+00  3.999289e+00  3.998737e+00
##    [6]  3.998026e+00  3.997158e+00  3.996132e+00  3.994948e+00  3.993606e+00
##   [11]  3.992107e+00  3.990450e+00  3.988636e+00  3.986664e+00  3.984534e+00
##   [16]  3.982248e+00  3.979804e+00  3.977203e+00  3.974445e+00  3.971530e+00
##   [21]  3.968459e+00  3.965231e+00  3.961846e+00  3.958304e+00  3.954607e+00
##   [26]  3.950753e+00  3.946744e+00  3.942578e+00  3.938257e+00  3.933781e+00
##   [31]  3.929149e+00  3.924362e+00  3.919420e+00  3.914324e+00  3.909072e+00
##   [36]  3.903667e+00  3.898107e+00  3.892394e+00  3.886527e+00  3.880506e+00
##   [41]  3.874333e+00  3.868006e+00  3.861527e+00  3.854895e+00  3.848111e+00
##   [46]  3.841175e+00  3.834087e+00  3.826848e+00  3.819458e+00  3.811917e+00
##   [51]  3.804226e+00  3.796385e+00  3.788393e+00  3.780252e+00  3.771962e+00
##   [56]  3.763523e+00  3.754935e+00  3.746200e+00  3.737316e+00  3.728284e+00
##   [61]  3.719106e+00  3.709781e+00  3.700309e+00  3.690691e+00  3.680927e+00
##   [66]  3.671019e+00  3.660965e+00  3.650766e+00  3.640424e+00  3.629938e+00
##   [71]  3.619308e+00  3.608536e+00  3.597621e+00  3.586564e+00  3.575366e+00
##   [76]  3.564026e+00  3.552546e+00  3.540925e+00  3.529165e+00  3.517265e+00
##   [81]  3.505227e+00  3.493050e+00  3.480735e+00  3.468283e+00  3.455694e+00
##   [86]  3.442968e+00  3.430107e+00  3.417110e+00  3.403978e+00  3.390712e+00
##   [91]  3.377312e+00  3.363778e+00  3.350112e+00  3.336314e+00  3.322384e+00
##   [96]  3.308322e+00  3.294130e+00  3.279808e+00  3.265357e+00  3.250777e+00
##  [101]  3.236068e+00  3.221232e+00  3.206268e+00  3.191178e+00  3.175962e+00
##  [106]  3.160620e+00  3.145154e+00  3.129563e+00  3.113849e+00  3.098012e+00
##  [111]  3.082053e+00  3.065972e+00  3.049770e+00  3.033448e+00  3.017006e+00
##  [116]  3.000444e+00  2.983765e+00  2.966967e+00  2.950052e+00  2.933021e+00
##  [121]  2.915875e+00  2.898613e+00  2.881236e+00  2.863746e+00  2.846143e+00
##  [126]  2.828427e+00  2.810600e+00  2.792662e+00  2.774613e+00  2.756455e+00
##  [131]  2.738188e+00  2.719814e+00  2.701331e+00  2.682742e+00  2.664047e+00
##  [136]  2.645247e+00  2.626343e+00  2.607335e+00  2.588224e+00  2.569011e+00
##  [141]  2.549696e+00  2.530281e+00  2.510765e+00  2.491151e+00  2.471438e+00
##  [146]  2.451628e+00  2.431721e+00  2.411718e+00  2.391620e+00  2.371427e+00
##  [151]  2.351141e+00  2.330762e+00  2.310291e+00  2.289729e+00  2.269076e+00
##  [156]  2.248334e+00  2.227502e+00  2.206583e+00  2.185577e+00  2.164485e+00
##  [161]  2.143307e+00  2.122045e+00  2.100699e+00  2.079269e+00  2.057758e+00
##  [166]  2.036166e+00  2.014493e+00  1.992740e+00  1.970909e+00  1.949001e+00
##  [171]  1.927015e+00  1.904953e+00  1.882816e+00  1.860604e+00  1.838319e+00
##  [176]  1.815962e+00  1.793533e+00  1.771033e+00  1.748463e+00  1.725824e+00
##  [181]  1.703117e+00  1.680343e+00  1.657502e+00  1.634596e+00  1.611626e+00
##  [186]  1.588592e+00  1.565495e+00  1.542336e+00  1.519116e+00  1.495837e+00
##  [191]  1.472498e+00  1.449101e+00  1.425648e+00  1.402137e+00  1.378572e+00
##  [196]  1.354952e+00  1.331278e+00  1.307552e+00  1.283774e+00  1.259946e+00
##  [201]  1.236068e+00  1.212141e+00  1.188166e+00  1.164145e+00  1.140077e+00
##  [206]  1.115964e+00  1.091808e+00  1.067608e+00  1.043366e+00  1.019083e+00
##  [211]  9.947595e-01  9.703969e-01  9.459960e-01  9.215577e-01  8.970830e-01
##  [216]  8.725730e-01  8.480284e-01  8.234504e-01  7.988399e-01  7.741979e-01
##  [221]  7.495253e-01  7.248231e-01  7.000922e-01  6.753338e-01  6.505487e-01
##  [226]  6.257379e-01  6.009024e-01  5.760431e-01  5.511612e-01  5.262574e-01
##  [231]  5.013329e-01  4.763886e-01  4.514255e-01  4.264446e-01  4.014469e-01
##  [236]  3.764333e-01  3.514048e-01  3.263624e-01  3.013072e-01  2.762401e-01
##  [241]  2.511621e-01  2.260741e-01  2.009773e-01  1.758725e-01  1.507607e-01
##  [246]  1.256430e-01  1.005204e-01  7.539376e-02  5.026416e-02  2.513258e-02
##  [251]  2.449294e-16 -2.513258e-02 -5.026416e-02 -7.539376e-02 -1.005204e-01
##  [256] -1.256430e-01 -1.507607e-01 -1.758725e-01 -2.009773e-01 -2.260741e-01
##  [261] -2.511621e-01 -2.762401e-01 -3.013072e-01 -3.263624e-01 -3.514048e-01
##  [266] -3.764333e-01 -4.014469e-01 -4.264446e-01 -4.514255e-01 -4.763886e-01
##  [271] -5.013329e-01 -5.262574e-01 -5.511612e-01 -5.760431e-01 -6.009024e-01
##  [276] -6.257379e-01 -6.505487e-01 -6.753338e-01 -7.000922e-01 -7.248231e-01
##  [281] -7.495253e-01 -7.741979e-01 -7.988399e-01 -8.234504e-01 -8.480284e-01
##  [286] -8.725730e-01 -8.970830e-01 -9.215577e-01 -9.459960e-01 -9.703969e-01
##  [291] -9.947595e-01 -1.019083e+00 -1.043366e+00 -1.067608e+00 -1.091808e+00
##  [296] -1.115964e+00 -1.140077e+00 -1.164145e+00 -1.188166e+00 -1.212141e+00
##  [301] -1.236068e+00 -1.259946e+00 -1.283774e+00 -1.307552e+00 -1.331278e+00
##  [306] -1.354952e+00 -1.378572e+00 -1.402137e+00 -1.425648e+00 -1.449101e+00
##  [311] -1.472498e+00 -1.495837e+00 -1.519116e+00 -1.542336e+00 -1.565495e+00
##  [316] -1.588592e+00 -1.611626e+00 -1.634596e+00 -1.657502e+00 -1.680343e+00
##  [321] -1.703117e+00 -1.725824e+00 -1.748463e+00 -1.771033e+00 -1.793533e+00
##  [326] -1.815962e+00 -1.838319e+00 -1.860604e+00 -1.882816e+00 -1.904953e+00
##  [331] -1.927015e+00 -1.949001e+00 -1.970909e+00 -1.992740e+00 -2.014493e+00
##  [336] -2.036166e+00 -2.057758e+00 -2.079269e+00 -2.100699e+00 -2.122045e+00
##  [341] -2.143307e+00 -2.164485e+00 -2.185577e+00 -2.206583e+00 -2.227502e+00
##  [346] -2.248334e+00 -2.269076e+00 -2.289729e+00 -2.310291e+00 -2.330762e+00
##  [351] -2.351141e+00 -2.371427e+00 -2.391620e+00 -2.411718e+00 -2.431721e+00
##  [356] -2.451628e+00 -2.471438e+00 -2.491151e+00 -2.510765e+00 -2.530281e+00
##  [361] -2.549696e+00 -2.569011e+00 -2.588224e+00 -2.607335e+00 -2.626343e+00
##  [366] -2.645247e+00 -2.664047e+00 -2.682742e+00 -2.701331e+00 -2.719814e+00
##  [371] -2.738188e+00 -2.756455e+00 -2.774613e+00 -2.792662e+00 -2.810600e+00
##  [376] -2.828427e+00 -2.846143e+00 -2.863746e+00 -2.881236e+00 -2.898613e+00
##  [381] -2.915875e+00 -2.933021e+00 -2.950052e+00 -2.966967e+00 -2.983765e+00
##  [386] -3.000444e+00 -3.017006e+00 -3.033448e+00 -3.049770e+00 -3.065972e+00
##  [391] -3.082053e+00 -3.098012e+00 -3.113849e+00 -3.129563e+00 -3.145154e+00
##  [396] -3.160620e+00 -3.175962e+00 -3.191178e+00 -3.206268e+00 -3.221232e+00
##  [401] -3.236068e+00 -3.250777e+00 -3.265357e+00 -3.279808e+00 -3.294130e+00
##  [406] -3.308322e+00 -3.322384e+00 -3.336314e+00 -3.350112e+00 -3.363778e+00
##  [411] -3.377312e+00 -3.390712e+00 -3.403978e+00 -3.417110e+00 -3.430107e+00
##  [416] -3.442968e+00 -3.455694e+00 -3.468283e+00 -3.480735e+00 -3.493050e+00
##  [421] -3.505227e+00 -3.517265e+00 -3.529165e+00 -3.540925e+00 -3.552546e+00
##  [426] -3.564026e+00 -3.575366e+00 -3.586564e+00 -3.597621e+00 -3.608536e+00
##  [431] -3.619308e+00 -3.629938e+00 -3.640424e+00 -3.650766e+00 -3.660965e+00
##  [436] -3.671019e+00 -3.680927e+00 -3.690691e+00 -3.700309e+00 -3.709781e+00
##  [441] -3.719106e+00 -3.728284e+00 -3.737316e+00 -3.746200e+00 -3.754935e+00
##  [446] -3.763523e+00 -3.771962e+00 -3.780252e+00 -3.788393e+00 -3.796385e+00
##  [451] -3.804226e+00 -3.811917e+00 -3.819458e+00 -3.826848e+00 -3.834087e+00
##  [456] -3.841175e+00 -3.848111e+00 -3.854895e+00 -3.861527e+00 -3.868006e+00
##  [461] -3.874333e+00 -3.880506e+00 -3.886527e+00 -3.892394e+00 -3.898107e+00
##  [466] -3.903667e+00 -3.909072e+00 -3.914324e+00 -3.919420e+00 -3.924362e+00
##  [471] -3.929149e+00 -3.933781e+00 -3.938257e+00 -3.942578e+00 -3.946744e+00
##  [476] -3.950753e+00 -3.954607e+00 -3.958304e+00 -3.961846e+00 -3.965231e+00
##  [481] -3.968459e+00 -3.971530e+00 -3.974445e+00 -3.977203e+00 -3.979804e+00
##  [486] -3.982248e+00 -3.984534e+00 -3.986664e+00 -3.988636e+00 -3.990450e+00
##  [491] -3.992107e+00 -3.993606e+00 -3.994948e+00 -3.996132e+00 -3.997158e+00
##  [496] -3.998026e+00 -3.998737e+00 -3.999289e+00 -3.999684e+00 -3.999921e+00
##  [501] -4.000000e+00 -3.999921e+00 -3.999684e+00 -3.999289e+00 -3.998737e+00
##  [506] -3.998026e+00 -3.997158e+00 -3.996132e+00 -3.994948e+00 -3.993606e+00
##  [511] -3.992107e+00 -3.990450e+00 -3.988636e+00 -3.986664e+00 -3.984534e+00
##  [516] -3.982248e+00 -3.979804e+00 -3.977203e+00 -3.974445e+00 -3.971530e+00
##  [521] -3.968459e+00 -3.965231e+00 -3.961846e+00 -3.958304e+00 -3.954607e+00
##  [526] -3.950753e+00 -3.946744e+00 -3.942578e+00 -3.938257e+00 -3.933781e+00
##  [531] -3.929149e+00 -3.924362e+00 -3.919420e+00 -3.914324e+00 -3.909072e+00
##  [536] -3.903667e+00 -3.898107e+00 -3.892394e+00 -3.886527e+00 -3.880506e+00
##  [541] -3.874333e+00 -3.868006e+00 -3.861527e+00 -3.854895e+00 -3.848111e+00
##  [546] -3.841175e+00 -3.834087e+00 -3.826848e+00 -3.819458e+00 -3.811917e+00
##  [551] -3.804226e+00 -3.796385e+00 -3.788393e+00 -3.780252e+00 -3.771962e+00
##  [556] -3.763523e+00 -3.754935e+00 -3.746200e+00 -3.737316e+00 -3.728284e+00
##  [561] -3.719106e+00 -3.709781e+00 -3.700309e+00 -3.690691e+00 -3.680927e+00
##  [566] -3.671019e+00 -3.660965e+00 -3.650766e+00 -3.640424e+00 -3.629938e+00
##  [571] -3.619308e+00 -3.608536e+00 -3.597621e+00 -3.586564e+00 -3.575366e+00
##  [576] -3.564026e+00 -3.552546e+00 -3.540925e+00 -3.529165e+00 -3.517265e+00
##  [581] -3.505227e+00 -3.493050e+00 -3.480735e+00 -3.468283e+00 -3.455694e+00
##  [586] -3.442968e+00 -3.430107e+00 -3.417110e+00 -3.403978e+00 -3.390712e+00
##  [591] -3.377312e+00 -3.363778e+00 -3.350112e+00 -3.336314e+00 -3.322384e+00
##  [596] -3.308322e+00 -3.294130e+00 -3.279808e+00 -3.265357e+00 -3.250777e+00
##  [601] -3.236068e+00 -3.221232e+00 -3.206268e+00 -3.191178e+00 -3.175962e+00
##  [606] -3.160620e+00 -3.145154e+00 -3.129563e+00 -3.113849e+00 -3.098012e+00
##  [611] -3.082053e+00 -3.065972e+00 -3.049770e+00 -3.033448e+00 -3.017006e+00
##  [616] -3.000444e+00 -2.983765e+00 -2.966967e+00 -2.950052e+00 -2.933021e+00
##  [621] -2.915875e+00 -2.898613e+00 -2.881236e+00 -2.863746e+00 -2.846143e+00
##  [626] -2.828427e+00 -2.810600e+00 -2.792662e+00 -2.774613e+00 -2.756455e+00
##  [631] -2.738188e+00 -2.719814e+00 -2.701331e+00 -2.682742e+00 -2.664047e+00
##  [636] -2.645247e+00 -2.626343e+00 -2.607335e+00 -2.588224e+00 -2.569011e+00
##  [641] -2.549696e+00 -2.530281e+00 -2.510765e+00 -2.491151e+00 -2.471438e+00
##  [646] -2.451628e+00 -2.431721e+00 -2.411718e+00 -2.391620e+00 -2.371427e+00
##  [651] -2.351141e+00 -2.330762e+00 -2.310291e+00 -2.289729e+00 -2.269076e+00
##  [656] -2.248334e+00 -2.227502e+00 -2.206583e+00 -2.185577e+00 -2.164485e+00
##  [661] -2.143307e+00 -2.122045e+00 -2.100699e+00 -2.079269e+00 -2.057758e+00
##  [666] -2.036166e+00 -2.014493e+00 -1.992740e+00 -1.970909e+00 -1.949001e+00
##  [671] -1.927015e+00 -1.904953e+00 -1.882816e+00 -1.860604e+00 -1.838319e+00
##  [676] -1.815962e+00 -1.793533e+00 -1.771033e+00 -1.748463e+00 -1.725824e+00
##  [681] -1.703117e+00 -1.680343e+00 -1.657502e+00 -1.634596e+00 -1.611626e+00
##  [686] -1.588592e+00 -1.565495e+00 -1.542336e+00 -1.519116e+00 -1.495837e+00
##  [691] -1.472498e+00 -1.449101e+00 -1.425648e+00 -1.402137e+00 -1.378572e+00
##  [696] -1.354952e+00 -1.331278e+00 -1.307552e+00 -1.283774e+00 -1.259946e+00
##  [701] -1.236068e+00 -1.212141e+00 -1.188166e+00 -1.164145e+00 -1.140077e+00
##  [706] -1.115964e+00 -1.091808e+00 -1.067608e+00 -1.043366e+00 -1.019083e+00
##  [711] -9.947595e-01 -9.703969e-01 -9.459960e-01 -9.215577e-01 -8.970830e-01
##  [716] -8.725730e-01 -8.480284e-01 -8.234504e-01 -7.988399e-01 -7.741979e-01
##  [721] -7.495253e-01 -7.248231e-01 -7.000922e-01 -6.753338e-01 -6.505487e-01
##  [726] -6.257379e-01 -6.009024e-01 -5.760431e-01 -5.511612e-01 -5.262574e-01
##  [731] -5.013329e-01 -4.763886e-01 -4.514255e-01 -4.264446e-01 -4.014469e-01
##  [736] -3.764333e-01 -3.514048e-01 -3.263624e-01 -3.013072e-01 -2.762401e-01
##  [741] -2.511621e-01 -2.260741e-01 -2.009773e-01 -1.758725e-01 -1.507607e-01
##  [746] -1.256430e-01 -1.005204e-01 -7.539376e-02 -5.026416e-02 -2.513258e-02
##  [751] -7.347881e-16  2.513258e-02  5.026416e-02  7.539376e-02  1.005204e-01
##  [756]  1.256430e-01  1.507607e-01  1.758725e-01  2.009773e-01  2.260741e-01
##  [761]  2.511621e-01  2.762401e-01  3.013072e-01  3.263624e-01  3.514048e-01
##  [766]  3.764333e-01  4.014469e-01  4.264446e-01  4.514255e-01  4.763886e-01
##  [771]  5.013329e-01  5.262574e-01  5.511612e-01  5.760431e-01  6.009024e-01
##  [776]  6.257379e-01  6.505487e-01  6.753338e-01  7.000922e-01  7.248231e-01
##  [781]  7.495253e-01  7.741979e-01  7.988399e-01  8.234504e-01  8.480284e-01
##  [786]  8.725730e-01  8.970830e-01  9.215577e-01  9.459960e-01  9.703969e-01
##  [791]  9.947595e-01  1.019083e+00  1.043366e+00  1.067608e+00  1.091808e+00
##  [796]  1.115964e+00  1.140077e+00  1.164145e+00  1.188166e+00  1.212141e+00
##  [801]  1.236068e+00  1.259946e+00  1.283774e+00  1.307552e+00  1.331278e+00
##  [806]  1.354952e+00  1.378572e+00  1.402137e+00  1.425648e+00  1.449101e+00
##  [811]  1.472498e+00  1.495837e+00  1.519116e+00  1.542336e+00  1.565495e+00
##  [816]  1.588592e+00  1.611626e+00  1.634596e+00  1.657502e+00  1.680343e+00
##  [821]  1.703117e+00  1.725824e+00  1.748463e+00  1.771033e+00  1.793533e+00
##  [826]  1.815962e+00  1.838319e+00  1.860604e+00  1.882816e+00  1.904953e+00
##  [831]  1.927015e+00  1.949001e+00  1.970909e+00  1.992740e+00  2.014493e+00
##  [836]  2.036166e+00  2.057758e+00  2.079269e+00  2.100699e+00  2.122045e+00
##  [841]  2.143307e+00  2.164485e+00  2.185577e+00  2.206583e+00  2.227502e+00
##  [846]  2.248334e+00  2.269076e+00  2.289729e+00  2.310291e+00  2.330762e+00
##  [851]  2.351141e+00  2.371427e+00  2.391620e+00  2.411718e+00  2.431721e+00
##  [856]  2.451628e+00  2.471438e+00  2.491151e+00  2.510765e+00  2.530281e+00
##  [861]  2.549696e+00  2.569011e+00  2.588224e+00  2.607335e+00  2.626343e+00
##  [866]  2.645247e+00  2.664047e+00  2.682742e+00  2.701331e+00  2.719814e+00
##  [871]  2.738188e+00  2.756455e+00  2.774613e+00  2.792662e+00  2.810600e+00
##  [876]  2.828427e+00  2.846143e+00  2.863746e+00  2.881236e+00  2.898613e+00
##  [881]  2.915875e+00  2.933021e+00  2.950052e+00  2.966967e+00  2.983765e+00
##  [886]  3.000444e+00  3.017006e+00  3.033448e+00  3.049770e+00  3.065972e+00
##  [891]  3.082053e+00  3.098012e+00  3.113849e+00  3.129563e+00  3.145154e+00
##  [896]  3.160620e+00  3.175962e+00  3.191178e+00  3.206268e+00  3.221232e+00
##  [901]  3.236068e+00  3.250777e+00  3.265357e+00  3.279808e+00  3.294130e+00
##  [906]  3.308322e+00  3.322384e+00  3.336314e+00  3.350112e+00  3.363778e+00
##  [911]  3.377312e+00  3.390712e+00  3.403978e+00  3.417110e+00  3.430107e+00
##  [916]  3.442968e+00  3.455694e+00  3.468283e+00  3.480735e+00  3.493050e+00
##  [921]  3.505227e+00  3.517265e+00  3.529165e+00  3.540925e+00  3.552546e+00
##  [926]  3.564026e+00  3.575366e+00  3.586564e+00  3.597621e+00  3.608536e+00
##  [931]  3.619308e+00  3.629938e+00  3.640424e+00  3.650766e+00  3.660965e+00
##  [936]  3.671019e+00  3.680927e+00  3.690691e+00  3.700309e+00  3.709781e+00
##  [941]  3.719106e+00  3.728284e+00  3.737316e+00  3.746200e+00  3.754935e+00
##  [946]  3.763523e+00  3.771962e+00  3.780252e+00  3.788393e+00  3.796385e+00
##  [951]  3.804226e+00  3.811917e+00  3.819458e+00  3.826848e+00  3.834087e+00
##  [956]  3.841175e+00  3.848111e+00  3.854895e+00  3.861527e+00  3.868006e+00
##  [961]  3.874333e+00  3.880506e+00  3.886527e+00  3.892394e+00  3.898107e+00
##  [966]  3.903667e+00  3.909072e+00  3.914324e+00  3.919420e+00  3.924362e+00
##  [971]  3.929149e+00  3.933781e+00  3.938257e+00  3.942578e+00  3.946744e+00
##  [976]  3.950753e+00  3.954607e+00  3.958304e+00  3.961846e+00  3.965231e+00
##  [981]  3.968459e+00  3.971530e+00  3.974445e+00  3.977203e+00  3.979804e+00
##  [986]  3.982248e+00  3.984534e+00  3.986664e+00  3.988636e+00  3.990450e+00
##  [991]  3.992107e+00  3.993606e+00  3.994948e+00  3.996132e+00  3.997158e+00
##  [996]  3.998026e+00  3.998737e+00  3.999289e+00  3.999684e+00  3.999921e+00
## [1001]  4.000000e+00
y=b*sin(t)
y
##    [1]  0.000000e+00  1.256629e-02  2.513208e-02  3.769688e-02  5.026019e-02
##    [6]  6.282152e-02  7.538037e-02  8.793624e-02  1.004886e-01  1.130371e-01
##   [11]  1.255810e-01  1.381201e-01  1.506536e-01  1.631812e-01  1.757024e-01
##   [16]  1.882166e-01  2.007234e-01  2.132223e-01  2.257128e-01  2.381943e-01
##   [21]  2.506665e-01  2.631287e-01  2.755806e-01  2.880216e-01  3.004512e-01
##   [26]  3.128689e-01  3.252743e-01  3.376669e-01  3.500461e-01  3.624115e-01
##   [31]  3.747626e-01  3.870989e-01  3.994200e-01  4.117252e-01  4.240142e-01
##   [36]  4.362865e-01  4.485415e-01  4.607789e-01  4.729980e-01  4.851985e-01
##   [41]  4.973798e-01  5.095415e-01  5.216830e-01  5.338040e-01  5.459039e-01
##   [46]  5.579822e-01  5.700385e-01  5.820723e-01  5.940832e-01  6.060705e-01
##   [51]  6.180340e-01  6.299730e-01  6.418872e-01  6.537761e-01  6.656391e-01
##   [56]  6.774758e-01  6.892858e-01  7.010686e-01  7.128238e-01  7.245507e-01
##   [61]  7.362491e-01  7.479184e-01  7.595582e-01  7.711680e-01  7.827473e-01
##   [66]  7.942958e-01  8.058129e-01  8.172981e-01  8.287512e-01  8.401715e-01
##   [71]  8.515586e-01  8.629121e-01  8.742315e-01  8.855165e-01  8.967664e-01
##   [76]  9.079810e-01  9.191597e-01  9.303022e-01  9.414079e-01  9.524764e-01
##   [81]  9.635073e-01  9.745003e-01  9.854547e-01  9.963702e-01  1.007246e+00
##   [86]  1.018083e+00  1.028879e+00  1.039635e+00  1.050349e+00  1.061022e+00
##   [91]  1.071654e+00  1.082243e+00  1.092789e+00  1.103292e+00  1.113751e+00
##   [96]  1.124167e+00  1.134538e+00  1.144864e+00  1.155145e+00  1.165381e+00
##  [101]  1.175571e+00  1.185714e+00  1.195810e+00  1.205859e+00  1.215861e+00
##  [106]  1.225814e+00  1.235719e+00  1.245576e+00  1.255383e+00  1.265140e+00
##  [111]  1.274848e+00  1.284505e+00  1.294112e+00  1.303667e+00  1.313172e+00
##  [116]  1.322624e+00  1.332024e+00  1.341371e+00  1.350666e+00  1.359907e+00
##  [121]  1.369094e+00  1.378228e+00  1.387307e+00  1.396331e+00  1.405300e+00
##  [126]  1.414214e+00  1.423071e+00  1.431873e+00  1.440618e+00  1.449306e+00
##  [131]  1.457937e+00  1.466511e+00  1.475026e+00  1.483484e+00  1.491882e+00
##  [136]  1.500222e+00  1.508503e+00  1.516724e+00  1.524885e+00  1.532986e+00
##  [141]  1.541026e+00  1.549006e+00  1.556925e+00  1.564782e+00  1.572577e+00
##  [146]  1.580310e+00  1.587981e+00  1.595589e+00  1.603134e+00  1.610616e+00
##  [151]  1.618034e+00  1.625388e+00  1.632679e+00  1.639904e+00  1.647065e+00
##  [156]  1.654161e+00  1.661192e+00  1.668157e+00  1.675056e+00  1.681889e+00
##  [161]  1.688656e+00  1.695356e+00  1.701989e+00  1.708555e+00  1.715053e+00
##  [166]  1.721484e+00  1.727847e+00  1.734141e+00  1.740368e+00  1.746525e+00
##  [171]  1.752613e+00  1.758633e+00  1.764582e+00  1.770463e+00  1.776273e+00
##  [176]  1.782013e+00  1.787683e+00  1.793282e+00  1.798811e+00  1.804268e+00
##  [181]  1.809654e+00  1.814969e+00  1.820212e+00  1.825383e+00  1.830482e+00
##  [186]  1.835509e+00  1.840464e+00  1.845345e+00  1.850154e+00  1.854890e+00
##  [191]  1.859553e+00  1.864142e+00  1.868658e+00  1.873100e+00  1.877468e+00
##  [196]  1.881762e+00  1.885981e+00  1.890126e+00  1.894197e+00  1.898192e+00
##  [201]  1.902113e+00  1.905959e+00  1.909729e+00  1.913424e+00  1.917044e+00
##  [206]  1.920587e+00  1.924055e+00  1.927447e+00  1.930763e+00  1.934003e+00
##  [211]  1.937166e+00  1.940253e+00  1.943263e+00  1.946197e+00  1.949054e+00
##  [216]  1.951834e+00  1.954536e+00  1.957162e+00  1.959710e+00  1.962181e+00
##  [221]  1.964575e+00  1.966890e+00  1.969129e+00  1.971289e+00  1.973372e+00
##  [226]  1.975377e+00  1.977303e+00  1.979152e+00  1.980923e+00  1.982615e+00
##  [231]  1.984229e+00  1.985765e+00  1.987223e+00  1.988602e+00  1.989902e+00
##  [236]  1.991124e+00  1.992267e+00  1.993332e+00  1.994318e+00  1.995225e+00
##  [241]  1.996053e+00  1.996803e+00  1.997474e+00  1.998066e+00  1.998579e+00
##  [246]  1.999013e+00  1.999368e+00  1.999645e+00  1.999842e+00  1.999961e+00
##  [251]  2.000000e+00  1.999961e+00  1.999842e+00  1.999645e+00  1.999368e+00
##  [256]  1.999013e+00  1.998579e+00  1.998066e+00  1.997474e+00  1.996803e+00
##  [261]  1.996053e+00  1.995225e+00  1.994318e+00  1.993332e+00  1.992267e+00
##  [266]  1.991124e+00  1.989902e+00  1.988602e+00  1.987223e+00  1.985765e+00
##  [271]  1.984229e+00  1.982615e+00  1.980923e+00  1.979152e+00  1.977303e+00
##  [276]  1.975377e+00  1.973372e+00  1.971289e+00  1.969129e+00  1.966890e+00
##  [281]  1.964575e+00  1.962181e+00  1.959710e+00  1.957162e+00  1.954536e+00
##  [286]  1.951834e+00  1.949054e+00  1.946197e+00  1.943263e+00  1.940253e+00
##  [291]  1.937166e+00  1.934003e+00  1.930763e+00  1.927447e+00  1.924055e+00
##  [296]  1.920587e+00  1.917044e+00  1.913424e+00  1.909729e+00  1.905959e+00
##  [301]  1.902113e+00  1.898192e+00  1.894197e+00  1.890126e+00  1.885981e+00
##  [306]  1.881762e+00  1.877468e+00  1.873100e+00  1.868658e+00  1.864142e+00
##  [311]  1.859553e+00  1.854890e+00  1.850154e+00  1.845345e+00  1.840464e+00
##  [316]  1.835509e+00  1.830482e+00  1.825383e+00  1.820212e+00  1.814969e+00
##  [321]  1.809654e+00  1.804268e+00  1.798811e+00  1.793282e+00  1.787683e+00
##  [326]  1.782013e+00  1.776273e+00  1.770463e+00  1.764582e+00  1.758633e+00
##  [331]  1.752613e+00  1.746525e+00  1.740368e+00  1.734141e+00  1.727847e+00
##  [336]  1.721484e+00  1.715053e+00  1.708555e+00  1.701989e+00  1.695356e+00
##  [341]  1.688656e+00  1.681889e+00  1.675056e+00  1.668157e+00  1.661192e+00
##  [346]  1.654161e+00  1.647065e+00  1.639904e+00  1.632679e+00  1.625388e+00
##  [351]  1.618034e+00  1.610616e+00  1.603134e+00  1.595589e+00  1.587981e+00
##  [356]  1.580310e+00  1.572577e+00  1.564782e+00  1.556925e+00  1.549006e+00
##  [361]  1.541026e+00  1.532986e+00  1.524885e+00  1.516724e+00  1.508503e+00
##  [366]  1.500222e+00  1.491882e+00  1.483484e+00  1.475026e+00  1.466511e+00
##  [371]  1.457937e+00  1.449306e+00  1.440618e+00  1.431873e+00  1.423071e+00
##  [376]  1.414214e+00  1.405300e+00  1.396331e+00  1.387307e+00  1.378228e+00
##  [381]  1.369094e+00  1.359907e+00  1.350666e+00  1.341371e+00  1.332024e+00
##  [386]  1.322624e+00  1.313172e+00  1.303667e+00  1.294112e+00  1.284505e+00
##  [391]  1.274848e+00  1.265140e+00  1.255383e+00  1.245576e+00  1.235719e+00
##  [396]  1.225814e+00  1.215861e+00  1.205859e+00  1.195810e+00  1.185714e+00
##  [401]  1.175571e+00  1.165381e+00  1.155145e+00  1.144864e+00  1.134538e+00
##  [406]  1.124167e+00  1.113751e+00  1.103292e+00  1.092789e+00  1.082243e+00
##  [411]  1.071654e+00  1.061022e+00  1.050349e+00  1.039635e+00  1.028879e+00
##  [416]  1.018083e+00  1.007246e+00  9.963702e-01  9.854547e-01  9.745003e-01
##  [421]  9.635073e-01  9.524764e-01  9.414079e-01  9.303022e-01  9.191597e-01
##  [426]  9.079810e-01  8.967664e-01  8.855165e-01  8.742315e-01  8.629121e-01
##  [431]  8.515586e-01  8.401715e-01  8.287512e-01  8.172981e-01  8.058129e-01
##  [436]  7.942958e-01  7.827473e-01  7.711680e-01  7.595582e-01  7.479184e-01
##  [441]  7.362491e-01  7.245507e-01  7.128238e-01  7.010686e-01  6.892858e-01
##  [446]  6.774758e-01  6.656391e-01  6.537761e-01  6.418872e-01  6.299730e-01
##  [451]  6.180340e-01  6.060705e-01  5.940832e-01  5.820723e-01  5.700385e-01
##  [456]  5.579822e-01  5.459039e-01  5.338040e-01  5.216830e-01  5.095415e-01
##  [461]  4.973798e-01  4.851985e-01  4.729980e-01  4.607789e-01  4.485415e-01
##  [466]  4.362865e-01  4.240142e-01  4.117252e-01  3.994200e-01  3.870989e-01
##  [471]  3.747626e-01  3.624115e-01  3.500461e-01  3.376669e-01  3.252743e-01
##  [476]  3.128689e-01  3.004512e-01  2.880216e-01  2.755806e-01  2.631287e-01
##  [481]  2.506665e-01  2.381943e-01  2.257128e-01  2.132223e-01  2.007234e-01
##  [486]  1.882166e-01  1.757024e-01  1.631812e-01  1.506536e-01  1.381201e-01
##  [491]  1.255810e-01  1.130371e-01  1.004886e-01  8.793624e-02  7.538037e-02
##  [496]  6.282152e-02  5.026019e-02  3.769688e-02  2.513208e-02  1.256629e-02
##  [501]  2.449294e-16 -1.256629e-02 -2.513208e-02 -3.769688e-02 -5.026019e-02
##  [506] -6.282152e-02 -7.538037e-02 -8.793624e-02 -1.004886e-01 -1.130371e-01
##  [511] -1.255810e-01 -1.381201e-01 -1.506536e-01 -1.631812e-01 -1.757024e-01
##  [516] -1.882166e-01 -2.007234e-01 -2.132223e-01 -2.257128e-01 -2.381943e-01
##  [521] -2.506665e-01 -2.631287e-01 -2.755806e-01 -2.880216e-01 -3.004512e-01
##  [526] -3.128689e-01 -3.252743e-01 -3.376669e-01 -3.500461e-01 -3.624115e-01
##  [531] -3.747626e-01 -3.870989e-01 -3.994200e-01 -4.117252e-01 -4.240142e-01
##  [536] -4.362865e-01 -4.485415e-01 -4.607789e-01 -4.729980e-01 -4.851985e-01
##  [541] -4.973798e-01 -5.095415e-01 -5.216830e-01 -5.338040e-01 -5.459039e-01
##  [546] -5.579822e-01 -5.700385e-01 -5.820723e-01 -5.940832e-01 -6.060705e-01
##  [551] -6.180340e-01 -6.299730e-01 -6.418872e-01 -6.537761e-01 -6.656391e-01
##  [556] -6.774758e-01 -6.892858e-01 -7.010686e-01 -7.128238e-01 -7.245507e-01
##  [561] -7.362491e-01 -7.479184e-01 -7.595582e-01 -7.711680e-01 -7.827473e-01
##  [566] -7.942958e-01 -8.058129e-01 -8.172981e-01 -8.287512e-01 -8.401715e-01
##  [571] -8.515586e-01 -8.629121e-01 -8.742315e-01 -8.855165e-01 -8.967664e-01
##  [576] -9.079810e-01 -9.191597e-01 -9.303022e-01 -9.414079e-01 -9.524764e-01
##  [581] -9.635073e-01 -9.745003e-01 -9.854547e-01 -9.963702e-01 -1.007246e+00
##  [586] -1.018083e+00 -1.028879e+00 -1.039635e+00 -1.050349e+00 -1.061022e+00
##  [591] -1.071654e+00 -1.082243e+00 -1.092789e+00 -1.103292e+00 -1.113751e+00
##  [596] -1.124167e+00 -1.134538e+00 -1.144864e+00 -1.155145e+00 -1.165381e+00
##  [601] -1.175571e+00 -1.185714e+00 -1.195810e+00 -1.205859e+00 -1.215861e+00
##  [606] -1.225814e+00 -1.235719e+00 -1.245576e+00 -1.255383e+00 -1.265140e+00
##  [611] -1.274848e+00 -1.284505e+00 -1.294112e+00 -1.303667e+00 -1.313172e+00
##  [616] -1.322624e+00 -1.332024e+00 -1.341371e+00 -1.350666e+00 -1.359907e+00
##  [621] -1.369094e+00 -1.378228e+00 -1.387307e+00 -1.396331e+00 -1.405300e+00
##  [626] -1.414214e+00 -1.423071e+00 -1.431873e+00 -1.440618e+00 -1.449306e+00
##  [631] -1.457937e+00 -1.466511e+00 -1.475026e+00 -1.483484e+00 -1.491882e+00
##  [636] -1.500222e+00 -1.508503e+00 -1.516724e+00 -1.524885e+00 -1.532986e+00
##  [641] -1.541026e+00 -1.549006e+00 -1.556925e+00 -1.564782e+00 -1.572577e+00
##  [646] -1.580310e+00 -1.587981e+00 -1.595589e+00 -1.603134e+00 -1.610616e+00
##  [651] -1.618034e+00 -1.625388e+00 -1.632679e+00 -1.639904e+00 -1.647065e+00
##  [656] -1.654161e+00 -1.661192e+00 -1.668157e+00 -1.675056e+00 -1.681889e+00
##  [661] -1.688656e+00 -1.695356e+00 -1.701989e+00 -1.708555e+00 -1.715053e+00
##  [666] -1.721484e+00 -1.727847e+00 -1.734141e+00 -1.740368e+00 -1.746525e+00
##  [671] -1.752613e+00 -1.758633e+00 -1.764582e+00 -1.770463e+00 -1.776273e+00
##  [676] -1.782013e+00 -1.787683e+00 -1.793282e+00 -1.798811e+00 -1.804268e+00
##  [681] -1.809654e+00 -1.814969e+00 -1.820212e+00 -1.825383e+00 -1.830482e+00
##  [686] -1.835509e+00 -1.840464e+00 -1.845345e+00 -1.850154e+00 -1.854890e+00
##  [691] -1.859553e+00 -1.864142e+00 -1.868658e+00 -1.873100e+00 -1.877468e+00
##  [696] -1.881762e+00 -1.885981e+00 -1.890126e+00 -1.894197e+00 -1.898192e+00
##  [701] -1.902113e+00 -1.905959e+00 -1.909729e+00 -1.913424e+00 -1.917044e+00
##  [706] -1.920587e+00 -1.924055e+00 -1.927447e+00 -1.930763e+00 -1.934003e+00
##  [711] -1.937166e+00 -1.940253e+00 -1.943263e+00 -1.946197e+00 -1.949054e+00
##  [716] -1.951834e+00 -1.954536e+00 -1.957162e+00 -1.959710e+00 -1.962181e+00
##  [721] -1.964575e+00 -1.966890e+00 -1.969129e+00 -1.971289e+00 -1.973372e+00
##  [726] -1.975377e+00 -1.977303e+00 -1.979152e+00 -1.980923e+00 -1.982615e+00
##  [731] -1.984229e+00 -1.985765e+00 -1.987223e+00 -1.988602e+00 -1.989902e+00
##  [736] -1.991124e+00 -1.992267e+00 -1.993332e+00 -1.994318e+00 -1.995225e+00
##  [741] -1.996053e+00 -1.996803e+00 -1.997474e+00 -1.998066e+00 -1.998579e+00
##  [746] -1.999013e+00 -1.999368e+00 -1.999645e+00 -1.999842e+00 -1.999961e+00
##  [751] -2.000000e+00 -1.999961e+00 -1.999842e+00 -1.999645e+00 -1.999368e+00
##  [756] -1.999013e+00 -1.998579e+00 -1.998066e+00 -1.997474e+00 -1.996803e+00
##  [761] -1.996053e+00 -1.995225e+00 -1.994318e+00 -1.993332e+00 -1.992267e+00
##  [766] -1.991124e+00 -1.989902e+00 -1.988602e+00 -1.987223e+00 -1.985765e+00
##  [771] -1.984229e+00 -1.982615e+00 -1.980923e+00 -1.979152e+00 -1.977303e+00
##  [776] -1.975377e+00 -1.973372e+00 -1.971289e+00 -1.969129e+00 -1.966890e+00
##  [781] -1.964575e+00 -1.962181e+00 -1.959710e+00 -1.957162e+00 -1.954536e+00
##  [786] -1.951834e+00 -1.949054e+00 -1.946197e+00 -1.943263e+00 -1.940253e+00
##  [791] -1.937166e+00 -1.934003e+00 -1.930763e+00 -1.927447e+00 -1.924055e+00
##  [796] -1.920587e+00 -1.917044e+00 -1.913424e+00 -1.909729e+00 -1.905959e+00
##  [801] -1.902113e+00 -1.898192e+00 -1.894197e+00 -1.890126e+00 -1.885981e+00
##  [806] -1.881762e+00 -1.877468e+00 -1.873100e+00 -1.868658e+00 -1.864142e+00
##  [811] -1.859553e+00 -1.854890e+00 -1.850154e+00 -1.845345e+00 -1.840464e+00
##  [816] -1.835509e+00 -1.830482e+00 -1.825383e+00 -1.820212e+00 -1.814969e+00
##  [821] -1.809654e+00 -1.804268e+00 -1.798811e+00 -1.793282e+00 -1.787683e+00
##  [826] -1.782013e+00 -1.776273e+00 -1.770463e+00 -1.764582e+00 -1.758633e+00
##  [831] -1.752613e+00 -1.746525e+00 -1.740368e+00 -1.734141e+00 -1.727847e+00
##  [836] -1.721484e+00 -1.715053e+00 -1.708555e+00 -1.701989e+00 -1.695356e+00
##  [841] -1.688656e+00 -1.681889e+00 -1.675056e+00 -1.668157e+00 -1.661192e+00
##  [846] -1.654161e+00 -1.647065e+00 -1.639904e+00 -1.632679e+00 -1.625388e+00
##  [851] -1.618034e+00 -1.610616e+00 -1.603134e+00 -1.595589e+00 -1.587981e+00
##  [856] -1.580310e+00 -1.572577e+00 -1.564782e+00 -1.556925e+00 -1.549006e+00
##  [861] -1.541026e+00 -1.532986e+00 -1.524885e+00 -1.516724e+00 -1.508503e+00
##  [866] -1.500222e+00 -1.491882e+00 -1.483484e+00 -1.475026e+00 -1.466511e+00
##  [871] -1.457937e+00 -1.449306e+00 -1.440618e+00 -1.431873e+00 -1.423071e+00
##  [876] -1.414214e+00 -1.405300e+00 -1.396331e+00 -1.387307e+00 -1.378228e+00
##  [881] -1.369094e+00 -1.359907e+00 -1.350666e+00 -1.341371e+00 -1.332024e+00
##  [886] -1.322624e+00 -1.313172e+00 -1.303667e+00 -1.294112e+00 -1.284505e+00
##  [891] -1.274848e+00 -1.265140e+00 -1.255383e+00 -1.245576e+00 -1.235719e+00
##  [896] -1.225814e+00 -1.215861e+00 -1.205859e+00 -1.195810e+00 -1.185714e+00
##  [901] -1.175571e+00 -1.165381e+00 -1.155145e+00 -1.144864e+00 -1.134538e+00
##  [906] -1.124167e+00 -1.113751e+00 -1.103292e+00 -1.092789e+00 -1.082243e+00
##  [911] -1.071654e+00 -1.061022e+00 -1.050349e+00 -1.039635e+00 -1.028879e+00
##  [916] -1.018083e+00 -1.007246e+00 -9.963702e-01 -9.854547e-01 -9.745003e-01
##  [921] -9.635073e-01 -9.524764e-01 -9.414079e-01 -9.303022e-01 -9.191597e-01
##  [926] -9.079810e-01 -8.967664e-01 -8.855165e-01 -8.742315e-01 -8.629121e-01
##  [931] -8.515586e-01 -8.401715e-01 -8.287512e-01 -8.172981e-01 -8.058129e-01
##  [936] -7.942958e-01 -7.827473e-01 -7.711680e-01 -7.595582e-01 -7.479184e-01
##  [941] -7.362491e-01 -7.245507e-01 -7.128238e-01 -7.010686e-01 -6.892858e-01
##  [946] -6.774758e-01 -6.656391e-01 -6.537761e-01 -6.418872e-01 -6.299730e-01
##  [951] -6.180340e-01 -6.060705e-01 -5.940832e-01 -5.820723e-01 -5.700385e-01
##  [956] -5.579822e-01 -5.459039e-01 -5.338040e-01 -5.216830e-01 -5.095415e-01
##  [961] -4.973798e-01 -4.851985e-01 -4.729980e-01 -4.607789e-01 -4.485415e-01
##  [966] -4.362865e-01 -4.240142e-01 -4.117252e-01 -3.994200e-01 -3.870989e-01
##  [971] -3.747626e-01 -3.624115e-01 -3.500461e-01 -3.376669e-01 -3.252743e-01
##  [976] -3.128689e-01 -3.004512e-01 -2.880216e-01 -2.755806e-01 -2.631287e-01
##  [981] -2.506665e-01 -2.381943e-01 -2.257128e-01 -2.132223e-01 -2.007234e-01
##  [986] -1.882166e-01 -1.757024e-01 -1.631812e-01 -1.506536e-01 -1.381201e-01
##  [991] -1.255810e-01 -1.130371e-01 -1.004886e-01 -8.793624e-02 -7.538037e-02
##  [996] -6.282152e-02 -5.026019e-02 -3.769688e-02 -2.513208e-02 -1.256629e-02
## [1001] -4.898587e-16
x[1]
## [1] 4
y[1]
## [1] 0
c(x[1:3], y[1:3])
## [1] 4.00000000 3.99992104 3.99968418 0.00000000 0.01256629 0.02513208
plot(x, y, cex = 0.1)

s=rep(0,n)
for (i in 1:n) {
  s[i] = -y[i]*x[i+1] + x[i]*y[i+1]
}
A=0.5*sum(s)
A
## [1] 25.13258
#The area of an ellipse according to formula: pi ab
pi*a*b
## [1] 25.13274

Compute the area of an ellipse by a planimeter with u = (0, x)

n=1000
a=4
b=2
t=seq(0, 2*pi, length = n+1)
x=a*cos(t)
y=b*sin(t)
s=rep(0,n)
for (i in 1:n) {
  s[i] =  x[i]*(y[i+1]-y[i])
}
A = sum(s)
A
## [1] 25.13258
plot(x, y, type = 'l')

ChatGPT code

a <- 3 # semi-major axis
b <- 2 # semi-minor axis

# Define the vector field F(x,y)
F <- function(x,y) {
  c(-y/2, x/2)
}

# Calculate the line integral using the parametric equation of the ellipse
a <- 4 # semi-major axis
b <- 2 # semi-minor axis

# Define the vector field F(x,y)
F <- function(x,y) {
  c(-y/2, x/2)
}

# Define the parametric equation of the ellipse
x <- function(t) a * cos(t)
y <- function(t) b * sin(t)

# Define the derivative of the parametric equation
dx <- function(t) -a * sin(t)
dy <- function(t) b * cos(t)

# Define the line integral using the parametric equation of the ellipse
integral <- 0
n <- 1000 # number of points
t <- seq(0, 2*pi, length.out = n)
for (i in 1:(n-1)) {
  x1 <- x(t[i])
  y1 <- y(t[i])
  x2 <- x(t[i+1])
  y2 <- y(t[i+1])
  dx <- x2 - x1
  dy <- y2 - y1
  integral <- integral + F(x2,y2) %*% c(dx,dy)
}

# Calculate the area using Green's theorem
area <-  integral
print(paste("The area of the ellipse is", area))
## [1] "The area of the ellipse is 25.1325755310066"

Exams: Midterm 2 Problem 5

del = 0.01
x = y = seq(-pi+del, pi-del, len = 401)
f = function(x,y){sin(x)*sin(y)}
z = outer(x, y, f)
par(mar=c(4.0, 4.0, 0.5, 0.5))
contour(x,y,z, col = 'blue',
        levels = seq(-1,0, len =21),
        lty='dotted',
        xlab = 'x', ylab = 'y',
        cex.lab =1.4, cex.axis = 1.4)
contour(x,y,z, 
        levels = seq(0,1, len =21),
        col = 'red', add = TRUE)

x
##   [1] -3.13159265 -3.11593469 -3.10027673 -3.08461876 -3.06896080 -3.05330284
##   [7] -3.03764487 -3.02198691 -3.00632895 -2.99067098 -2.97501302 -2.95935506
##  [13] -2.94369709 -2.92803913 -2.91238117 -2.89672320 -2.88106524 -2.86540728
##  [19] -2.84974931 -2.83409135 -2.81843339 -2.80277542 -2.78711746 -2.77145950
##  [25] -2.75580154 -2.74014357 -2.72448561 -2.70882765 -2.69316968 -2.67751172
##  [31] -2.66185376 -2.64619579 -2.63053783 -2.61487987 -2.59922190 -2.58356394
##  [37] -2.56790598 -2.55224801 -2.53659005 -2.52093209 -2.50527412 -2.48961616
##  [43] -2.47395820 -2.45830023 -2.44264227 -2.42698431 -2.41132634 -2.39566838
##  [49] -2.38001042 -2.36435245 -2.34869449 -2.33303653 -2.31737856 -2.30172060
##  [55] -2.28606264 -2.27040467 -2.25474671 -2.23908875 -2.22343078 -2.20777282
##  [61] -2.19211486 -2.17645689 -2.16079893 -2.14514097 -2.12948300 -2.11382504
##  [67] -2.09816708 -2.08250911 -2.06685115 -2.05119319 -2.03553522 -2.01987726
##  [73] -2.00421930 -1.98856134 -1.97290337 -1.95724541 -1.94158745 -1.92592948
##  [79] -1.91027152 -1.89461356 -1.87895559 -1.86329763 -1.84763967 -1.83198170
##  [85] -1.81632374 -1.80066578 -1.78500781 -1.76934985 -1.75369189 -1.73803392
##  [91] -1.72237596 -1.70671800 -1.69106003 -1.67540207 -1.65974411 -1.64408614
##  [97] -1.62842818 -1.61277022 -1.59711225 -1.58145429 -1.56579633 -1.55013836
## [103] -1.53448040 -1.51882244 -1.50316447 -1.48750651 -1.47184855 -1.45619058
## [109] -1.44053262 -1.42487466 -1.40921669 -1.39355873 -1.37790077 -1.36224280
## [115] -1.34658484 -1.33092688 -1.31526891 -1.29961095 -1.28395299 -1.26829502
## [121] -1.25263706 -1.23697910 -1.22132113 -1.20566317 -1.19000521 -1.17434725
## [127] -1.15868928 -1.14303132 -1.12737336 -1.11171539 -1.09605743 -1.08039947
## [133] -1.06474150 -1.04908354 -1.03342558 -1.01776761 -1.00210965 -0.98645169
## [139] -0.97079372 -0.95513576 -0.93947780 -0.92381983 -0.90816187 -0.89250391
## [145] -0.87684594 -0.86118798 -0.84553002 -0.82987205 -0.81421409 -0.79855613
## [151] -0.78289816 -0.76724020 -0.75158224 -0.73592427 -0.72026631 -0.70460835
## [157] -0.68895038 -0.67329242 -0.65763446 -0.64197649 -0.62631853 -0.61066057
## [163] -0.59500260 -0.57934464 -0.56368668 -0.54802871 -0.53237075 -0.51671279
## [169] -0.50105482 -0.48539686 -0.46973890 -0.45408093 -0.43842297 -0.42276501
## [175] -0.40710704 -0.39144908 -0.37579112 -0.36013316 -0.34447519 -0.32881723
## [181] -0.31315927 -0.29750130 -0.28184334 -0.26618538 -0.25052741 -0.23486945
## [187] -0.21921149 -0.20355352 -0.18789556 -0.17223760 -0.15657963 -0.14092167
## [193] -0.12526371 -0.10960574 -0.09394778 -0.07828982 -0.06263185 -0.04697389
## [199] -0.03131593 -0.01565796  0.00000000  0.01565796  0.03131593  0.04697389
## [205]  0.06263185  0.07828982  0.09394778  0.10960574  0.12526371  0.14092167
## [211]  0.15657963  0.17223760  0.18789556  0.20355352  0.21921149  0.23486945
## [217]  0.25052741  0.26618538  0.28184334  0.29750130  0.31315927  0.32881723
## [223]  0.34447519  0.36013316  0.37579112  0.39144908  0.40710704  0.42276501
## [229]  0.43842297  0.45408093  0.46973890  0.48539686  0.50105482  0.51671279
## [235]  0.53237075  0.54802871  0.56368668  0.57934464  0.59500260  0.61066057
## [241]  0.62631853  0.64197649  0.65763446  0.67329242  0.68895038  0.70460835
## [247]  0.72026631  0.73592427  0.75158224  0.76724020  0.78289816  0.79855613
## [253]  0.81421409  0.82987205  0.84553002  0.86118798  0.87684594  0.89250391
## [259]  0.90816187  0.92381983  0.93947780  0.95513576  0.97079372  0.98645169
## [265]  1.00210965  1.01776761  1.03342558  1.04908354  1.06474150  1.08039947
## [271]  1.09605743  1.11171539  1.12737336  1.14303132  1.15868928  1.17434725
## [277]  1.19000521  1.20566317  1.22132113  1.23697910  1.25263706  1.26829502
## [283]  1.28395299  1.29961095  1.31526891  1.33092688  1.34658484  1.36224280
## [289]  1.37790077  1.39355873  1.40921669  1.42487466  1.44053262  1.45619058
## [295]  1.47184855  1.48750651  1.50316447  1.51882244  1.53448040  1.55013836
## [301]  1.56579633  1.58145429  1.59711225  1.61277022  1.62842818  1.64408614
## [307]  1.65974411  1.67540207  1.69106003  1.70671800  1.72237596  1.73803392
## [313]  1.75369189  1.76934985  1.78500781  1.80066578  1.81632374  1.83198170
## [319]  1.84763967  1.86329763  1.87895559  1.89461356  1.91027152  1.92592948
## [325]  1.94158745  1.95724541  1.97290337  1.98856134  2.00421930  2.01987726
## [331]  2.03553522  2.05119319  2.06685115  2.08250911  2.09816708  2.11382504
## [337]  2.12948300  2.14514097  2.16079893  2.17645689  2.19211486  2.20777282
## [343]  2.22343078  2.23908875  2.25474671  2.27040467  2.28606264  2.30172060
## [349]  2.31737856  2.33303653  2.34869449  2.36435245  2.38001042  2.39566838
## [355]  2.41132634  2.42698431  2.44264227  2.45830023  2.47395820  2.48961616
## [361]  2.50527412  2.52093209  2.53659005  2.55224801  2.56790598  2.58356394
## [367]  2.59922190  2.61487987  2.63053783  2.64619579  2.66185376  2.67751172
## [373]  2.69316968  2.70882765  2.72448561  2.74014357  2.75580154  2.77145950
## [379]  2.78711746  2.80277542  2.81843339  2.83409135  2.84974931  2.86540728
## [385]  2.88106524  2.89672320  2.91238117  2.92803913  2.94369709  2.95935506
## [391]  2.97501302  2.99067098  3.00632895  3.02198691  3.03764487  3.05330284
## [397]  3.06896080  3.08461876  3.10027673  3.11593469  3.13159265

Exercise 10.6(a): Model flower pedals

par(mar=c(4,4,2,0.2))
# eight petals 
a = 3
k = 4
n = 1000
ome = 2
t = seq(0, 2*pi, len=n)
theta = ome*t
r = a*cos(k*theta)
x = r*cos(theta)
y = r*sin(theta)
plot(x, y,  type = 'l', lwd = 4, col = 'pink',
     main = 'An eight-petal rose')

x
##    [1]  3.000000000  2.995966240  2.983878210  2.963775607  2.935724434
##    [6]  2.899816753  2.856170354  2.804928317  2.746258495  2.680352894
##   [11]  2.607426974  2.527718860  2.441488473  2.349016578  2.250603765
##   [16]  2.146569347  2.037250199  1.922999536  1.804185620  1.681190433
##   [21]  1.554408282  1.424244378  1.291113366  1.155437832  1.017646776
##   [26]  0.878174068  0.737456897  0.595934196  0.454045080  0.312227279
##   [31]  0.170915583  0.030540302 -0.108474253 -0.245711263 -0.380762855
##   [36] -0.513231529 -0.642731533 -0.768890190 -0.891349176 -1.009765736
##   [41] -1.123813835 -1.233185252 -1.337590587 -1.436760206 -1.530445105
##   [46] -1.618417688 -1.700472462 -1.776426652 -1.846120718 -1.909418787
##   [51] -1.966208989 -2.016403706 -2.059939721 -2.096778277 -2.126905038
##   [56] -2.150329959 -2.167087067 -2.177234140 -2.180852306 -2.178045547
##   [61] -2.168940123 -2.153683904 -2.132445629 -2.105414086 -2.072797211
##   [66] -2.034821126 -1.991729105 -1.943780480 -1.891249489 -1.834424070
##   [71] -1.773604609 -1.709102644 -1.641239532 -1.570345084 -1.496756175
##   [76] -1.420815325 -1.342869281 -1.263267572 -1.182361068 -1.100500548
##   [81] -1.018035262 -0.935311516 -0.852671274 -0.770450785 -0.688979238
##   [86] -0.608577458 -0.529556634 -0.452217103 -0.376847177 -0.303722029
##   [91] -0.233102635 -0.165234788 -0.100348165 -0.038655482  0.019648291
##   [96]  0.074386625  0.125402060  0.172556737  0.215732858  0.254833050
##  [101]  0.289780648  0.320519884  0.347015996  0.369255235  0.387244795
##  [106]  0.401012645  0.410607281  0.416097386  0.417571405  0.415137043
##  [111]  0.408920671  0.399066665  0.385736663  0.369108751  0.349376580
##  [116]  0.326748420  0.301446146  0.273704178  0.243768361  0.211894796
##  [121]  0.178348633  0.143402827  0.107336855  0.070435412  0.032987080
##  [126] -0.004717011 -0.042384544 -0.079723370 -0.116442871 -0.152255311
##  [131] -0.186877174 -0.220030493 -0.251444147 -0.280855131 -0.308009797
##  [136] -0.332665048 -0.354589498 -0.373564575 -0.389385572 -0.401862642
##  [141] -0.410821732 -0.416105446 -0.417573842 -0.415105156 -0.408596446
##  [146] -0.397964163 -0.383144636 -0.364094471 -0.340790872 -0.313231870
##  [151] -0.281436462 -0.245444669 -0.205317494 -0.161136802 -0.113005101
##  [156] -0.061045244 -0.005400033  0.053768248  0.116278401  0.181930948
##  [161]  0.250508859  0.321778343  0.395489725  0.471378381  0.549165754
##  [166]  0.628560418  0.709259212  0.790948420  0.873305007  0.955997895
##  [171]  1.038689278  1.121035978  1.202690820  1.283304039  1.362524699
##  [176]  1.440002128  1.515387359  1.588334569  1.658502512  1.725555951
##  [181]  1.789167057  1.849016801  1.904796310  1.956208189  2.002967811
##  [186]  2.044804552  2.081462990  2.112704038  2.138306026  2.158065717
##  [191]  2.171799254  2.179343043  2.180554548  2.175313021  2.163520140
##  [196]  2.145100574  2.120002447  2.088197725  2.049682508  2.004477228
##  [201]  1.952626758  1.894200425  1.829291927  1.758019161  1.680523952
##  [206]  1.596971694  1.507550893  1.412472627  1.311969915  1.206296994
##  [211]  1.095728524  0.980558699  0.861100296  0.737683630  0.610655462
##  [216]  0.480377819  0.347226768  0.211591127  0.073871119 -0.065523013
##  [221] -0.206172437 -0.347651201 -0.489527733 -0.631366364 -0.772728869
##  [226] -0.913176033 -1.052269211 -1.189571899 -1.324651297 -1.457079864
##  [231] -1.586436860 -1.712309858 -1.834296236 -1.952004637 -2.065056381
##  [236] -2.173086843 -2.275746776 -2.372703583 -2.463642525 -2.548267869
##  [241] -2.626303966 -2.697496260 -2.761612212 -2.818442156 -2.867800062
##  [246] -2.909524215 -2.943477814 -2.969549462 -2.987653586 -2.997730738
##  [251] -2.999747825 -2.993698221 -2.979601795 -2.957504839 -2.927479897
##  [256] -2.889625498 -2.844065798 -2.790950124 -2.730452428 -2.662770648
##  [261] -2.588125989 -2.506762108 -2.418944229 -2.324958174 -2.225109317
##  [266] -2.119721475 -2.009135725 -1.893709165 -1.773813615 -1.649834269
##  [271] -1.522168298 -1.391223408 -1.257416372 -1.121171522 -0.982919221
##  [276] -0.843094316 -0.702134578 -0.560479134 -0.418566898 -0.276835011
##  [281] -0.135717285  0.004357326  0.142966247  0.279694759  0.414137452
##  [286]  0.545899634  0.674598701  0.799865445  0.921345324  1.038699656
##  [291]  1.151606762  1.259763033  1.362883925  1.460704885  1.552982191
##  [296]  1.639493708  1.720039572  1.794442771  1.862549643  1.924230288
##  [301]  1.979378882  2.027913895  2.069778224  2.104939223  2.133388646
##  [306]  2.155142490  2.170240753  2.178747091  2.180748396  2.176354278
##  [311]  2.165696464  2.148928114  2.126223060  2.097774963  2.063796398
##  [316]  2.024517875  1.980186789  1.931066306  1.877434206  1.819581657
##  [321]  1.757811957  1.692439224  1.623787058  1.552187169  1.477977973
##  [326]  1.401503184  1.323110379  1.243149555  1.161971698  1.079927335
##  [331]  0.997365114  0.914630384  0.832063810  0.750000000  0.668766173
##  [336]  0.588680861  0.510052653  0.433178989  0.358344997  0.285822398
##  [341]  0.215868462  0.148725037  0.084617637  0.023754612 -0.033673615
##  [346] -0.087495229 -0.137557622 -0.183727912 -0.225893375 -0.263961792
##  [351] -0.297861708 -0.327542601 -0.352974964 -0.374150294 -0.391080997
##  [356] -0.403800202 -0.412361486 -0.416838516 -0.417324603 -0.413932176
##  [361] -0.406792172 -0.396053357 -0.381881558 -0.364458839 -0.343982597
##  [366] -0.320664598 -0.294729958 -0.266416060 -0.235971421 -0.203654522
##  [371] -0.169732583 -0.134480308 -0.098178603 -0.061113261 -0.023573626
##  [376]  0.014148747  0.051761455  0.088972606  0.125492175  0.161033356
##  [381]  0.195313897  0.228057423  0.258994721  0.287865013  0.314417177
##  [386]  0.338410938  0.359618012  0.377823197  0.392825408  0.404438665
##  [391]  0.412492998  0.416835304  0.417330120  0.413860329  0.406327790
##  [396]  0.394653880  0.378779961  0.358667765  0.334299682  0.305678977
##  [401]  0.272829900  0.235797725  0.194648685  0.149469830  0.100368786
##  [406]  0.047473433 -0.009068509 -0.069089971 -0.132405122 -0.198810025
##  [411] -0.268083384 -0.339987350 -0.414268420 -0.490658392 -0.568875387
##  [416] -0.648624938 -0.729601131 -0.811487805 -0.893959792 -0.976684206
##  [421] -1.059321772 -1.141528180 -1.222955477 -1.303253470 -1.382071156
##  [426] -1.459058153 -1.533866145 -1.606150319 -1.675570800 -1.741794069
##  [431] -1.804494370 -1.863355086 -1.918070091 -1.968345064 -2.013898762
##  [436] -2.054464255 -2.089790097 -2.119641458 -2.143801184 -2.162070796
##  [441] -2.174271424 -2.180244665 -2.179853367 -2.172982329 -2.159538931
##  [446] -2.139453663 -2.112680577 -2.079197649 -2.039007047 -1.992135307
##  [451] -1.938633418 -1.878576810 -1.812065252 -1.739222652 -1.660196764
##  [456] -1.575158805 -1.484302981 -1.387845917 -1.286026005 -1.179102669
##  [461] -1.067355537 -0.951083541 -0.830603943 -0.706251276 -0.578376229
##  [466] -0.447344458 -0.313535339 -0.177340670 -0.039163310  0.100584213
##  [471]  0.241481151  0.383100004  0.525008031  0.666768779  0.807943630
##  [476]  0.948093364  1.086779723  1.223566985  1.358023517  1.489723337
##  [481]  1.618247641  1.743186314  1.864139416  1.980718628  2.092548656
##  [486]  2.199268599  2.300533255  2.396014379  2.485401880  2.568404946
##  [491]  2.644753113  2.714197242  2.776510437  2.831488873  2.878952538
##  [496]  2.918745894  2.950738445  2.974825219  2.990927147  2.998991353
##  [501]  2.998991353  2.990927147  2.974825219  2.950738445  2.918745894
##  [506]  2.878952538  2.831488873  2.776510437  2.714197242  2.644753113
##  [511]  2.568404946  2.485401880  2.396014379  2.300533255  2.199268599
##  [516]  2.092548656  1.980718628  1.864139416  1.743186314  1.618247641
##  [521]  1.489723337  1.358023517  1.223566985  1.086779723  0.948093364
##  [526]  0.807943630  0.666768779  0.525008031  0.383100004  0.241481151
##  [531]  0.100584213 -0.039163310 -0.177340670 -0.313535339 -0.447344458
##  [536] -0.578376229 -0.706251276 -0.830603943 -0.951083541 -1.067355537
##  [541] -1.179102669 -1.286026005 -1.387845917 -1.484302981 -1.575158805
##  [546] -1.660196764 -1.739222652 -1.812065252 -1.878576810 -1.938633418
##  [551] -1.992135307 -2.039007047 -2.079197649 -2.112680577 -2.139453663
##  [556] -2.159538931 -2.172982329 -2.179853367 -2.180244665 -2.174271424
##  [561] -2.162070796 -2.143801184 -2.119641458 -2.089790097 -2.054464255
##  [566] -2.013898762 -1.968345064 -1.918070091 -1.863355086 -1.804494370
##  [571] -1.741794069 -1.675570800 -1.606150319 -1.533866145 -1.459058153
##  [576] -1.382071156 -1.303253470 -1.222955477 -1.141528180 -1.059321772
##  [581] -0.976684206 -0.893959792 -0.811487805 -0.729601131 -0.648624938
##  [586] -0.568875387 -0.490658392 -0.414268420 -0.339987350 -0.268083384
##  [591] -0.198810025 -0.132405122 -0.069089971 -0.009068509  0.047473433
##  [596]  0.100368786  0.149469830  0.194648685  0.235797725  0.272829900
##  [601]  0.305678977  0.334299682  0.358667765  0.378779961  0.394653880
##  [606]  0.406327790  0.413860329  0.417330120  0.416835304  0.412492998
##  [611]  0.404438665  0.392825408  0.377823197  0.359618012  0.338410938
##  [616]  0.314417177  0.287865013  0.258994721  0.228057423  0.195313897
##  [621]  0.161033356  0.125492175  0.088972606  0.051761455  0.014148747
##  [626] -0.023573626 -0.061113261 -0.098178603 -0.134480308 -0.169732583
##  [631] -0.203654522 -0.235971421 -0.266416060 -0.294729958 -0.320664598
##  [636] -0.343982597 -0.364458839 -0.381881558 -0.396053357 -0.406792172
##  [641] -0.413932176 -0.417324603 -0.416838516 -0.412361486 -0.403800202
##  [646] -0.391080997 -0.374150294 -0.352974964 -0.327542601 -0.297861708
##  [651] -0.263961792 -0.225893375 -0.183727912 -0.137557622 -0.087495229
##  [656] -0.033673615  0.023754612  0.084617637  0.148725037  0.215868462
##  [661]  0.285822398  0.358344997  0.433178989  0.510052653  0.588680861
##  [666]  0.668766173  0.750000000  0.832063810  0.914630384  0.997365114
##  [671]  1.079927335  1.161971698  1.243149555  1.323110379  1.401503184
##  [676]  1.477977973  1.552187169  1.623787058  1.692439224  1.757811957
##  [681]  1.819581657  1.877434206  1.931066306  1.980186789  2.024517875
##  [686]  2.063796398  2.097774963  2.126223060  2.148928114  2.165696464
##  [691]  2.176354278  2.180748396  2.178747091  2.170240753  2.155142490
##  [696]  2.133388646  2.104939223  2.069778224  2.027913895  1.979378882
##  [701]  1.924230288  1.862549643  1.794442771  1.720039572  1.639493708
##  [706]  1.552982191  1.460704885  1.362883925  1.259763033  1.151606762
##  [711]  1.038699656  0.921345324  0.799865445  0.674598701  0.545899634
##  [716]  0.414137452  0.279694759  0.142966247  0.004357326 -0.135717285
##  [721] -0.276835011 -0.418566898 -0.560479134 -0.702134578 -0.843094316
##  [726] -0.982919221 -1.121171522 -1.257416372 -1.391223408 -1.522168298
##  [731] -1.649834269 -1.773813615 -1.893709165 -2.009135725 -2.119721475
##  [736] -2.225109317 -2.324958174 -2.418944229 -2.506762108 -2.588125989
##  [741] -2.662770648 -2.730452428 -2.790950124 -2.844065798 -2.889625498
##  [746] -2.927479897 -2.957504839 -2.979601795 -2.993698221 -2.999747825
##  [751] -2.997730738 -2.987653586 -2.969549462 -2.943477814 -2.909524215
##  [756] -2.867800062 -2.818442156 -2.761612212 -2.697496260 -2.626303966
##  [761] -2.548267869 -2.463642525 -2.372703583 -2.275746776 -2.173086843
##  [766] -2.065056381 -1.952004637 -1.834296236 -1.712309858 -1.586436860
##  [771] -1.457079864 -1.324651297 -1.189571899 -1.052269211 -0.913176033
##  [776] -0.772728869 -0.631366364 -0.489527733 -0.347651201 -0.206172437
##  [781] -0.065523013  0.073871119  0.211591127  0.347226768  0.480377819
##  [786]  0.610655462  0.737683630  0.861100296  0.980558699  1.095728524
##  [791]  1.206296994  1.311969915  1.412472627  1.507550893  1.596971694
##  [796]  1.680523952  1.758019161  1.829291927  1.894200425  1.952626758
##  [801]  2.004477228  2.049682508  2.088197725  2.120002447  2.145100574
##  [806]  2.163520140  2.175313021  2.180554548  2.179343043  2.171799254
##  [811]  2.158065717  2.138306026  2.112704038  2.081462990  2.044804552
##  [816]  2.002967811  1.956208189  1.904796310  1.849016801  1.789167057
##  [821]  1.725555951  1.658502512  1.588334569  1.515387359  1.440002128
##  [826]  1.362524699  1.283304039  1.202690820  1.121035978  1.038689278
##  [831]  0.955997895  0.873305007  0.790948420  0.709259212  0.628560418
##  [836]  0.549165754  0.471378381  0.395489725  0.321778343  0.250508859
##  [841]  0.181930948  0.116278401  0.053768248 -0.005400033 -0.061045244
##  [846] -0.113005101 -0.161136802 -0.205317494 -0.245444669 -0.281436462
##  [851] -0.313231870 -0.340790872 -0.364094471 -0.383144636 -0.397964163
##  [856] -0.408596446 -0.415105156 -0.417573842 -0.416105446 -0.410821732
##  [861] -0.401862642 -0.389385572 -0.373564575 -0.354589498 -0.332665048
##  [866] -0.308009797 -0.280855131 -0.251444147 -0.220030493 -0.186877174
##  [871] -0.152255311 -0.116442871 -0.079723370 -0.042384544 -0.004717011
##  [876]  0.032987080  0.070435412  0.107336855  0.143402827  0.178348633
##  [881]  0.211894796  0.243768361  0.273704178  0.301446146  0.326748420
##  [886]  0.349376580  0.369108751  0.385736663  0.399066665  0.408920671
##  [891]  0.415137043  0.417571405  0.416097386  0.410607281  0.401012645
##  [896]  0.387244795  0.369255235  0.347015996  0.320519884  0.289780648
##  [901]  0.254833050  0.215732858  0.172556737  0.125402060  0.074386625
##  [906]  0.019648291 -0.038655482 -0.100348165 -0.165234788 -0.233102635
##  [911] -0.303722029 -0.376847177 -0.452217103 -0.529556634 -0.608577458
##  [916] -0.688979238 -0.770450785 -0.852671274 -0.935311516 -1.018035262
##  [921] -1.100500548 -1.182361068 -1.263267572 -1.342869281 -1.420815325
##  [926] -1.496756175 -1.570345084 -1.641239532 -1.709102644 -1.773604609
##  [931] -1.834424070 -1.891249489 -1.943780480 -1.991729105 -2.034821126
##  [936] -2.072797211 -2.105414086 -2.132445629 -2.153683904 -2.168940123
##  [941] -2.178045547 -2.180852306 -2.177234140 -2.167087067 -2.150329959
##  [946] -2.126905038 -2.096778277 -2.059939721 -2.016403706 -1.966208989
##  [951] -1.909418787 -1.846120718 -1.776426652 -1.700472462 -1.618417688
##  [956] -1.530445105 -1.436760206 -1.337590587 -1.233185252 -1.123813835
##  [961] -1.009765736 -0.891349176 -0.768890190 -0.642731533 -0.513231529
##  [966] -0.380762855 -0.245711263 -0.108474253  0.030540302  0.170915583
##  [971]  0.312227279  0.454045080  0.595934196  0.737456897  0.878174068
##  [976]  1.017646776  1.155437832  1.291113366  1.424244378  1.554408282
##  [981]  1.681190433  1.804185620  1.922999536  2.037250199  2.146569347
##  [986]  2.250603765  2.349016578  2.441488473  2.527718860  2.607426974
##  [991]  2.680352894  2.746258495  2.804928317  2.856170354  2.899816753
##  [996]  2.935724434  2.963775607  2.983878210  2.995966240  3.000000000
plot(x[1:125], y[1:125],  type = 'l', lwd = 4, col = 'pink',
     main = 'An eight-petal rose')

#One petal
plot(x[33:94], y[33:94], 
     xlim = c(-3, 3), ylim = c(-3, 3),
     type = 'l', lwd = 1, col = 'red',
     main = 'An eight-petal rose')

#Apply Green's theorem
xpedal = x[33:94]
ypedal = y[33:94]
m = length(xpedal)
s=rep(0,m)
for (i in 1:(m-1)){s[i] = xpedal[i]*(ypedal[i+1] - ypedal[i])}
A = sum(s) 
A
## [1] 1.609964
8*A #Output the result
## [1] 12.87971

###Jingle Bells Music in R by Keith McNulty in 2018 ####https://paulvanderlaken.com/2017/12/18/jingle-bells-in-r/

if(!"dplyr" %in% installed.packages()) install.packages("dplyr")
if(!"audio" %in% installed.packages()) install.packages("audio")

library("dplyr")
library("audio")

notes <- c(A = 0, B = 2, C = 3, D = 5, E = 7, F = 8, G = 10)

pitch <- paste("E E E",
               "E E E",
               "E G C D",
               "E",
               "F F F F",
               "F E E E",
               "E D D E",
               "D G",
               "E E E",
               "E E E",
               "E G C D",
               "E",
               "F F F F",
               "F E E E E",
               "G G F D",
               "C",
               "G3 E D C",
               "G3",
               "G3 G3 G3 E D C",
               "A3",
               "A3 F E D",
               "B3",
               "G G F D",
               "E",
               "G3 E D C",
               "G3",
               "G3 E D C",
               "A3 A3",
               "A3 F E D",
               "G G G G A G F D",
               "C C5 B A G F G",
               "E E E G C D",
               "E E E G C D",
               "E F G A C E D F",
               "E C D E F G A G",
               "F F F F F F",
               "F E E E E E",
               "E D D D D E",
               "D D E F G F E D",
               "E E E G C D",
               "E E E G C D",
               "E F G A C E D F",
               "E C D E F G A G",
               "F F F F F F",
               "F E E E E E",
               "G C5 B A G F E D",
               "C C E G C5")

duration <- c(1, 1, 2,
              1, 1, 2,
              1, 1, 1.5, 0.5,
              4,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 1, 1, 1,
              2, 2,
              1, 1, 2,
              1, 1, 2,
              1, 1, 1.5, 0.5,
              4,
              1, 1, 1, 1,
              1, 1, 1, 0.5, 0.5,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              3, .5, .5,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              3, 1,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 0.5, 0.5, 1,
              1, 0.33, 0.33, 0.33, 1, 0.33, 0.33, 0.33,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.33, 0.33, 0.33, 2)

jbells <- data_frame(pitch = strsplit(pitch, " ")[[1]],
                     duration = duration)

jbells <- jbells %>%
  mutate(octave = substring(pitch, nchar(pitch)) %>%
           {suppressWarnings(as.numeric(.))} %>%
           ifelse(is.na(.), 4, .),
         note = notes[substr(pitch, 1, 1)],
         note = note + grepl("#", pitch) -
           grepl("b", pitch) + octave * 12 +
           12 * (note < 3),
         freq = 2 ^ ((note - 60) / 12) * 440)

tempo <- 250

sample_rate <- 44100

make_sine <- function(freq, duration) {
  wave <- sin(seq(0, duration / tempo * 60, 1 / sample_rate) *
                freq * 2 * pi)
  fade <- seq(0, 1, 50 / sample_rate)
  wave * c(fade, rep(1, length(wave) - 2 * length(fade)), rev(fade))
}

jbells_wave <- mapply(make_sine, jbells$freq, jbells$duration) %>%
  do.call("c", .)

play(jbells_wave)

Ivanna’s Jingle Bell, Jingle Bells Music in R by Keith McNulty in 2018

#####https://paulvanderlaken.com/2017/12/18/jingle-bells-in-r/

if(!"dplyr" %in% installed.packages()) install.packages("dplyr")
if(!"audio" %in% installed.packages()) install.packages("audio")

library("dplyr")
library("audio")

notes <- c(A = 0, B = 2, C = 3, D = 5, E = 7, F = 8, G = 10)

pitch <- paste("C E C",
               "E E E",
               "E G C D",
               "E",
               "F F F F",
               "F E E E",
               "E D D E",
               "D G",
               "E E E",
               "E E E",
               "E G C D",
               "E",
               "F F F F",
               "F E E E E",
               "G G F D",
               "C",
               "G3 E D C",
               "G3",
               "G3 G3 G3 E D C",
               "A3",
               "A3 F E D",
               "B3",
               "G G F D",
               "E",
               "G3 E D C",
               "G3",
               "G3 E D C",
               "A3 A3",
               "A3 F E D",
               "G G G G A G F D",
               "C C5 B A G F G",
               "E E E G C D",
               "E E E G C D",
               "E F G A C E D F",
               "E C D E F G A G",
               "F F F F F F",
               "F E E E E E",
               "E D D D D E",
               "D D E F G F E D",
               "E E E G C D",
               "E E E G C D",
               "E F G A C E D F",
               "E C D E F G A G",
               "F F F F F F",
               "F E E E E E",
               "G C5 B A G F E D",
               "C C E G C5")

duration <- c(1, 3, 2,
              1, 3, 2,
              1, 4, 1.5, 2.5,
              4,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 1, 1, 1,
              2, 2,
              1, 1, 2,
              1, 1, 2,
              1, 1, 1.5, 0.5,
              4,
              1, 1, 1, 1,
              1, 1, 1, 0.5, 0.5,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              3, .5, .5,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              3, 1,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 0.5, 0.5, 1,
              1, 0.33, 0.33, 0.33, 1, 0.33, 0.33, 0.33,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.33, 0.33, 0.33, 2)

jbells <- data_frame(pitch = strsplit(pitch, " ")[[1]],
                     duration = duration)

jbells <- jbells %>%
  mutate(octave = substring(pitch, nchar(pitch)) %>%
           {suppressWarnings(as.numeric(.))} %>%
           ifelse(is.na(.), 4, .),
         note = notes[substr(pitch, 1, 1)],
         note = note + grepl("#", pitch) -
           grepl("b", pitch) + octave * 12 +
           12 * (note < 3),
         freq = 2 ^ ((note - 60) / 12) * 440)

tempo <- 250

sample_rate <- 44100

make_sine <- function(freq, duration) {
  wave <- sin(seq(0, duration / tempo * 60, 1 / sample_rate) *
                freq * 2 * pi)
  fade <- seq(0, 1, 50 / sample_rate)
  wave * c(fade, rep(1, length(wave) - 2 * length(fade)), rev(fade))
}

jbells_wave <- mapply(make_sine, jbells$freq, jbells$duration) %>%
  do.call("c", .)

play(jbells_wave)

Revised Jingle Bell, Jingle Bells Music in R by Keith McNulty in 2018

####https://paulvanderlaken.com/2017/12/18/jingle-bells-in-r/

if(!"dplyr" %in% installed.packages()) install.packages("dplyr")
if(!"audio" %in% installed.packages()) install.packages("audio")

library("dplyr")
library("audio")

notes <- c(A = 0, B = 2, C = 3, D = 5, E = 7, F = 8, G = 10)

pitch <- paste("F C F",
               "G C G",
               "G G C D",
               "E",
               "F F F F",
               "G B B B",
               "E D D E",
               "D G",
               "E E E",
               "E E E",
               "E G C D",
               "E",
               "F F F F",
               "F E E E E",
               "G G F D",
               "C",
               "G3 E D C",
               "G3",
               "G3 G3 G3 E D C",
               "A3",
               "A3 F E D",
               "B3",
               "G G F D",
               "E",
               "G3 E D C",
               "G3",
               "G3 E D C",
               "A3 A3",
               "A3 F E D",
               "G G G G A G F D",
               "C C5 B A G F G",
               "E E E G C D",
               "E E E G C D",
               "E F G A C E D F",
               "E C D E F G A G",
               "F F F F F F",
               "F E E E E E",
               "E D D D D E",
               "D D E F G F E D",
               "E E E G C D",
               "E E E G C D",
               "E F G A C E D F",
               "E C D E F G A G",
               "F F F F F F",
               "F E E E E E",
               "G C5 B A G F E D",
               "C C E G C5")

duration <- c(1, 3, 2,
              3, 1, 2,
              1, 2, 1.5, 0.5,
              4,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 1, 3, 1,
              2, 2,
              1, 1, 2,
              1, 1, 2,
              1, 1, 1.5, 0.5,
              4,
              1, 1, 1, 1,
              1, 1, 1, 0.5, 0.5,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              3, .5, .5,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              4,
              1, 1, 1, 1,
              3, 1,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 1, 1, 1,
              1, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 0.5, 0.5, 1,
              1, 0.33, 0.33, 0.33, 1, 0.33, 0.33, 0.33,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              1, 1, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              1, 0.5, 0.5, 1, 0.5, 0.5,
              0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
              1, 0.33, 0.33, 0.33, 2)

jbells <- data_frame(pitch = strsplit(pitch, " ")[[1]],
                     duration = duration)

jbells <- jbells %>%
  mutate(octave = substring(pitch, nchar(pitch)) %>%
           {suppressWarnings(as.numeric(.))} %>%
           ifelse(is.na(.), 4, .),
         note = notes[substr(pitch, 1, 1)],
         note = note + grepl("#", pitch) -
           grepl("b", pitch) + octave * 12 +
           12 * (note < 3),
         freq = 2 ^ ((note - 60) / 12) * 440)

tempo <- 250

sample_rate <- 44100

make_sine <- function(freq, duration) {
  wave <- sin(seq(0, duration / tempo * 60, 1 / sample_rate) *
                freq * 2 * pi)
  fade <- seq(0, 1, 50 / sample_rate)
  wave * c(fade, rep(1, length(wave) - 2 * length(fade)), rev(fade))
}

jbells_wave <- mapply(make_sine, jbells$freq, jbells$duration) %>%
  do.call("c", .)

play(jbells_wave)