restart:
with(LinearAlgebra):
Zde zadejte parametrizaci k\305\231ivky v R4:
r:=Vector[row]([ cos(t), sin(2*t) , cos(2*t), sin(t) ]);
Tecny vektor:
T:=simplify(Vector[row]([ diff(r[1],t) , diff(r[2],t) , diff(r[3],t),diff(r[4],t) ])/VectorNorm(Vector[row]([ diff(r[1],t) , diff(r[2],t) , diff(r[3],t),diff(r[4],t) ]),2,conjugate=false));
Kontrola jednotkovosti:
simplify(VectorNorm(T,2,conjugate=false));
Normalovy vektor:
N:=simplify(Vector[row]([ diff(T[1],t) , diff(T[2],t) , diff(T[3],t),diff(T[4],t) ])/VectorNorm(Vector[row]([ diff(T[1],t) , diff(T[2],t) , diff(T[3],t),diff(T[4],t) ]),2,conjugate=false),symbolic);
Kontrola jednotkovosti a ortogonality:
simplify(VectorNorm(N,2,conjugate=false));
simplify(DotProduct(T,N,conjugate=false),symbolic);
Binormalovy vektor - zde to u\305\276 bude slo\305\276it\304\233j\305\241\303\255, pou\305\276ijeme 3. derivaci parametrizace a ortonormalizujeme ji vzhledem k vektor\305\257m T a N:
r3:=Vector[row]([ diff(r[1],t,t,t) , diff(r[2],t,t,t) , diff(r[3],t,t,t),diff(r[4],t,t,t) ]);
Gram-Schmidtova ortogonalizace (existuje na to i p\305\231\303\255kaz GramSchmidt, co\305\276 jsem zjistil pozd\304\233, tak jsem to rozepsal):
Bortg:=r3-((DotProduct(r3,T,conjugate=false))/(DotProduct(T,T,conjugate=false)))*T-((DotProduct(r3,N,conjugate=false))/(DotProduct(N,N,conjugate=false)))*N:
Je\305\241t\304\233 ortonormalizujeme - v\304\233t\305\241inou vych\303\241z\303\255 dlouh\303\275 nehezk\303\275 v\303\275sledek, zobraz\303\255te ho nahrazen\303\255m dvojte\304\215ky st\305\231edn\303\255kem:
B:=Bortg/VectorNorm(Bortg,2,conjugate=false):
Kontrola jednotkovosti a ortogonality:
simplify(VectorNorm(B,2,conjugate=false),symbolic);
simplify(DotProduct(B,T,conjugate=false),symbolic);
simplify(DotProduct(B,N,conjugate=false),symbolic);
D\303\241le spo\304\215teme posledn\303\255 vektor Frenetova rep\303\251ru - mus\303\255 b\303\275t kolm\303\275 na T, N i B. Pou\305\276ijeme 4. derivaci parametrizace a ortonormalizujeme ji vzhledem k vektor\305\257m T, N a B:
r4:=Vector[row]([ diff(r[1],t,t,t,t) , diff(r[2],t,t,t,t) , diff(r[3],t,t,t,t),diff(r[4],t,t,t,t) ]);
Gram-Schmidtova ortogonalizace:
BBortg:=r4-((DotProduct(r4,T,conjugate=false))/(DotProduct(T,T,conjugate=false)))*T-((DotProduct(r4,N,conjugate=false))/(DotProduct(N,N,conjugate=false)))*N-((DotProduct(r4,B,conjugate=false))/(DotProduct(B,B,conjugate=false)))*B:
Je\305\241t\304\233 ortonormalizujeme:
BB:=BBortg/VectorNorm(BBortg,2,conjugate=false):
Kontrola jednotkovosti a ortogonality:
simplify(VectorNorm(BB,2,conjugate=false),symbolic);
simplify(DotProduct(BB,T,conjugate=false),symbolic);
simplify(DotProduct(BB,N,conjugate=false),symbolic);
simplify(DotProduct(BB,B,conjugate=false),symbolic);
Frenet\305\257v rep\303\251r je tedy tvo\305\231en vektory T, N, B a BB.
K\305\231ivost (1. k\305\231ivost):
kappa:=simplify(VectorNorm(Vector[row]([ diff(T[1],t) , diff(T[2],t) , diff(T[3],t),diff(T[4],t) ]),2,conjugate=false)/VectorNorm(Vector[row]([ diff(r[1],t) , diff(r[2],t) , diff(r[3],t),diff(r[4],t) ]),2,conjugate=false),symbolic);
Torze (2. k\305\231ivost):
tau:=simplify(DotProduct(Vector[row]([ diff(N[1],t) , diff(N[2],t) , diff(N[3],t),diff(N[4],t) ]), B,conjugate=false)/VectorNorm(Vector[row]([ diff(r[1],t) , diff(r[2],t) , diff(r[3],t),diff(r[4],t) ]),2,conjugate=false),symbolic);
3. k\305\231ivost:
lambda:=simplify(DotProduct(Vector[row]([ diff(B[1],t) , diff(B[2],t) , diff(B[3],t),diff(B[4],t) ]), BB,conjugate=false)/VectorNorm(Vector[row]([ diff(r[1],t) , diff(r[2],t) , diff(r[3],t),diff(r[4],t) ]),2,conjugate=false),symbolic);
TTdSMApJNlJUQUJMRV9TQVZFLzE1MDUwMDUxNlgqJSlhbnl0aGluZ0c2IjYiW2dsISQlISEhIiUiJS0lJGNvc0c2IyUidEctJSRzaW5HNiMsJEYqIiIjLUYoRi0tRixGKTYiTTdSMApJNlJUQUJMRV9TQVZFLzE1MjcyOTA5MlgqJSlhbnl0aGluZ0c2IjYiW2dsISQlISEhIiUiJSwkKiYiIiYjIiIiIiIjLSUkc2luRzYjJSJ0R0YrIyEiIkYpLCQqJkYpRiotJSRjb3NHNiMsJEYwRixGKyNGLEYpLCQqJkYpRiotRi5GN0YrIyEiI0YpLCQqJkYpRiotRjZGL0YrI0YrRik2Ig==TTdSMApJNlJUQUJMRV9TQVZFLzE1MjcyOTI2NFgqJSlhbnl0aGluZ0c2IjYiW2dsISQlISEhIiUiJSwkKiYiIzwjIiIiIiIjLSUkY29zRzYjJSJ0R0YrIyEiIkYpLCQqJkYpRiotJSRzaW5HNiMsJEYwRixGKyMhIiVGKSwkKiZGKUYqLUYuRjdGK0Y5LCQqJkYpRiotRjZGL0YrRjE2Ig==TTdSMApJNlJUQUJMRV9TQVZFLzE1MjcyOTMzNlgqJSlhbnl0aGluZ0c2IjYiW2dsISQlISEhIiUiJS0lJHNpbkc2IyUidEcsJC0lJGNvc0c2IywkRioiIiMhIiksJC1GKEYuIiIpLCQtRi1GKSEiIjYiTTdSMApJNlJUQUJMRV9TQVZFLzE1MjcyOTUzNlgqJSlhbnl0aGluZ0c2IjYiW2dsISQlISEhIiUiJS0lJGNvc0c2IyUidEcsJC0lJHNpbkc2IywkRioiIiMiIzssJC1GKEYuRjEtRi1GKTYi