STEM 隨筆︰古典力學︰慣性系【一】

300px-Standard_conf

伽利略變換

\begin{bmatrix} x^{\prime} \\ t^{\prime} \end{bmatrix} = \begin{pmatrix} 1 & -v \\0 & 1 \end{pmatrix} \begin{bmatrix} x \\ t \end{bmatrix}

220px-Light_cone

時空圖

Galilean_transform_of_world_line

Lorentz_transforms_2.svg

勞侖茲變換

\begin{bmatrix} x^{\prime} \\ t^{\prime} \end{bmatrix} =  \frac{1}{\sqrt{1 - {(\frac{v}{c})}^2}}  \begin{pmatrix} 1 & -v \\ -\frac{v}{c^2} & 1 \end{pmatrix} \begin{bmatrix} x \\ t \end{bmatrix}

220px-Hyperbo

300px-Minkowski_lightcone_lorentztransform_inertial.svg

300px-Minkowski_lightcone_lorentztransform.svg

Lorentz_transform_of_world_line

運動是第一義』它意指什麼的呢?如果考察人們對『時間』的『認識』,總離不開對物體『運動』的『觀察』。之前在《時間是什麼??》一文裡,我們談到了『古典物理』是以『牛頓第一運動定律』所指稱的『慣性座標系觀察者』之『時空觀』為『基礎』的。『牛頓』假設『存在』一個對所有的『慣性座標系』中『觀察者』都『相同』並且『恆定恆速』的『時間之流』,自此『時間』就成為『第一義』的了。也就是說如果『□觀察者』說『兩事件』『同時發生』,『○觀察者』也講那『兩事件』『同時發生』。因而『第一運動定律』──  假使沒有外力作用,靜者恆靜,動者作等速直線運動,在『第二運動定律』的強大光芒『覆照』下,反倒顯得晦暗不明的了,宛如是個『力等於零』的『特例』一般。於是『速度v 的『定義v = \frac{\Delta x}{\Delta t} 與『相對速度』是 v 的『』個『慣性座標系』彷彿是『同義語』。殊不知這個『相對速度』是『』個『觀察者』之『互見』,而且『運動方向』相反,並不能『自見』的啊!要是說果真能夠『自見』又豈會自己『無法度量』的呢?於是乎有『無窮多』個『慣性觀察者』各以『無限種』之『相對速度』『運動』,然而他們所『觀察到』的『自然律』都是一樣的,這就是『慣性』的『本義』。其實『觀察者』之『概念』有一點像『抽象擬人化』的說法,比方說,一個『對我而言』運動中的『粒子』,在『粒子』自己的『慣性座標系』裡,『自然律』一樣的『適用』。如此『對我而言』可用『我的時空』將那個『粒子』標示在『我的時空圖(x_{\Box}, t_{\Box}) 上,一個與『粒子偕行』相對『靜止』的『觀察者』,就把『我的運動』畫在『他的時空圖(x_{\bigcirc}, t_{\bigcirc}) 上的了。這個『互為動靜』的『論述』就是『相對運動』的『實質』,並不存在『絕對運動』的啊。所以『我說』『那個粒子』在 t_{p^{-}}時刻』『接近x_{p^{-}}位置』,當 t_p』『到達x_p』,於 t_{p^{+}}之後』『離開x_{p^{+}}之地』,『』將此『等速運動』歸之於『粒子』的『運動慣性』;那個與『粒子偕行』相對『靜止』的『觀察者』亦將此『等速運動』歸之於『』的『運動慣性』,這就是『運動』之『慣性』的『第一義』。所謂『飛鳥之景未嘗動也,鏃矢之疾而有不行不止之時』是不了解『慣性之意』『跳躍』於『互為動靜』之間,事實上對『任一方』而言,那個『相對運動』都是『存在的』,根本不會有『瞬時速度』存不存在的問題,所以才名之為『慣性定律』︰ v = \frac{- \delta x}{- \delta t} = \frac{ \delta x}{ \delta t}  = \frac{+ \delta x}{+ \delta t},或者比喻的說︰在牛頓力學裡,沒有任何東西能夠阻擋『恆定恆速』之『時間之流』的啊!!

