Presentation is loading. Please wait.

Presentation is loading. Please wait.

Selective physics applications of Mathematica

Similar presentations


Presentation on theme: "Selective physics applications of Mathematica"— Presentation transcript:

1 Selective physics applications of Mathematica
이정일 in collaboration with 김유래, 이준학 고려대학교 2015 수학 소프트웨어 여름캠프 (Mathematical Software Summer Camp) 2015년 8월 22일

2 Part I Mathematica의 패턴매칭을 활용한 Symbolic 계산

3 Schoonschip (1963, Veltman)
Symbolic Computing의 시작 Electro-weak theory가 재 규격화 가능함을 증명, 년 노벨 물리학상 읽을 거리(천공 카드를 사용하던 시절) 사진출처:

4 REDUCE(1968, Hearn) LISP로 짜여진 Symbolic Program Free software Now
사용자 친화적 읽을 거리 (REDUCE 40년 역사)

5 FORM(1984, Vermaseren) Best Symbolic Program Ever! Free software
Schoonschip의 C 버전 컴파일하여 실행 Memory사용의 효율성 사용자 비 친화적

6 Dirac Gamma Matrix Dirac Gamma Matrix는 상대론적으로 운동하는 전자의 스핀상태의 변화 기술하는 데 필수적인 행렬이다. Clifford Algebra를 만족한다. 전자와 빛의 상호작용을 perturbative하게 기술할 때 수 많은 Gamma Matrix의 곱의 Trace를 계산해야 한다.

7 Dirac Gamma Matrix Algebra
𝛾 𝜇 𝛾 𝜈 + 𝛾 𝜈 𝛾 𝜇 =2 𝑔 𝜇𝜈 1 𝑔 𝜇𝜈 =diag(1,−1,−1,−1). 𝛾 0 = −1 , 𝛾 𝑖 = 0 𝜎 𝑖 −𝜎 𝑖 0 𝜎 𝑖 는 Pauli sigma matrix 𝜎 1 = , 𝜎 2 = 0 −𝑖 𝑖 0 , 𝜎 3 = −1 .

