Difference between revisions of "User:Afly"
(→mod 2) |
m (→Function f(x) = 3\tanh (x)+\sin (x)) |
||
(27 intermediate revisions by 2 users not shown) | |||
Line 9: | Line 9: | ||
Competitions I have participated in: | Competitions I have participated in: | ||
− | AMC8 * | + | AMC8 * 2 |
AMC10A * 1 | AMC10A * 1 | ||
Line 17: | Line 17: | ||
MathLeague Qualifications * 7 | MathLeague Qualifications * 7 | ||
− | MathLeague District * | + | MathLeague District * 1 |
MathLeague District Countdown * 1 | MathLeague District Countdown * 1 | ||
Line 25: | Line 25: | ||
MathLeague State Countdown * 1 | MathLeague State Countdown * 1 | ||
− | MathLeague National * | + | MathLeague National * 2 |
MathLeague National Countdown * 1 | MathLeague National Countdown * 1 | ||
− | MathLeague International * 1 | + | MathLeague International * 2 |
+ | |||
+ | Favorite pythagorean triples: | ||
+ | |||
+ | 3-4-5 | ||
+ | 5-12-13 | ||
+ | 7-24-25 | ||
+ | 9-40-41 | ||
+ | 11-60-61 | ||
+ | 13-84-85 | ||
+ | |||
+ | 8-15-17 | ||
+ | 12-35-37 | ||
+ | 16-63-65 | ||
+ | 20-99-101 | ||
+ | |||
+ | 20-21-29 | ||
+ | 28-45-53 | ||
+ | 36-77-85 | ||
+ | 44-117-125 | ||
+ | |||
+ | 48-55-73 | ||
+ | 96-247-265 | ||
+ | |||
+ | 88-105-137 | ||
+ | (Those last three are collector's edition) | ||
+ | |||
+ | 60-91-109 (Fun one!) | ||
+ | |||
+ | 84-187-205 (Weird) | ||
+ | |||
+ | 65-72-97 (Even stranger) | ||
+ | |||
+ | 33-56-65 (WHAAT?) | ||
+ | |||
+ | ==Visual proofs== | ||
+ | (Demonstrates HI IQ) | ||
+ | ===FAQ: What is a triangular number?=== | ||
+ | n=3 | ||
+ | ┌─┐ 1 | ||
+ | ├─┴─┐ 2 | ||
+ | ├───┴─┐ 3 | ||
+ | └─────┘ | ||
+ | 2 of them are: | ||
+ | ┌─┐ ┌─┐ | ||
+ | ├─┴─┐ ├─┴─┐ | ||
+ | ├───┴─┐ ├───┴─┐ | ||
+ | └─────┘ └─────┘ | ||
+ | Which are: | ||
+ | ┌─┐ ┌─────┐ | ||
+ | ├─┴─┐ └─┬───┤ | ||
+ | ├───┴─┐ └─┬─┤ | ||
+ | └─────┘ └─┘ | ||
+ | |||
+ | And... | ||
+ | |||
+ | ┌─┬─────┐ | ||
+ | ├─┴─┬───┤ n | ||
+ | ├───┴─┬─┤ | ||
+ | └─────┴─┘ | ||
+ | n+1 | ||
+ | so 2(1+2+3...+n)=n(n+1) | ||
+ | |||
+ | They're special characters in unicode. deal with it. | ||
+ | |||
+ | It was a pain to make. I should have used my Maze class in python. | ||
==Some of my asymptote creations== | ==Some of my asymptote creations== | ||
Line 306: | Line 371: | ||
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
− | + | ===Pascal's triangle mod=== | |
Starring: Loops and arrays | Starring: Loops and arrays | ||
− | + | ====mod 2==== | |
<asy> | <asy> | ||
− | int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}, | + | int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; |
− | |||
pen p1=rgb(1/8,1/8,7/8); | pen p1=rgb(1/8,1/8,7/8); | ||
pen p2=rgb(1/8,7/8,1/8); | pen p2=rgb(1/8,7/8,1/8); | ||
− | for (int i=0; i< | + | for (int i=0; i<64; ++i) |
{ | { | ||
for (int j=0; j<i+1; ++j) | for (int j=0; j<i+1; ++j) | ||
Line 331: | Line 395: | ||
} | } | ||
</asy> | </asy> | ||
− | + | ====mod 2 big==== | |
− | =====mod 3 | + | <asy> |
+ | int[][] pascal1={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | ||
+ | pen p1=rgb(1/8,1/8,7/8); | ||
+ | pen p2=rgb(1/8,7/8,1/8); | ||
+ | for (int i=0; i<64; ++i) | ||
+ | { | ||
+ | for (int j=0; j<i+1; ++j) | ||
+ | { | ||
+ | if (j==0 || i==j) { | ||
+ | pascal1[i].push(1); | ||
+ | } else { | ||
+ | pascal1[i].push(pascal1[i-1][j-1]+pascal1[i-1][j]); | ||
+ | } | ||
+ | if (pascal1[i][j]%2==0){ | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p1); | ||
+ | } else { | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p2); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | int[] ref1=pascal1[63]; | ||
+ | int[][] pascal2={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | ||
+ | pen p1=rgb(1/8,1/8,7/8); | ||
+ | pen p2=rgb(1/8,7/8,1/8); | ||
+ | for (int i=0; i<64; ++i) | ||
+ | { | ||
+ | for (int j=0; j<i+65; ++j) | ||
+ | { | ||
+ | if (j==0 || i==j) { | ||
+ | pascal2[i].push(1); | ||
+ | } else { | ||
+ | if (i==0){ | ||
+ | pascal2[i].push(ref[j-1]+ref[j]); | ||
+ | } else { | ||
+ | pascal2[i].push(pascal2[i-1][j-1]+pascal2[i-1][j]); | ||
+ | } | ||
+ | } | ||
+ | if (pascal1[i][j]%2==0){ | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*(i+64)*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p1); | ||
+ | } else { | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*(i+64)*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p2); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | </asy> | ||
+ | ====mod 3==== | ||
<asy> | <asy> | ||
int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | ||
Line 359: | Line 468: | ||
} | } | ||
</asy> | </asy> | ||
− | + | ====mod 4==== | |
<asy> | <asy> | ||
int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | ||
Line 391: | Line 500: | ||
} | } | ||
</asy> | </asy> | ||
− | + | ====mod 5==== | |
<asy> | <asy> | ||
int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | ||
Line 428: | Line 537: | ||
} | } | ||
</asy> | </asy> | ||
+ | ====mod 6==== | ||
+ | <asy> | ||
+ | int[][] pascal={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; | ||
+ | pen p1=rgb(1/8,1/8,7/8); | ||
+ | pen p2=rgb(1/8,7/8,1/8); | ||
+ | pen p3=rgb(7/8,1/8,1/8); | ||
+ | pen p4=rgb(7/8,7/8,1/8); | ||
+ | pen p5=rgb(1/8,7/8,7/8); | ||
+ | pen p6=rgb(7/8,1/8,7/8); | ||
+ | for (int i=0; i<64; ++i) | ||
+ | { | ||
+ | for (int j=0; j<i+1; ++j) | ||
+ | { | ||
+ | if (j==0 || i==j) { | ||
+ | pascal[i].push(1); | ||
+ | } else { | ||
+ | pascal[i].push(pascal[i-1][j-1]+pascal[i-1][j]); | ||
+ | } | ||
+ | if (pascal[i][j]%6==0){ | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p1); | ||
+ | } else { | ||
+ | if (pascal[i][j]%6==1) { | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p2); | ||
+ | } else { | ||
+ | if (pascal[i][j]%6==2) { | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p3); | ||
+ | } else { | ||
+ | if (pascal[i][j]%6==3) { | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p4); | ||
+ | } else { | ||
+ | if (pascal[i][j]%6==4) { | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p5); | ||
+ | } else { | ||
+ | fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p6); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | </asy> | ||
+ | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
+ | |||
+ | ===How trig works=== | ||
+ | Latex + Asymptote | ||
+ | <asy> | ||
+ | import olympiad; | ||
+ | markscalefactor = 1/96; | ||
+ | real d = radians(40); | ||
+ | unitsize(72); | ||
+ | pair O = (0,0); | ||
+ | draw(circle(O,1)); | ||
+ | dot(O); | ||
+ | label("O",O,dir(180+degrees(d)/2)); | ||
+ | label("$\theta$",shift(dir(degrees(d)/2)/5)*O,dir(degrees(d)/2)); | ||
+ | pair G = (0,1); | ||
+ | label("G",G,N); | ||
+ | pair A = (cos(d),0); | ||
+ | label("A",A,S); | ||
+ | pair B = (cos(d),sin(d)); | ||
+ | label("B",B,dir(135+degrees(d))); | ||
+ | pair C = (1,0); | ||
+ | label("C",C,E); | ||
+ | pair D = (1,tan(d)); | ||
+ | label("D",D,N); | ||
+ | pair E = (1/tan(d),0); | ||
+ | label("E",E,SE); | ||
+ | pair F = (1/tan(d),1); | ||
+ | label("F",F,N); | ||
+ | pair G = (0,1); | ||
+ | label("G",G,N); | ||
+ | draw(D--O--C--D--B--A--E--F--G--O--F); | ||
+ | draw(rightanglemark(G,O,C)); | ||
+ | label("$\cos \theta$",O--A); | ||
+ | label("$\sin \theta$",B--A); | ||
+ | label("1",B--O); | ||
+ | draw(shift(dir(270)/24)*brace(C,O)); | ||
+ | label("$\cot \theta$",shift(dir(270)/24)*brace(C,O),S); | ||
+ | draw(shift(dir(d+90)/24)*brace(O,D)); | ||
+ | label("$\csc \theta$",shift(dir(degrees(d)+90)/24)*brace(O,D),dir(degrees(d)+90)); | ||
+ | draw(shift(dir(270)/4)*brace(E,O)); | ||
+ | label("1",shift(dir(270)/4)*brace(C,O),S); | ||
+ | draw(shift(dir(270)/4)*O--shift(dir(270)/24)*O); | ||
+ | draw(shift(dir(270)/4)*E--shift(dir(270)/24)*E); | ||
+ | label("1",E--F,SW); | ||
+ | label("$\tan \theta$",D--E); | ||
+ | draw(shift(dir(degrees(d)+90)/4)*brace(O,F)); | ||
+ | label("$\sec \theta$",shift(dir(degrees(d)+90)/4)*brace(O,F),dir(d+90)); | ||
+ | draw(shift(dir(degrees(d)+90)/4)*O--shift(dir(degrees(d)+90)/24)*O); | ||
+ | draw(shift(dir(degrees(d)+90)/4)*F--shift(dir(degrees(d)+90)/24)*F); | ||
+ | </asy> | ||
+ | |||
+ | <math>\textit{\textbf{\underline{\fontsize{24}{36}\selectfont Identities}}}</math> | ||
+ | |||
+ | <math>\textit{\textbf{\underline{\fontsize{18}{27}\selectfont Pythagorean identities}}}</math> | ||
+ | |||
+ | <math>\text{\fontsize{12}{18}\selectfont We see three right triangles in the diagrams which we can get identities out of: }</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \triangle OAB \text{ gives } \sin^2 \theta + \cos^2 \theta = 1^2</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \triangle OCD \text{ gives } \tan^2 \theta + 1^2 = \sec^2 \theta</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \triangle OEF \text{ gives } 1^2 + \cot^2 \theta = \csc^2 \theta</math> | ||
+ | |||
+ | <math>\textit{\textbf{\underline{\fontsize{18}{27}\selectfont Similarity identities}}}</math> | ||
+ | |||
+ | <math>\text{\fontsize{12}{18}\selectfont We can also get identities out of similar triangles: }</math> | ||
+ | |||
+ | <math>\fontsize{15}{22.5}\selectfont \triangle OAB \sim \triangle OCD\text{ gives:}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{1}{\cos \theta} = \frac{\sec \theta}{1}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{1}{\sin \theta} = \frac{\sec \theta}{\tan \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\cos \theta}{1} = \frac{1}{\sec \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\cos \theta}{\sin \theta} = \frac{1}{\tan \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\sin \theta}{1} = \frac{\tan \theta}{\sec \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\sin \theta}{\cos \theta} = \frac{\tan \theta}{1}</math> | ||
+ | |||
+ | <math>\fontsize{15}{22.5}\selectfont \triangle OAB \sim \triangle OEF\text{ gives:}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{1}{\cos \theta} = \frac{\csc \theta}{\cot \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{1}{\sin \theta} = \frac{\csc \theta}{1}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\cos \theta}{1} = \frac{\cot \theta}{\csc \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\cos \theta}{\sin \theta} = \frac{\cot \theta}{1}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\sin \theta}{1} = \frac{1}{\csc \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\sin \theta}{\cos \theta} = \frac{1}{\cot \theta}</math> | ||
+ | |||
+ | <math>\fontsize{15}{22.5}\selectfont \triangle OCD \sim \triangle OEF\text{ gives:}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\sec \theta}{1} = \frac{\csc \theta}{\cot \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\sec \theta}{\tan \theta} = \frac{\csc \theta}{1}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{1}{\sec \theta} = \frac{\cot \theta}{\csc \theta}</math> | ||
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{1}{\tan \theta} = \frac{\cot \theta}{1}</math> | ||
− | ====Rotating cube | + | <math>\fontsize{12}{18}\selectfont \frac{\tan \theta}{\sec \theta} = \frac{1}{\csc \theta}</math> |
+ | |||
+ | <math>\fontsize{12}{18}\selectfont \frac{\tan \theta}{1} = \frac{1}{\cot \theta}</math> | ||
+ | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
+ | |||
+ | ===Rotating cube=== | ||
Starring: Asymptote three | Starring: Asymptote three | ||
− | + | ====Perspective==== | |
<asy> | <asy> | ||
Line 507: | Line 767: | ||
</asy> | </asy> | ||
− | + | ====Orthographic==== | |
<asy> | <asy> | ||
Line 580: | Line 840: | ||
draw((0,0,1)--(1,0,1)--(1,1,1)--(0,1,1)--cycle,red); | draw((0,0,1)--(1,0,1)--(1,1,1)--(0,1,1)--cycle,red); | ||
</asy> | </asy> | ||
+ | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
===Circle diagrams=== | ===Circle diagrams=== | ||
Line 684: | Line 945: | ||
label("$I_{3b}$",C3,dir(0),blue); | label("$I_{3b}$",C3,dir(0),blue); | ||
</asy> | </asy> | ||
+ | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
+ | ===Function <math>f(x) = 3\tanh (x)+\sin (x)</math>=== | ||
+ | Starring: Functions | ||
+ | <asy> | ||
+ | unitsize(8); | ||
+ | pair f(real x1){ | ||
+ | real y1 = 3*tanh(x1)+(sin(x1)); | ||
+ | pair p1 = (x1,y1); | ||
+ | return p1; | ||
+ | } | ||
+ | pair[] plotpoints = {}; | ||
+ | for (int i=0;i<2001;++i){ | ||
+ | plotpoints.push(f((i/100)-10)); | ||
+ | } | ||
+ | for (int i=0;i<2000;++i){ | ||
+ | draw(plotpoints[i]--plotpoints[i+1],linewidth(0.5)+blue); | ||
+ | } | ||
+ | </asy> | ||
+ | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
+ | |||
+ | ===Sheet=== | ||
+ | Starring: Bezier surfaces | ||
+ | <asy> | ||
+ | import three; | ||
+ | currentprojection=orthographic(1,1,5); | ||
+ | size(200); | ||
+ | pair[] l1x={(-2,0), (-1.3,0.5), (-0.7,0.5), (0,0)}; | ||
+ | pair[] l1y={(-2,0), (-1.3,0.5), (-0.7,0.5), (0,0)}; | ||
+ | triple f1(int xp, int yp) | ||
+ | { | ||
+ | real Z = l1x[xp].y + l1y[yp].y; | ||
+ | real X = l1x[xp].x; | ||
+ | real Y = l1y[yp].x; | ||
+ | triple pt = (X,Y,Z); | ||
+ | return pt; | ||
+ | }; | ||
+ | triple[][] P1={{},{},{},{}}; | ||
+ | for (int i=0;i<4;++i){ | ||
+ | for (int j=0; j<4;++j){ | ||
+ | triple[] temp = P1[i]; | ||
+ | temp.push(f1(i,j)); | ||
+ | P1.delete(i); | ||
+ | P1.insert(i,temp); | ||
+ | } | ||
+ | } | ||
+ | for (int i=0;i<4;++i){ | ||
+ | for (int j=0; j<4;++j){ | ||
+ | dot(P1[i][j]); | ||
+ | } | ||
+ | } | ||
+ | draw(surface(patch(P1,new pen[]{cyan,cyan+green,cyan+yellow+green+red,cyan+yellow}))); | ||
+ | pair[] l2x={(-2,0), (-1.3,0.5), (-0.7,0.5), (0,0)}; | ||
+ | pair[] l2y={(0,0), (0.7,-0.5), (1.3,-0.5), (2,0)}; | ||
+ | triple f2(int xp, int yp) | ||
+ | { | ||
+ | real Z = l2x[xp].y + l2y[yp].y; | ||
+ | real X = l2x[xp].x; | ||
+ | real Y = l2y[yp].x; | ||
+ | triple pt = (X,Y,Z); | ||
+ | return pt; | ||
+ | }; | ||
+ | triple[][] P2={{},{},{},{}}; | ||
+ | for (int i=0;i<4;++i){ | ||
+ | for (int j=0; j<4;++j){ | ||
+ | triple[] temp = P2[i]; | ||
+ | temp.push(f2(i,j)); | ||
+ | P1.delete(i); | ||
+ | P1.insert(i,temp); | ||
+ | } | ||
+ | } | ||
+ | for (int i=0;i<4;++i){ | ||
+ | for (int j=0; j<4;++j){ | ||
+ | dot(P2[i][j]); | ||
+ | } | ||
+ | } | ||
+ | draw(surface(patch(P2,new pen[]{cyan+yellow,cyan+yellow+green+red,yellow+red,yellow}))); | ||
+ | pair[] l3x={(0,0), (0.7,-0.5), (1.3,-0.5), (2,0)}; | ||
+ | pair[] l3y={(-2,0), (-1.3,0.5), (-0.7,0.5), (0,0)}; | ||
+ | triple f3(int xp, int yp) | ||
+ | { | ||
+ | real Z = l3x[xp].y + l3y[yp].y; | ||
+ | real X = l3x[xp].x; | ||
+ | real Y = l3y[yp].x; | ||
+ | triple pt = (X,Y,Z); | ||
+ | return pt; | ||
+ | }; | ||
+ | triple[][] P3={{},{},{},{}}; | ||
+ | for (int i=0;i<4;++i){ | ||
+ | for (int j=0; j<4;++j){ | ||
+ | triple[] temp = P3[i]; | ||
+ | temp.push(f3(i,j)); | ||
+ | P3.delete(i); | ||
+ | P3.insert(i,temp); | ||
+ | } | ||
+ | } | ||
+ | for (int i=0;i<4;++i){ | ||
+ | for (int j=0; j<4;++j){ | ||
+ | dot(P3[i][j]); | ||
+ | } | ||
+ | } | ||
+ | draw(surface(patch(P3,new pen[]{cyan+green,green,green+red,cyan+yellow+green+red}))); | ||
+ | pair[] l4x={(0,0), (0.7,-0.5), (1.3,-0.5), (2,0)}; | ||
+ | pair[] l4y={(0,0), (0.7,-0.5), (1.3,-0.5), (2,0)}; | ||
+ | triple f4(int xp, int yp) | ||
+ | { | ||
+ | real Z = l4x[xp].y + l4y[yp].y; | ||
+ | real X = l4x[xp].x; | ||
+ | real Y = l4y[yp].x; | ||
+ | triple pt = (X,Y,Z); | ||
+ | return pt; | ||
+ | }; | ||
+ | triple[][] P4={{},{},{},{}}; | ||
+ | for (int i=0;i<4;++i){ | ||
+ | for (int j=0; j<4;++j){ | ||
+ | triple[] temp = P4[i]; | ||
+ | temp.push(f4(i,j)); | ||
+ | P4.delete(i); | ||
+ | P4.insert(i,temp); | ||
+ | } | ||
+ | } | ||
+ | for (int i=0;i<4;++i){ | ||
+ | for (int j=0; j<4;++j){ | ||
+ | dot(P4[i][j]); | ||
+ | } | ||
+ | } | ||
+ | draw(surface(patch(P4,new pen[]{cyan+yellow+green+red,green+red,red,yellow+red}))); | ||
+ | import settings; | ||
+ | leftbutton=new string[] {"rotate","zoom","shift","pan"}; | ||
+ | middlebutton=new string[] {"menu"}; | ||
+ | rightbutton=new string[] {"zoom/menu","rotateX","rotateY","rotateZ"}; | ||
+ | wheelup=new string[] {"zoomin"}; | ||
+ | wheeldown=new string[] {"zoomout"}; | ||
+ | </asy> | ||
+ | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
+ | ===Another cube=== | ||
+ | Starring: Knowledge* | ||
+ | <asy> | ||
+ | unitsize(72); | ||
+ | pen drawing = red; | ||
+ | // change it! | ||
+ | real rxy = acos(1/1.5*sqrt(2)); | ||
+ | real ryz = acos(1/sqrt(3)); | ||
+ | real[] unitx = {cos(rxy),-sin(rxy)*cos(ryz),sin(rxy)*sin(ryz)}; | ||
+ | real[] unity = {sin(rxy),cos(rxy)*cos(ryz),-cos(rxy)*sin(ryz)}; | ||
+ | real[] unitz = {0,sin(ryz),cos(ryz)}; | ||
+ | real[][] base = {unitx,unity,unitz}; | ||
+ | pair proj(real[] coor){ | ||
+ | pair ortho(real[] coor){ | ||
+ | pair p=(coor[0],coor[1]); | ||
+ | return p; | ||
+ | } | ||
+ | pair perspec(real[] coor){ | ||
+ | real[] center = {0,0,0}; | ||
+ | // Write the projection center above | ||
+ | real d = (coor[0]-center[0])**2+(coor[1]-center[1])**2+(coor[2]-center[2])**2; | ||
+ | pair p=(coor[0]/d,coor[1]/d); | ||
+ | return p; | ||
+ | } | ||
+ | pair p = ortho(coor); | ||
+ | // Choose your projection above | ||
+ | return p; | ||
+ | } | ||
+ | real[] newp(real[] s,real[][] base){ | ||
+ | real[] ad(real[] in1,real[] in2,real[] in3){ | ||
+ | real[] out = {in1[0]+in2[0]+in3[0],in1[1]+in2[1]+in3[1],in1[2]+in2[2]+in3[2]}; | ||
+ | return out; | ||
+ | } | ||
+ | real[] mul(real fac,real[] in){ | ||
+ | real[] out = {fac*in[0],fac*in[1],fac*in[2]}; | ||
+ | return out; | ||
+ | } | ||
+ | real[] out = ad(mul(s[0],base[0]),mul(s[1],base[1]),mul(s[2],base[2])); | ||
+ | return out; | ||
+ | } | ||
+ | for (real i=0;i<2;++i){ | ||
+ | for (real j=0;j<2;++j){ | ||
+ | for (real k=0;k<2;++k){ | ||
+ | real[] Orig = {i,j,k}; | ||
+ | real[] Ivar = {1-i,j,k}; | ||
+ | real[] Jvar = {i,1-j,k}; | ||
+ | real[] Kvar = {i,j,1-k}; | ||
+ | pair orig = proj(newp(Orig,base)); | ||
+ | pair ivar = proj(newp(Ivar,base)); | ||
+ | pair jvar = proj(newp(Jvar,base)); | ||
+ | pair kvar = proj(newp(Kvar,base)); | ||
+ | draw(orig--ivar,drawing); | ||
+ | draw(orig--jvar,drawing); | ||
+ | draw(orig--kvar,drawing); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | </asy> | ||
+ | * How to put everything together in a nice example, why the only good thing about asymptote three is bezier surfaces. If you're bored, look at the code and try to figure out how it all works. | ||
==Created files== | ==Created files== | ||
Line 803: | Line 1,257: | ||
==LaTeX Creations (coming soon!)== | ==LaTeX Creations (coming soon!)== | ||
+ | |||
+ | ==Created pages== | ||
+ | *[[Proofs of trig identities]] | ||
==Solutions created== | ==Solutions created== | ||
− | ===2019 AIME II # | + | ===2019 AIME II #4 Solution 7 (Generating functions)=== |
+ | [[https://artofproblemsolving.com/wiki/index.php/2019_AIME_II_Problems/Problem_4#Solution_7.28Generating_functions.29 Actual solution]] | ||
Let's look at the prime factorization of some of these rolls: | Let's look at the prime factorization of some of these rolls: | ||
Line 863: | Line 1,321: | ||
=Yrock's Notes= | =Yrock's Notes= | ||
+ | |||
+ | hello | ||
=ConfidentFlamingo's notes= | =ConfidentFlamingo's notes= |
Latest revision as of 16:26, 20 October 2024
Contents
- 1 Afly's notes
- 1.1 About Afly
- 1.2 Visual proofs
- 1.3 Some of my asymptote creations
- 1.4 Created files
- 1.5 LaTeX Creations (coming soon!)
- 1.6 Created pages
- 1.7 Solutions created
- 2 Yrock's Notes
- 3 ConfidentFlamingo's notes
- 4 Other Users' notes
Afly's notes
About Afly
Friends with Yrock and ConfidentFlamingo
User # 1013218 Profile
Competitions I have participated in:
AMC8 * 2
AMC10A * 1
AMC10B * 1
MathLeague Qualifications * 7
MathLeague District * 1
MathLeague District Countdown * 1
MathLeague State * 1
MathLeague State Countdown * 1
MathLeague National * 2
MathLeague National Countdown * 1
MathLeague International * 2
Favorite pythagorean triples:
3-4-5 5-12-13 7-24-25 9-40-41 11-60-61 13-84-85
8-15-17 12-35-37 16-63-65 20-99-101
20-21-29 28-45-53 36-77-85 44-117-125
48-55-73 96-247-265
88-105-137 (Those last three are collector's edition)
60-91-109 (Fun one!)
84-187-205 (Weird)
65-72-97 (Even stranger)
33-56-65 (WHAAT?)
Visual proofs
(Demonstrates HI IQ)
FAQ: What is a triangular number?
n=3
┌─┐ 1 ├─┴─┐ 2 ├───┴─┐ 3 └─────┘
2 of them are:
┌─┐ ┌─┐ ├─┴─┐ ├─┴─┐ ├───┴─┐ ├───┴─┐ └─────┘ └─────┘
Which are:
┌─┐ ┌─────┐ ├─┴─┐ └─┬───┤ ├───┴─┐ └─┬─┤ └─────┘ └─┘
And...
┌─┬─────┐ ├─┴─┬───┤ n ├───┴─┬─┤ └─────┴─┘ n+1
so 2(1+2+3...+n)=n(n+1)
They're special characters in unicode. deal with it.
It was a pain to make. I should have used my Maze class in python.
Some of my asymptote creations
These are a random collection of diagrams and text that I have made. YOU ARE ALLOWED TO USE THESE IMAGES AND/OR TEXT IN YOUR PAGES OR USE THEM FOR REFERENCE.
I try to put them in the order of how much technique & technical points there are in them
Enough talking. Let's get into the pictures.
Triangle
Starring: Basic path drawing and LaTeX
ANSWER: LOOK ONLY WHEN THE PROBLEM IS COMPLETED >>> THIS IS ONLY TO CHECK YOUR ANSWER
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Pythagorean
Starring: Colored paths and line width
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Trapezoid
Starring: Filling regions
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Hexagon (In AMC 2023 10A #24)
Starring: polygon(), shift(), dir(), unitsize, labels
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Tiny 2D experiments
Grid with numbers
Starring: Custom colors
Tiny 3D experiments
Starring: Using cleverly placed colors and lines to make a illusion (just pure skill, not really Asymptote)
Cube
Smaller cube
Cube with a cube hole in it
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Pascal's triangle mod
Starring: Loops and arrays
mod 2
mod 2 big
int[][] pascal1={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; pen p1=rgb(1/8,1/8,7/8); pen p2=rgb(1/8,7/8,1/8); for (int i=0; i<64; ++i) { for (int j=0; j<i+1; ++j) { if (j==0 || i==j) { pascal1[i].push(1); } else { pascal1[i].push(pascal1[i-1][j-1]+pascal1[i-1][j]); } if (pascal1[i][j]%2==0){ fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p1); } else { fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*i*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p2); } } } int[] ref1=pascal1[63]; int[][] pascal2={{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}}; pen p1=rgb(1/8,1/8,7/8); pen p2=rgb(1/8,7/8,1/8); for (int i=0; i<64; ++i) { for (int j=0; j<i+65; ++j) { if (j==0 || i==j) { pascal2[i].push(1); } else { if (i==0){ pascal2[i].push(ref[j-1]+ref[j]); } else { pascal2[i].push(pascal2[i-1][j-1]+pascal2[i-1][j]); } } if (pascal1[i][j]%2==0){ fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*(i+64)*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p1); } else { fill(shift(dir(60)*7)*shift(dir(30))*shift(dir(240)*(i+64)*sqrt(3))*shift(dir(0)*j*sqrt(3))*rotate(30)*polygon(6),p2); } } } (Error making remote request. Unknown error_msg)
mod 3
mod 4
mod 5
mod 6
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
How trig works
Latex + Asymptote
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Rotating cube
Starring: Asymptote three
Perspective
Orthographic
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Circle diagrams
A collection of stuff having to do with circles
Intersection points
Starring: Fancy labels, Troubleshooting
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Function
Starring: Functions +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Sheet
Starring: Bezier surfaces +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Another cube
Starring: Knowledge*
* How to put everything together in a nice example, why the only good thing about asymptote three is bezier surfaces. If you're bored, look at the code and try to figure out how it all works.
Created files
(Using desmos)
Colored dodecagon
Original file:
Pentagon 2023 12B Q25 dissmo
Original size:
LaTeX Creations (coming soon!)
Created pages
Solutions created
2019 AIME II #4 Solution 7 (Generating functions)
Let's look at the prime factorization of some of these rolls:
01 => 2^0*3^0*5^0 02 => 2^1*3^0*5^0 03 => 2^0*3^1*5^0 04 => 2^2*3^0*5^0 05 => 2^0*3^0*5^1 06 => 2^1*3^1*5^0
Now, using multi-variable generating functions, we get:
f(x,y,z)=1+x+y+x^2+z+xy | | \| |/ 'v' f(x,y,z)=1+x+y+z+x^2+xy =(for our purposes) =2+x+y+z+xy
Let's square that!
4+2x+2y+2z+2xy+2x+x^2+xy+xz+x^2y+2y+xy+y^2+yz+xy^2+2z+xz+yz+z^2+xyz+2xy+x^2y+xy^2+xyz+x^2y^2 Combining like terms . . . 4+4x+4y+4z+x^2+y^2+z^2+6xy+2xz+2yz+2xyz+2x^2y+2xy^2+x^2y^2
Since we only want the parity of each of the exponents, we can collapse it again.
8+6x+6y+4z+6xy+2xz+2yz+2xyz
Last simplification: factor out a factor of two and save it for later.
4+3x+3y+2z+3xy+xz+yz+xyz
Let's take a better approach this time.
___ term :4*4+3*3+3*3+2*2+3*3+1*1+1*1+1*1=16+09+09+04+09+01+01+01=50 __x term :4*3+3*4+3*3+2*1+3*3+1*2+1*1+1*1=12+12+09+02+09+02+01+01=48 __y term :4*3+3*3+3*4+2*1+3*3+1*1+1*2+1*1=12+09+12+02+09+01+02+01=48 __z term :4*2+3*1+3*1+2*4+3*1+1*3+1*3+1*3=08+03+03+08+03+03+03+03=34 _xy term :4*3+3*3+3*3+2*1+3*4+1*1+1*1+1*2=12+09+09+02+12+01+01+02=48 _xz term :4*1+3*2+3*1+2*3+3*1+1*4+1*3+1*3=04+06+03+06+03+04+03+03=32 _yz term :4*1+3*1+3*2+2*3+3*1+1*3+1*4+1*3=04+03+06+06+03+03+04+03=32 xyz term :4*1+3*1+3*1+2*3+3*2+1*3+1*3+1+4=04+03+03+06+06+03+03+04=32 Result: 50+48x+48y+34z+48xy+32xz+32yz+32xyz
I know we could use vectors and dot products to make it look neater but come on. It already looks neat enough. Also, we didn't need the other parts, but it just looks nicer. Now let's stick back the two that turned into a four.
200+192x+192y+136z+192xy+128xz+128yz+128xyz
We seek the constant term which is 200. 200/1296=100/648=50/324=25/162, 25+162=187
Yrock's Notes
hello
ConfidentFlamingo's notes
Other Users' notes
Note from afly: If you leave a note, write who it is from