當『愛因斯坦』假設了『光速』對所有的『慣性觀察者』都是『一樣的』之後,引申出了『同時性的破壞』、『運動的鐘會變慢』、『運動的尺會縮短』…等等的『大哉論』,人們開始恍然大悟所謂的『相對』、所見的『運動』…之種種必須以『量測方法』為依據,面對『大自然』的『事實』並沒有『純粹思辯』所得之理『一定對』之『位置』的吧!

─── 《【SONIC Π】電聲學之電路學《四》之《 !!!! 》下

 

面對『基元概念』,說文解字往往不足矣!

咀嚼思辨可為其法乎?

Inertial frame of reference

An inertial frame of reference, in classical physics, is a frame of reference in which bodies, whose net force acting upon them is zero, are not accelerated; that is they are at rest or they move at a constant velocity in a straight line.[1] In analytical terms, it is a frame of reference that describes time and space homogeneously, isotropically, and in a time-independent manner.[2] Conceptually, in classical physics and special relativity, the physics of a system in an inertial frame have no causes external to the system.[3] An inertial frame of reference may also be called an inertial reference frame, inertial frame, Galilean reference frame, or inertial space.[citation needed]

All inertial frames are in a state of constant, rectilinear motion with respect to one another; an accelerometer moving with any of them would detect zero acceleration. Measurements in one inertial frame can be converted to measurements in another by a simple transformation (the Galilean transformation in Newtonian physics and the Lorentz transformation in special relativity). In general relativity, in any region small enough for the curvature of spacetime and tidal forces[4] to be negligible, one can find a set of inertial frames that approximately describe that region.[5][6]

In a non-inertial reference frame in classical physics and special relativity, the physics of a system vary depending on the acceleration of that frame with respect to an inertial frame, and the usual physical forces must be supplemented by fictitious forces.[7][8] In contrast, systems in non-inertial frames in general relativity don’t have external causes, because of the principle of geodesic motion.[9] In classical physics, for example, a ball dropped towards the ground does not go exactly straight down because the Earth is rotating, which means the frame of reference of an observer on Earth is not inertial. The physics must account for the Coriolis effect—in this case thought of as a force—to predict the horizontal motion. Another example of such a fictitious force associated with rotating reference frames is the centrifugal effect, or centrifugal force.

……

Background

A brief comparison of inertial frames in special relativity and in Newtonian mechanics, and the role of absolute space is next.

A set of frames where the laws of physics are simple

According to the first postulate of special relativity, all physical laws take their simplest form in an inertial frame, and there exist multiple inertial frames interrelated by uniform translation: [18]

Special principle of relativity: If a system of coordinates K is chosen so that, in relation to it, physical laws hold good in their simplest form, the same laws hold good in relation to any other system of coordinates K’ moving in uniform translation relatively to K.

— Albert Einstein: The foundation of the general theory of relativity, Section A, §1

This simplicity manifests in that inertial frames have self-contained physics without the need for external causes, while physics in non-inertial frames have external causes.[3] The principle of simplicity can be used within Newtonian physics as well as in special relativity; see Nagel[19] and also Blagojević.[20]

The laws of Newtonian mechanics do not always hold in their simplest form…If, for instance, an observer is placed on a disc rotating relative to the earth, he/she will sense a ‘force’ pushing him/her toward the periphery of the disc, which is not caused by any interaction with other bodies. Here, the acceleration is not the consequence of the usual force, but of the so-called inertial force. Newton’s laws hold in their simplest form only in a family of reference frames, called inertial frames. This fact represents the essence of the Galilean principle of relativity:
The laws of mechanics have the same form in all inertial frames.

— Milutin Blagojević: Gravitation and Gauge Symmetries, p. 4

In practical terms, the equivalence of inertial reference frames means that scientists within a box moving uniformly cannot determine their absolute velocity by any experiment (otherwise the differences would set up an absolute standard reference frame).[21][22]According to this definition, supplemented with the constancy of the speed of light, inertial frames of reference transform among themselves according to the Poincaré group of symmetry transformations, of which the Lorentz transformations are a subgroup.[23] In Newtonian mechanics, which can be viewed as a limiting case of special relativity in which the speed of light is infinite, inertial frames of reference are related by the Galilean group of symmetries.

Absolute space

Newton posited an absolute space considered well approximated by a frame of reference stationary relative to the fixed stars. An inertial frame was then one in uniform translation relative to absolute space. However, some scientists (called “relativists” by Mach[24]), even at the time of Newton, felt that absolute space was a defect of the formulation, and should be replaced.