8 REDUCE 계산 예 오른쪽 프로그램 결과물은 Dirac gamma matrix 곱의 trace를 계산한 예이다.
REDUCE 3.7, 15-Jan-99 patched to 25-Sep 1: vector p1,p2,p3,p4,p5,p6,p7,p8; 2: off nat; 3: g(l,p1,p2,p3,p4,p5,p6,p7,p8); p1.p2*p3.p4*p5.p6*p7.p8 - p1.p2*p3.p4*p5.p7*p6.p8 + p1 .p2*p3.p4*p5.p8*p6.p7 - p1.p2*p3.p5*p4.p6*p7.p8 + p1. p2*p3.p5*p4.p7*p6.p8 - p1.p2*p3.p5*p4.p8*p6.p7 + p1.p2 *p3.p6*p4.p5*p7.p8 - p1.p2*p3.p6*p4.p7*p5.p8 + p1.p2* p3.p6*p4.p8*p5.p7 - p1.p2*p3.p7*p4.p5*p6.p8 + p1.p2*p3 .p7*p4.p6*p5.p8 - p1.p2*p3.p7*p4.p8*p5.p6 + p1.p2*p3. p8*p4.p5*p6.p7 - p1.p2*p3.p8*p4.p6*p5.p7 + p1.p2*p3.p8 *p4.p7*p5.p6 - p1.p3*p2.p4*p5.p6*p7.p8 + p1.p3*p2.p4* p5.p7*p6.p8 - p1.p3*p2.p4*p5.p8*p6.p7 + p1.p3*p2.p5*p4 .p6*p7.p8 - p1.p3*p2.p5*p4.p7*p6.p8 + p1.p3*p2.p5*p4. p8*p6.p7 - p1.p3*p2.p6*p4.p5*p7.p8 + p1.p3*p2.p6*p4.p7 *p5.p8 - p1.p3*p2.p6*p4.p8*p5.p7 + p1.p3*p2.p7*p4.p5* p6.p8 - p1.p3*p2.p7*p4.p6*p5.p8 + p1.p3*p2.p7*p4.p8*p5 .p6 - p1.p3*p2.p8*p4.p5*p6.p7 + p1.p3*p2.p8*p4.p6*p5. p7 - p1.p3*p2.p8*p4.p7*p5.p6 + p1.p4*p2.p3*p5.p6*p7.p8 - p1.p4*p2.p3*p5.p7*p6.p8 + p1.p4*p2.p3*p5.p8*p6.p7 - p1.p4*p2.p5*p3.p6*p7.p8 + p1.p4*p2.p5*p3.p7*p6.p8 - p1.p4*p2.p5*p3.p8*p6.p7 + p1.p4*p2.p6*p3.p5*p7.p8 - p1 .p4*p2.p6*p3.p7*p5.p8 + p1.p4*p2.p6*p3.p8*p5.p7 - p1. p4*p2.p7*p3.p5*p6.p8 + p1.p4*p2.p7*p3.p6*p5.p8 - p1.p4 *p2.p7*p3.p8*p5.p6 + p1.p4*p2.p8*p3.p5*p6.p7 - p1.p4* p2.p8*p3.p6*p5.p7 + p1.p4*p2.p8*p3.p7*p5.p6 - p1.p5*p2 .p3*p4.p6*p7.p8 + p1.p5*p2.p3*p4.p7*p6.p8 - p1.p5*p2. p3*p4.p8*p6.p7 + p1.p5*p2.p4*p3.p6*p7.p8 - p1.p5*p2.p4 *p3.p7*p6.p8 + p1.p5*p2.p4*p3.p8*p6.p7 - p1.p5*p2.p6* p3.p4*p7.p8 + p1.p5*p2.p6*p3.p7*p4.p8 - p1.p5*p2.p6*p3 .p8*p4.p7 + p1.p5*p2.p7*p3.p4*p6.p8 - p1.p5*p2.p7*p3. p6*p4.p8 + p1.p5*p2.p7*p3.p8*p4.p6 - p1.p5*p2.p8*p3.p4 *p6.p7 + p1.p5*p2.p8*p3.p6*p4.p7 - p1.p5*p2.p8*p3.p7* p4.p6 + p1.p6*p2.p3*p4.p5*p7.p8 - p1.p6*p2.p3*p4.p7*p5 .p8 + p1.p6*p2.p3*p4.p8*p5.p7 - p1.p6*p2.p4*p3.p5*p7. p8 + p1.p6*p2.p4*p3.p7*p5.p8 - p1.p6*p2.p4*p3.p8*p5.p7 + p1.p6*p2.p5*p3.p4*p7.p8 - p1.p6*p2.p5*p3.p7*p4.p8 + p1.p6*p2.p5*p3.p8*p4.p7 - p1.p6*p2.p7*p3.p4*p5.p8 + p1.p6*p2.p7*p3.p5*p4.p8 - p1.p6*p2.p7*p3.p8*p4.p5 + p1 .p6*p2.p8*p3.p4*p5.p7 - p1.p6*p2.p8*p3.p5*p4.p7 + p1. p6*p2.p8*p3.p7*p4.p5 - p1.p7*p2.p3*p4.p5*p6.p8 + p1.p7 *p2.p3*p4.p6*p5.p8 - p1.p7*p2.p3*p4.p8*p5.p6 + p1.p7* p2.p4*p3.p5*p6.p8 - p1.p7*p2.p4*p3.p6*p5.p8 + p1.p7*p2 .p4*p3.p8*p5.p6 - p1.p7*p2.p5*p3.p4*p6.p8 + p1.p7*p2. p5*p3.p6*p4.p8 - p1.p7*p2.p5*p3.p8*p4.p6 + p1.p7*p2.p6 *p3.p4*p5.p8 - p1.p7*p2.p6*p3.p5*p4.p8 + p1.p7*p2.p6* p3.p8*p4.p5 - p1.p7*p2.p8*p3.p4*p5.p6 + p1.p7*p2.p8*p3 .p5*p4.p6 - p1.p7*p2.p8*p3.p6*p4.p5 + p1.p8*p2.p3*p4. p5*p6.p7 - p1.p8*p2.p3*p4.p6*p5.p7 + p1.p8*p2.p3*p4.p7 *p5.p6 - p1.p8*p2.p4*p3.p5*p6.p7 + p1.p8*p2.p4*p3.p6* p5.p7 - p1.p8*p2.p4*p3.p7*p5.p6 + p1.p8*p2.p5*p3.p4*p6 .p7 - p1.p8*p2.p5*p3.p6*p4.p7 + p1.p8*p2.p5*p3.p7*p4. p6 - p1.p8*p2.p6*p3.p4*p5.p7 + p1.p8*p2.p6*p3.p5*p4.p7 - p1.p8*p2.p6*p3.p7*p4.p5 + p1.p8*p2.p7*p3.p4*p5.p6 - p1.p8*p2.p7*p3.p5*p4.p6 + p1.p8*p2.p7*p3.p6*p4.p5$ 4: REDUCE 계산 예 오른쪽 프로그램 결과물은 Dirac gamma matrix 곱의 trace를 계산한 예이다. Tr 𝛾 𝑝 1 𝛾 𝑝 1 ⋯ 𝛾 𝑝 8 =? 입자물리 이론에 빈번히 등장하는 방대한 양의 단순연산의 해석적 결과를 얻기 위해 Symbolic Manipulation을 개발하여 활용