Indeed, the expression inertial frame of reference (German: Inertialsystem) was coined by Ludwig Lange in 1885, to replace Newton’s definitions of “absolute space and time” by a more operational definition.[25][26] As translated by Iro, Lange proposed the following definition:[27]

A reference frame in which a mass point thrown from the same point in three different (non co-planar) directions follows rectilinear paths each time it is thrown, is called an inertial frame.

A discussion of Lange’s proposal can be found in Mach.[24]

The inadequacy of the notion of “absolute space” in Newtonian mechanics is spelled out by Blagojević:[28]

  • The existence of absolute space contradicts the internal logic of classical mechanics since, according to Galilean principle of relativity, none of the inertial frames can be singled out.
  • Absolute space does not explain inertial forces since they are related to acceleration with respect to any one of the inertial frames.
  • Absolute space acts on physical objects by inducing their resistance to acceleration but it cannot be acted upon.
— Milutin Blagojević: Gravitation and Gauge Symmetries, p. 5

The utility of operational definitions was carried much further in the special theory of relativity.[29] Some historical background including Lange’s definition is provided by DiSalle, who says in summary:[30]

The original question, “relative to what frame of reference do the laws of motion hold?” is revealed to be wrongly posed. For the laws of motion essentially determine a class of reference frames, and (in principle) a procedure for constructing them.

 

或能借尚不熟悉之程式庫反覆嘗試表達體會耶!?

 

 

 

 

 

 

 

 

 

STEM 隨筆︰古典力學︰向量【五】

galileo

titlepage1638

GalileoInclinedPlane00

Galileo's own notes on the rolling ball experiment.

How Galileo’s spy glass upended science

galileo-moons

Graphic decription of Venus phases

伽利略比薩斜塔

人類天性中的直覺是認識事物、判斷是非和分辨真假非常重要的能力,但是它通常是『素樸的』,所以『概念的分析』也往往是一件『必要的』事。雖然面對『錯綜複雜』的現象,未經粹煉的『思想』容易誤入歧途 ,但是『直覺理解』的事物,常常流於『想當然耳』之過失。伽利略老年著作了一本『Discorsi e dimostrazioni matematiche』Mathematical Discourses and Demonstrations,據說是『思想實驗』的起始處︰
……
Salviati︰ If then we take two bodies whose natural speeds are different, it is clear that on uniting the two, the more rapid one will be partly retarded by the slower, and the slower will be somewhat hastened by the swifter. Do you not agree with me in this opinion?

Simplicio.︰You are unquestionably right.

Salviati.︰But if this is true, and if a large stone moves with a speed of, say, eight while a smaller moves with a speed of four, then when they are united, the system will move with a speed less than eight; but the two stones when tied together make a stone larger than that which before moved with a speed of eight. Hence the heavier body moves with less speed than the lighter; an effect which is contrary to your supposition. Thus you see how, from your assumption that the heavier body moves more rapidly than ‘ the lighter one, I infer that the heavier body moves more slowly.
……
這段對話用著想像分析、邏輯推導、討論演示著亞里斯多德的『重的東西動得快』的錯誤。概略的說,如果□與○二物重量不同,往同一個方向運動,□也跑得比較快,設想用一條繩索將這兩者連在一起,那快的應該會被拖慢,而慢的將會被拉快的吧。假使這是件事實,這樣『□+○』整體來看不是更重的東西嗎?難道它不與『重的東西動得快』矛盾的嗎??

古希臘哲學家埃利亞的芝諾 Ζήνων 宣稱︰即使是參與了特洛伊戰爭古希臘神話中的阿基里斯 Achilles ── 希臘第一勇士 ── 也追不上領先一步之烏龜,因為

動得再慢的物體也不可能被動得更快的物體追上。因為追逐者總得先抵達被逐者上個出發點,然而被逐者此刻早已經前往下個所在點。於是被逐者永遠在追逐者之前一步。

運動』的概念即使能直覺掌握,卻從來都不是簡單的,就像所有瞬刻都可以說它是『靜止』的『箭矢』,又為什麼不能歸結出『動矢不動』的結論的呢??

─── 《思想實驗!!

 

如果有人說︰

‧ 物體在空間裡運動。

同時也又說︰

‧ 物體靜止於空間中。

 

,彼人不會『矛盾』嗎?

難到所謂『動』、『靜』無有『觀察者』乎??

否則『相對運動』之『相對』是對誰所說的耶!

果真『概念跳躍』,能使某物既『動』且『靜』嘛!!

若不知『靜』將如何言『動』勒??!!故而自己生『參考系』 Reference Frame 借『靜』言『動』念頭哩!!??

何不嘗試分解『觀察者』的『空間量度之點』以及度量物體『瞬刻所在位置』大哉問矣〒

因為就算知道『點』之『屬性』與『方法』後︰

Kinematics (Docstrings)

class sympy.physics.mechanics.point.Point(name)

This object represents a point in a dynamic system.

It stores the: position, velocity, and acceleration of a point. The position is a vector defined as the vector distance from a parent point to this point.

‘a1pt_theory’,
‘a2pt_theory’,
‘acc’,
‘locatenew’,
‘name’,
‘pos_from’,
‘set_acc’,
‘set_pos’,
‘set_vel’,
‘v1pt_theory’,
‘v2pt_theory’,
‘vel’

……

 

仍得思考面對零元素

Zero element

In mathematics, a zero element is one of several generalizations of the number zero to other algebraic structures. These alternate meanings may or may not reduce to the same thing, depending on the context.

………

 

呦,或終入於概念體系內◎

 

 

 

 

 

 

 

 

 

STEM 隨筆︰古典力學︰向量【四下】

故而為了方便講談之故,依據遵循PyDy 推薦範例

Tutorials

We have a couple of tutorials. The human standing tutorial takes you through an entire workflow for a dynamics and control problem and is a good place to start.

……

 

的寫法︰

/pydy-tutorial-human-standing

 Introduction

This is the material for a tutorial on analyzing multibody dynamics with scientific Python tools. It was first given as “Simulation and Control of Biomechanical Systems with Python” at the Midwest American Society of Biomechanics Regional meeting on March 4th, 2014 in Akron, Ohio. Modified versions have subsequently been given at PYCON2014, SCIPY2014, and SCIPY2015.

The tutorial covers these main topics:

  • Symbolic derivation of equations of motion for multibody systems.
  • Numerical simulation of the resulting system.
  • 3D visualization of the motion of the system.
  • Optimal feedback control for stabilization.

The attendees will be exposed to various functionality of these Python tools:

License

All materials herein are licensed under Create Commons Attribution 4.0.

Versions

A new version of the tutorial is typically created each time the tutorial is given to incorporate feedback from the attendees and for software updates. These versions can be downloaded from:

https://github.com/pydy/pydy-tutorial-human-standing/releases

Example Problem

The tutorial will go through the PyDy workflow in small steps. At the end the students should have a working 3-link 2D inverted pendulum model of a human that can be used for balancing studies. The free body diagram of the model is shown below:

notebooks/figures/human_balance_diagram.png

………

 

開始後續旅程也!

若遇難察的『文件』及不知『物件方法』之處,還請善用

‧ help( □ □ )

‧ dir( ○ ○ )

矣?

 

或將能掌握的更快的乎!!??

ReferenceFrame

‘ang_acc_in’,
‘ang_vel_in’,
‘dcm’,
‘indices’,
‘latex_vecs’,
‘name’,
‘orient’,
‘orientnew’,
‘pretty_vecs’,
‘set_ang_acc’,
‘set_ang_vel’,
‘str_vecs’,
‘variable_map’,
‘varlist’,
‘x’,
‘y’,
‘z’

……

 

Vector

‘applyfunc’,
‘args’,
‘cross’,
‘diff’,
‘doit’,
‘dot’,
‘dt’,
‘express’,
‘magnitude’,
‘normalize’,
‘outer’,
‘separate’,
‘simp’,
‘simplify’,
‘subs’,
‘to_matrix’

……

 

 

 

 

 

 

 

 

 

STEM 隨筆︰古典力學︰向量【四上】

如果平鋪直敘,此時應該以  PyDy 的

Beginner’s Tutorial

Once you have SymPy installed on your machine it is time to explore the how it operates. The first step is to open up your python interpreter. This varies depending on your work style, but the simplest way is to type python in a command prompt:

………

 

,來認識『參考系』以及『向量運算』也。

之所以用 ipython3 ,假借 PyDy 概觀︰

Commands

What follows is a short rundown of the commands used in PyDy. All commands that you would type in an interactive session are preceded by ‘’>>> ‘’.

 

一行一行演練矣︰

SymPy Commands

In [1]: from sympy import *