9 Symbolic 계산의 필요성 이와 같이 입자물리이론에서는 문자형태를 정확히 유지한 채 식을 전개를 해야 하는 경우가 많음 (예: 적분, 미분, 전개, 인수분해, …) 다양한 형태의 non-Abelian algebra에 활용 Computer algebra, 혹은 symbolic manipulation이라고 불리는 방법을 통해 이러한 문자로 구성된 식으로부터 문자로 된 결과를 얻어낼 수 있음 Mathematica는 이와 같은 symbolic 계산 패키지의 일종(비쌈)

10 다양한 Symbolic 계산 프로그램들 Schoonschip 1963년 Veltman에 의해 처음 개발된 computer algebra system. W 보손의 quadrupole moment를 계산하기 위해 만듬 (50000개 항이 등장) FORM 1984년 Schoonschip에 기반하여 J.A.M. Vermaseren이 만든 프로그램 MACSYMA (Project MAC’s SYmbolic MAnipulator) 1968년에서 1982년까지 MIT의 Project MAC의 일환으로서 만들어진 computer algebra 프로그램 현재는 Maxima라는 프로그램으로 이어지고 있음 Symbolic Manipulation Program (SMP) 1979년부터 Wolfram의 주도하에 제작된 프로그램. Schoonschip과 MACSYMA을 참고하여 제작됨  Mathematica로 이어짐

11 패턴 매칭 기법 동일한 패턴을 찾아내어 원하는 규칙을 적용하는 방법
Mathematica에서는 크게 3가지 패턴이 존재 - pattern_ (밑줄 한 개) 1 개의 argument - pattern_ _ (밑줄 두 개) 1 개 혹은 그 이상의 argument - pattern_ _ _ (밑줄 세 개) 0개 혹은 그 이상의 argument

12 패턴별 비교 예제 다음과 같은 3가지 함수를 정의해보자. ex1[x_, y_] := x + y (y 밑줄 한 개) ex2[x_, y_ _] := x + y (y 밑줄 두 개) ex3[x_, y_ _ _] := x + y (y 밑줄 세 개) Argument에 1, (1, 2), (1, 2, 3)을 넣어 비교해보면 차이를 명확히 알 수 있다.

13 패턴별 비교 예제

14 패턴 매칭 기법을 활용한 프로그램 제작 예제 패턴매칭을 활용하여 입자물리에서 자주 등장하는 SU(𝑁) generator 𝑇 𝑎 들의 trace 연산을 해보자. 먼저 시작하기 전에 다음의 명령어를 선언한다: Clear[tr,ti,conj,d,f,delta,ss,t1,t8] Unprotect[Times,Power,Plus] Clear -> 초기화 Unprotect -> 내장 함수의 규칙은 Protect가 되어 있어서 규칙을 바꾸고 싶은 경우 Unprotect 한 뒤 규칙을 바꾸고 다시 Protect 해야함

15 SU(𝑁) fundamental representation generator 𝑇 𝑎 의 trace는 다음과 같은 값을 가진다: Tr 𝐼 =𝑁, Tr 𝑇 𝑎 =0, Tr 𝑇 𝑎 𝑇 𝑏 = 1 2 𝛿 𝑎𝑏 . 이 등식을 Mathematica로 쓰면 다음과 같다: tr[]=n tr[a_]:=0 tr[a_,b_]:= delta[a,b]/2

16 다음으로 fundamental representation에 따르면 structure constant 𝑓 𝑎𝑏𝑐 과 𝑑 𝑎𝑏𝑐 는 𝑇 𝑎 𝑇 𝑏 = 1 2𝑁 𝛿 𝑎𝑏 𝐼+ 1 2 ( 𝑑 𝑎𝑏𝑐 +𝑖 𝑓 𝑎𝑏𝑐 ) 𝑇 𝑐 이를 정리하면 𝑓 𝑎𝑏𝑐 =−2𝑖 Tr [ 𝑇 𝑎 , 𝑇 𝑏 ] 𝑇 𝑐 𝑇 𝑐 [ 𝑇 𝑎 , 𝑇 𝑏 ] 𝑇 𝑐 𝑑 𝑎𝑏𝑐 =2Tr 𝑇 𝑎 , 𝑇 b 𝑇 𝑐 𝑇 𝑎 , 𝑇 b 𝑇 𝑐

17 Completeness relation에 따르면 𝑇 𝑎 𝑖𝑗 𝑇 𝑎 𝑘ℓ = 1 2 − 1 𝑁 𝛿 𝑖𝑗 𝛿 𝑘ℓ + 𝛿 𝑖ℓ 𝛿 𝑗𝑘
이를 활용하면 다음의 등식을 얻을 수 있다: Tr 𝐴 𝑇 𝑎 𝐵 𝑇 𝑎 𝐶 = 1 2 Tr 𝐴𝐶 +Tr 𝐵 − 1 N Tr 𝐴𝐵𝐶 , Tr 𝐴 𝑇 𝑎 𝐵 Tr 𝐶 𝑇 𝑎 𝐷 = 1 2 Tr 𝐴𝐷𝐶𝐵 − 1 N Tr 𝐴𝐵 Tr 𝐶𝐷 , 여기서 𝐴, 𝐵, 𝐶, 𝐷는 임의의 generator이다. 이 등식을 Mathematica로 쓰면 다음과 같다: tr[x___,a_,y___,a_,z___] :=1/2*(tr[x,z]*tr[y]-1/n*tr[x,y,z]) tr[x___,a_,y___]*tr[z___,a_,w___]:=1/2*(tr[x,w,z,y]-1/n*tr[x,y]*tr[z,w]) tr[x___,a_,y___]^ :=1/2*(tr[x,y,x,y]-1/n*tr[x,y]*tr[x,y]) 두 경우가 다른 경우로 인식됨에 주의해야 한다. (예: x*y, x^2, x^n, 1/x) Times와 Power를 Unprotect 안했다면 작동하지 않는다.