This imports all of the classes and functions in the ‘’SymPy’’ package. Now we can do some symbolic math:

 

In [2]: x, y, z = symbols('x y z')

In [3]: e = x**2 + y**2 + z**2

In [4]: print(e)
x**2 + y**2 + z**2

In [5]: diff(e, x)
Out[5]: 2*x

This creates 3 symbols, x, y, and z, and illustrates how to form a SymPy expression and take its derivative.

 

Mechanics commands

What follows is a list of objects you can create, and functions you can run. The first step is to import the functions and classes related to mechanics:

In [6]: from sympy.physics.mechanics import *

Classes

Here is a list of classes:
  • ReferenceFrame
  • Point
  • Vector – not created directly
  • Dyadic – not created directly
  • Particle
  • RigidBody
  • KanesMethod

You can call ‘’help(class)’’ to see the help entry for ‘’class’‘. For example, ‘’help(ReferenceFrame)’’ to see the help entry for ‘’ReferenceFrame’‘.

Code Snippets

Here are some brief usage examples of common functions and classes.

In [7]: q1, q2 = dynamicsymbols('q1 q2')

Creates two time varying symbols, ‘’q1’’ and ‘’q2’‘

 

In [8]: N = ReferenceFrame('N')

This creates a new reference frame named N.

 

In [9]: N.x
Out[9]: N.x

Access to the ‘’x’’ basis vector in the ‘’N’’ reference frame

 

In [10]: a = N.x + N.y

Creates a new vector, ‘’a’‘, which is the sum of the ‘’x’’ and ‘’y’’ basis vectors in the ‘’N’’ reference frame.

 

In [11]: P = Point('P')

Creates a point named P.

 

In [12]: K = KanesMethod(N)
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-12-358545fb2b9d> in <module>()
----> 1 K = KanesMethod(N)

TypeError: __init__() missing 2 required positional arguments: 'q_ind' and 'u_ind'

FIXME Creates a new ‘’KanesMethod’’ object, used to generate Fr+FrFr+Fr∗, with ‘’N’’ as the inertial reference frame.

 

In [13]: D = RigidBody('BodyD', masscenter=P, frame=N, mass=2, inertia=I)
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-13-8cc508203a17> in <module>()
----> 1 D = RigidBody('BodyD', masscenter=P, frame=N, mass=2, inertia=I)

/usr/lib/python3/dist-packages/sympy/physics/mechanics/rigidbody.py in __init__(self, name, masscenter, frame, mass, inertia)
     57         self.mass = mass
     58         self.frame = frame
---> 59         self.inertia = inertia
     60         self.potential_energy = 0
     61 

/usr/lib/python3/dist-packages/sympy/physics/mechanics/rigidbody.py in inertia(self, I)
    151     @inertia.setter
    152     def inertia(self, I):
--> 153         if not isinstance(I[0], Dyadic):
    154             raise TypeError("RigidBody inertia must be a Dyadic object.")
    155         if not isinstance(I[1], Point):

TypeError: 'ImaginaryUnit' object does not support indexing

Creates a rigid body container and defines the center of mass location, the body fixed frame, the mass and the inertia.

 

In [14]: Par = Particle()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-14-0e3ee5456180> in <module>()
----> 1 Par = Particle()

TypeError: __init__() missing 3 required positional arguments: 'name', 'point', and 'mass'

Creates a new particle container.

Functions

Here is a list of functions:
  • mprint
  • inertia
  • mprint
  • mpprint
  • mlatex
  • cross
  • dot
  • outer
  • kinematic equations

On each of them, you can call ‘’help(function)’’ to see the help entry for ‘’function’‘. For example, ‘’help(inertia)’’ will describe what the ‘’inertia’’ function is and how to use it.

Code Snippets

In [15]: mechanics_printing()

Sets the default printing to use the mechanics printing.

 

In [16]: mprint(q1)
q1

Prints ‘’q1’’ using the mechanics printer; use if mechanics_printing is not on.

 

In [17]: I = inertia(N, 1, 2, 3)

Creates an inertia dyadic in the frame N with principle measure numbers of 1, 2, and 3.

 

In [18]: mprint(kinematic_equations([u1,u2,u3], [q1,q2,q3], 'body', '313'))
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-18-9e27c73cfb8e> in <module>()
----> 1 mprint(kinematic_equations([u1,u2,u3], [q1,q2,q3], 'body', '313'))