18 연산에 등장하는 Dirac 델타 함수에 대해 정리하면:
𝛿 𝑎𝑏 = 𝛿 𝑏𝑎 𝛿 𝑎𝑏 𝛿 𝑎𝑏 = 𝛿 𝑎𝑎 𝛿 𝑎𝑎 = 𝑁 2 −1 𝛿 𝑎𝑏 𝐹 …𝑎 … = 𝐹 …𝑏 … 𝛿 𝑎𝑏 𝐹 …𝑏 … = 𝐹 …𝑎 … 이 등식을 Mathematica로 쓰면 다음과 같다: delta[a_,b_]:=delta[b,a]/;a=!=b&&!OrderedQ[{a,b}] delta[a_,b_]^2:=delta[a,a] delta[a_,a_]:=n^2-1 delta[a_,b_]f_[x___,a_,y___]:=f[x,b,y] delta[a_,b_]f_[x___,b_,y___]:=f[x,a,y] Adjoint representation 𝑡 𝑖 𝑗𝑘 =−𝑖 𝑓 𝑖𝑗𝑘 이므로 ti[b__]:=-I*f[b]

19 Complex conjugate의 경우에는 index의 순서들은 반대로, 𝑖→−𝑖로 가는 변환이 된다.
conj라는 함수로 정의하여 이를 만들어보면 다음과 같다: conj[a_+b_]:=conj[a]+conj[b] conj[a_*b_]:=conj[a]*conj[b] conj[a_]:=Re[a]-I*Im[a]/;FreeQ[a,tr] conj[a__ tr[b___]] := (Re[a] - I*Im[a])*conj[tr[b]] HoldPattern[conj[tr[b___]]] := Apply[tr, Reverse[{b}]] /; 조건있는 규칙 FreeQ[a,tr] -> a에서 tr이 없는지 판별식 HoldPattern -> Pattern matching에서 연산 없이 바로 우변의 식으로 보내는 함수 (옛날에는 Literal) Apply, Reverse

20

21 앞서 만들어놓은 패턴 매칭 규칙들이 누락되지 않고 작용하기 위해서는 항상 식이 factorize된 형태가 아니라 전개된 형태여야 한다.
편의를 위해서 다음과 같은 함수를 정의해볼 수 있다: ss[x_]:=Simplify[ExpandAll[x]] 이제 프로그램과 실제 결과들을 비교해보자

22 결과 비교 Tr 𝑇 𝑎 𝑇 𝑏 = 1 2 𝛿 𝑎𝑏 Tr 𝑇 𝑎 𝑇 𝑎 𝑇 𝑏 =0

23 임의의 경우로 확장하여,

24 Part II Various Mathematica packages for particle physicists

25 FeynArts The generation and visualization of Feynman diagrams and amplitudes. Roadmap of FeynArts (ex: 𝐻→𝐽/𝜓 + 𝛾 process) Load FeynArts Create the topologies Insert fields Paint the diagram

26 FeynArts: Results And many other diagrams…

27 FeynRules Implements particle physics models, which are given in the form of a list of fields, parameters, and a Lagrangian. Calculates the underlying Feynman rules and outputs them to a form appropriate for various programs such as FeynArts CalcHep Madgraph Sherpa Whizard

28 FeynRules: Results For example, we can input the effective Lagrangian which describes the effective coupling of 𝐻‐𝐽/𝜓‐γ to get the output appropriate for Madgraph 5. The cross section given by this Madgraph simulation agrees well with the one given in our paper. [PRD 90, (2014)]

29 FIRE Feynman Integral REduction: Mathematica/C++ (version 5)
Automates IBP (Integrate by parts) reduction; finds the master integrals and their coefficients. We use this package to reduce the huge amount of Feynman integrals to a sum of master integrals. For example, 𝐼 𝑛 1 , 𝑛 2 ≡ 1 𝑖 𝜋 𝑑/2 ∫ 𝑑 𝑑 𝑘 1 𝐷 1 𝑛 1 𝐷 2 𝑛 (with 𝐷 1 ≡− 𝑘 2 + 𝑚 2 , 𝐷 2 ≡− 𝑝−𝑘 2 + 𝑚 2 ) can always be reduced to a sum of three master integrals 𝐼 1, 0 , 𝐼 0, 1 , and 𝐼 1, 1 .

30 Loop Integrals 𝐼 𝑛 1 , 𝑛 2 ≡ 1 𝑖 𝜋 𝑑/2 ∫ 𝑑 𝑑 𝑘 1 𝐷 1 𝑛 1 𝐷 2 𝑛 2
𝐼 𝑛 1 , 𝑛 2 ≡ 1 𝑖 𝜋 𝑑/2 ∫ 𝑑 𝑑 𝑘 1 𝐷 1 𝑛 1 𝐷 2 𝑛 2 ∫ 𝑑 𝑑 𝑘≡ −∞ +∞ 𝑑 𝑘 0 −∞ +∞ 𝑑 𝑘 1 ⋯ −∞ +∞ 𝑑 𝑘 𝑑−1 𝐷 1 ≡− 𝑘 2 + 𝑚 2 −𝑖𝜀, 𝐷 2 ≡ − 𝑝−𝑘 2 + 𝑚 2 −𝑖𝜀 𝜀→ 0 + 𝑘= 𝑘 0 , 𝑘 1 ,⋯, 𝑘 𝑑−1 , 𝑑=4−2𝜖 𝑘⋅𝑝≡ 𝑘 0 𝑝 0 − 𝑘 1 𝑝 1 −⋯− 𝑘 𝑑−1 𝑝 𝑑−1

31 FIRE: Results 𝐼 2, 2 = 𝑐 1 ×𝐼 0, 1 + 𝑐 2 ×𝐼 1, 0 + 𝑐 3 ×𝐼(1, 1)

32 Part III Generalized Newton’s Cradle: Making Animations Using Mathematica
Ee and Lee, Am. J. Phys. 83, 110 (2015)

33 Introduction to 1D multiple collision
One-dimensional elastic collisions Total kinetic energy and linear momentum are both conserved. At each collision between 𝐴/𝐵 and 𝐶, 𝑃 𝐴 or 𝐵 + 𝑃 𝐶 before collision = 𝑃 𝐴 or 𝐵 + 𝑃 𝐶 after collision From these conservation laws, we obtain recurrence relations for 𝑃 𝐴 , 𝑃 𝐵 , and 𝑃 𝐶 between 𝑛th collision and 𝑛+1 th collision. These recurrence relations are analytically solvable.

34 Conservation Laws 𝑀 and 𝑚: masses of 𝐴 and 𝐵
Elastic collision 𝑀 and 𝑚: masses of 𝐴 and 𝐵 𝑝 and 𝑘: momenta of 𝐴 and 𝐵 before the collision 𝑝′ and 𝑘′: momenta of 𝐴 and 𝐵 after the collision 𝑝 2 2𝑀 + 𝑘 2 2𝑚 = 𝑝 ′2 2𝑀 + 𝑘 ′2 2𝑚 𝑝+𝑘=𝑝′+𝑘′

35 Equivalence of the elastic collision and the rotational transformation
Let us define a 2D vector as 𝛼 𝑝 𝑘 , where 𝛼≡𝑚/𝑀. From the kinetic energy conservation, we find the norm of 𝛼 𝑝 𝑘 is invariant: 𝑝 2 2𝑀 + 𝑘 2 2𝑚 = 𝑝 ′2 2𝑀 + 𝑘 ′2 2𝑚 𝑝+𝑘=𝑝′+𝑘′ ∴ There is an orthogonal transformation Λ between 𝛼 𝑝 𝑘 and 𝛼 𝑝′ 𝑘′ .

36 Collisions between two identical blocks
In the case of the 1D collisions of three particles, the norm of the following 3-dimensional vector is invariant by the kinetic energy conservation law: 𝛼 𝑝 𝐴 𝛼 𝑝 𝐵 𝑝 𝐶 → 𝛼 𝑝 𝐴 2 +𝛼 𝑝 𝐵 2 + 𝑝 𝐶 2 =𝛼 𝑝′ 𝐴 2 +𝛼 𝑝′ 𝐵 2 + 𝑝′ 𝐶 2 =const.