NameError: name 'u1' is not defined

Prints out kinematic differential equations which relate the body fixed angular velocity measure numbers ‘’u1, u2, u3’’ to the time derivatives of the coordinates ‘’q1, q2, q3’‘, assuming a 313 (ZXZ) body fixed rotations.

 

希望讀者先知

‧ 軟件版本自有前後

‧ 文件時期恐或不同

‧ 派生環境各安其好

‧ ………

 

所謂學習乙事,實不宜囫圇吞棗乎◎

 

 

 

 

 

 

 

 

 

STEM 隨筆︰古典力學︰向量【三】

為什麼不講 Sympy 古典力學向量用法,卻先安裝起

sudo pip3 install pydy 耶?

PyDy: Multibody Dynamics with Python

Introduction

Welcome to the PyDy project website. PyDy, short for Python Dynamics, is a both a workflow that utlizes an array of scientific tools written in the Python programming language to study multibody dynamics and a set of software packages that help automate and enhance the workflow. The core of this toolset is the SymPy mechanics package which generates symbolic equations of motion for complex multibody systems and PyDy which extends the SymPy output to the numerical domain for simulation, analyses, and visualization. PyDy builds on the popular scientific Python stack such as NumPy, SciPy, IPython, matplotlib, Cython, and Theano.

 

※ 依發行文件驗證安裝

 

PyDy Package’s documentation!

This is the central page for all PyDy’s Documentation.

PyDy

Latest Released Version anaconda Latest documentation travis-build appveyor gitter

PyDy, short for Python Dynamics, is a tool kit written in the Python programming language that utilizes an array of scientific programs to enable the study of multibody dynamics. The goal is to have a modular framework and eventually a physics abstraction layer which utilizes a variety of backends that can provide the user with their desired workflow, including:

  • Model specification
  • Equation of motion generation
  • Simulation
  • Visualization
  • Publication

We started by building the SymPy mechanics package which provides an API for building models and generating the symbolic equations of motion for complex multibody systems. More recently we developed two packages, pydy.codegen and pydy.viz, for simulation and visualization of the models, respectively. This Python package contains these two packages and other tools for working with mathematical models generated from SymPy mechanics. The remaining tools currently used in the PyDy workflow are popular scientific Python packages such as NumPy,SciPy, IPython, and matplotlib (i.e. the SciPy stack) which provide additional code for numerical analyses, simulation, and visualization.

……

 

因為豐富之文件以及範例,利於學習也!

Documentation

General

If you are familiar with scientific computing and symbolic manipulation with Python you should start with the SymPy vector/mechanics documentation and the PyDy documentation:

If you aren’t familiar with scientific computing with Python there are many sources to learn. You can start with the Python programming language itself, with the canonical source being thePython Documentation. The SciPy Lectures are a great intro to scientific computing with Python. Finally, to learn about how to do symbolic manipulation with SymPy, check out the SymPy Documentation, especially the tutorial.

Tutorials

We have a couple of tutorials. The human standing tutorial takes you through an entire workflow for a dynamics and control problem and is a good place to start.

Examples

There are additionally a variety of examples which can be found here:

………

 

打算閱讀 Kane 先生

AUTHOR
Kane, Thomas R.; Levinson, David A.
ABSTRACT
This textbook is intended to provide a basis for instruction in dynamics. Its purpose is not only to equip students with the skills they need to deal effectively with present-day dynamics problems, but also to bring them into position to interact smoothly with those trained more conventionally.

───

 

著作者,也可藉

pydy/examples/

These are examples of using PyDy to derive, simulate, and study the motion of classical dynamic systems. The equations of motion for the systems are typically derived with SymPy Mechanics in symbolic form and then numerical analyses is done with PyDy and various other tools in the SciPy Stack. Although some examples also show cross language support for numerical analyses.

Each folder contains the files for one example. To contribute an example, make a pull request with a new directory. The new folder should include, at the minimum, a README explaining the problem, a figure (preferably SVG), and the source code for the example either in script form or as an IPython notebook. There should also be a file named run.py that executes the example.

 

pydy/examples/Kane1985/

Chapter2 Fixed unused imports in code and examples.
Chapter3 Fixed unused imports in code and examples.
Chapter4 Reverted uninentionally removed but needed imports.
Chapter5 Fixed unused imports in code and examples.
Chapter6 Fixed unused imports in code and examples.

 

多練習熟悉其法乎◎