37 3D Rotational Matrices Collision between 𝐴 and 𝐶
Rotation along the 𝒚-axis by an angle (−𝜃) + Inversion of 𝒛-component Collision between 𝐵 and 𝐶 Rotation along the 𝒙-axis by an angle 𝜃 + Inversion of 𝒛-component

38 Collisions between two identical blocks
The recursion relation of the momenta between the 𝑛th collision of 𝐴 and 𝐶 and the next collision is along the axis 𝛼 (1, 1, 𝛼 ), by an angle 𝜓=2 tan −1 𝛼(2+𝛼) 3D rotational transformation

39 Velocities of the participants
In the same way, we can find the analytic solutions for the blocks and the ball after each 𝑛th collision. Here, 𝑎 𝑛 and 𝑏 𝑛 are the velocities of the block 𝐴 and block 𝐵 after their 𝑛th collision with the ball, respectively. 𝑐 𝑛 and 𝑐 𝑛 ′ are the velocities of the ball after the 𝑛th collision with 𝐴 and 𝐵, respectively. With the initial conditions 𝑎 0 =𝑉, 𝑏 0 = 𝑐 0 ′ =0, we find 𝑎 𝑛 = 𝑉 CM 1+ cos 𝑛𝜓 cos 𝜓 , 𝑏 𝑛 = 𝑉 CM 1+ cos 𝑛 𝜓 cos 𝜓 , 𝑐 𝑛 = 𝑉 CM 1+ sin 𝑛 𝜓 cos 𝜓 , 𝑐′ 𝑛 = 𝑉 CM 1+ sin 𝑛 𝜓 cos 𝜓

40 Total number of collisions
By using these analytic solutions for velocities, we can calculate the total number of collisions. We call 𝑁 𝐴 is the number of collision between the ball and block 𝐴, and 𝑁 𝐵 is between the ball and block 𝐵. If 𝑁 𝐴 is the last collision between 𝐴 and the ball, then 𝑎 𝑁 𝐴 ≤ 𝑐′ 𝑁 𝐴 Similarly, if 𝑁 𝐵 is the last collision between 𝐵 and the ball, 𝑐 𝑁 𝐵+1 ≤ 𝑏 𝑁 𝐵 With the analytic solutions, 𝑁 𝐴 and 𝑁 𝐵 are given by

41 Terminal velocities In this problem, we are particularly interested in the terminal velocities of the particles. With 𝑁 𝐴 and 𝑁 𝐵 , we find 𝑎 𝑡 = 𝑎 𝑁 𝐴 , 𝑏 𝑡 = 𝑏 𝑁 𝐵 , 𝑐 𝑡 =(𝑉− 𝑎 𝑡 − 𝑏 𝑡 )/𝛼, where the terminal velocity of the ball 𝑐 𝑡 is determined by the total momentum conservation of the system. We expect these terminal velocities are functions of the mass ratio 𝛼. Let us investigate their dependence on 𝛼.

42 Results: Magic Mass Ratio 𝜶 𝒌
Terminal velocities: 𝒂 𝒕 𝑨 , 𝒃 𝒕 𝑩 , 𝒄 𝒕 (𝑪) 𝜶=𝒎/𝑴 𝜶 𝒌 : 𝒌th magic mass ratio 𝜷 𝒌 : 𝒌th deficient mass ratio The terminal velocities of the blocks and the ball in unit of the initial velocity 𝑽 of 𝑨 as functions of 𝜶. At 𝜶= 𝜶 𝒌 , the energy and momentum of the incident block 𝑨 are completely transferred to the block 𝑩. Ee and Lee, Am. J. Phys. 83, 110 (2015)

43 List each cut from startTime to finalTime at every oneCutDuration
Mathematica Codes List each cut from startTime to finalTime at every oneCutDuration (for example, in our case, from -0.8 s to 8.2 s and take cuts at every 0.04 s) Transform and export the lists into a mov file.

44 Results: A Generalized Newton’s Cradle
[URL: Results: A Generalized Newton’s Cradle

45 감사합니다


Download ppt "Selective physics applications of Mathematica"

Similar presentations


Ads by Google