全ての文を和訳すると歌詞が持つ本来の意味や想いの妨げになるため、一部の英語表現しか取り上げないことをご了承ください。
Contents SHOW
When you were here before
Couldn’t[1]I couldn’t の略 look you in the eye
You’re just like an angel
Your skin makes me cry
You float like a feather
in a beautiful world
I wish I was special
You’re so fuckin’ special
But I’m a creep
I’m a weirdo
What the hell am I doing here?
I don’t belong here
I don’t care if it hurts
I wanna have control
I want a perfect body
I want a perfect soul
I want you to notice
When I’m not around [2] … Continue reading
You’re so very special
I wish I was special
But I’m a creep
I’m a weirdo
What the hell am I doing here?
I don’t belong here
Oh, oh
She’s running out again
She’s running out
She run, run, run, run
Run
Whatever makes you happy
Whatever you want
You’re so fuckin’ special
I wish I was special
But I’m a creep
I’m a weirdo
What the hell am I doing here?
I don’t belong here
I don’t belong here
look someone in the eye
Cambridge Dictionary
to talk to someone in an honest way that shows no doubts:
直訳すると「瞳をのぞいて」となりますが、大抵は「〇〇の目をじっと見て、正直に答える」という意味で使われます。
例: Look me in the eye, and tell me that you don’t lie to me — “嘘はついてないと私の目を見て(正直に)言って”
似たような表現に以下のような表現があります。
目にまつ毛が入ったかもしれないから見てほしい、と言うときは”I think I’ve got something in the eye. Can you look at right eye?”
I wish I wasは「私が〇〇だったら」という意味です。
このI wish someone [動詞の過去形]という形は「(現実ではそうではないけど)こうだったらいいのに」という意味でよく使われます。
どちらも「変な人」を表す言葉なのですが、微妙に意味が違うようです。
creep
Cambridge Dictionary
- someone who tries to make someone more important like them by being very polite and helpful in a way that is not sincere
- an unpleasant person, especially a man
「お偉いさんに媚び諂う人」や、何を考えているのか分からなかったりじっとこっちを見てくるような「気持ち悪い男性」という意味です。この歌詞では後者の意味で使われているはずです。
weirdo
Cambridge Dictionary
a person who behaves strangely:
こちらは「変な振る舞いをする人」という意味です。強いて言うなら「あの人体育の授業中にノート撮ってるよ、変な人」「あの女の人顔はすごいタイプなんだけど趣味は虫取りなんだって、変な人」みたいな感じですかね。
あくまでも”変”ってのは主観なので、そこまで深く考える必要もないのかもしれません。
因みに複数形はweirdosです。
belong toは「〇〇の財産/持ち物である」「〇〇の一員である」という意味で使われます。
belongには上記のような意味があるので、I don’t belong hereでは状況に応じて以下のような意味になります。
んー、卑屈!!
後に続く言葉が名詞ならbelong to 〇〇を、hereならbelong hereとなるのは、「そこへ行く」をgo to thereと言わずにgo thereと言うのと同じ理由です。
It hurtsだけ見ると、「そこが痛む」とも取れますし「それが(僕を)傷つける」のような意味となります。
今回の歌詞では、”I don’t care if it hurts” 「僕が傷ついても構わない」という意味になります。
hurtは、日本人の私たちにとって主語がどれだかわかりにくい動詞になっているので、例文で「結構いろんな状況で使えるんだなー」ということだけでも感じ取ってみてください。
I’m around は「そばにいる」という意味になります。
I’m around hereなら「ここら辺にいる/住んでいる」のような意味になりますし、I’m around youなら「君のそばにいる」という意味になります。
この歌詞では”When I’m not around”なので、「そばにいない時」というのが自然な訳となります。
因みに、be around が日常生活で使われるときは「いる」の他に「存在している」「営業している」のような意味を持ちます。
We’re running out of time! — “時間がもう無いよ!”のように、「何かが尽きる」と言う時にもrunning outという表現は使われますが、ここは普通に「彼女が部屋から飛び出していく」という意味にもとれます。
]]>
閉bì上shàng眼yǎn深shēn呼hū吸xī感gǎn受shòu著zhe Close your eyes and take a deep breath to feel it 看kàn似sì簡jiǎn單dān的de疼té ... ]]>
閉上眼深呼吸感受著
Close your eyes and take a deep breath to feel it
看似簡單的疼痛
Seemingly simple pain
記憶中的午後雨下著
The afternoon rain in my memory
忍不住淚一直流
I couldn’t help but cry
浩瀚宇宙渺小的你我
You and I are small in the vast universe
別眷戀哀愁(已過去就別再回頭)
Don’t be sad (Don’t look back)
太陽終究照亮黑暗角落
The sun will eventually light up the dark corners
踏著雨後那道彩虹
With the rainbow after the rain
找回遺失心中最初最簡單的自由
Find the lost heart of the most simple freedom
發現不過轉個念頭
Discovery is but a second thought
笑容瞬間融化憂愁我快樂的生活
The smile melts in a moment the sorrow my happy life
張開手望天空享受著
Open your hands and enjoy the sky
雨後天晴的陽光很暖和
The sunny day was warm after the rain
微微風吹向我笑著說
A little wind blowing to me said with a smile
迎接全新的自我
Embrace your new self
浩瀚宇宙渺小的你我
You and I are small in the vast universe
別眷戀哀愁(已過去就別再回頭)
Don’t be sad (Don’t look back)
太陽終究照亮黑暗角落
The sun will eventually light up the dark corners
踏著雨後那道彩虹
With the rainbow after the rain
找回遺失心中最初最簡單的自由
Find the lost heart of the most simple freedom
發現不過轉個念頭
Discovery is but a second thought
笑容瞬間融化憂愁我快樂的生活
The smile melts in a moment the sorrow my happy life
閃爍著星光的夜晚
A starry night
許下心願我會勇敢
Make a wish that I’ll be brave
踏著雨後那道彩虹
With the rainbow after the rain
找回遺失心中最初最簡單的自由
Find the lost heart of the most simple freedom
發現不過轉個念頭
Discovery is but a second thought
笑容瞬間融化憂愁我快樂的生活
The smile melts in a moment the sorrow my happy life
就是我快樂的生活
Is my happy life
]]>
私が大好きな音楽家、Andrew W.K.の5thアルバム「You’re Not Alone」の全曲の歌詞を紹介します。英語初学者の方が躓きそうな英語表現はルビとして振っています。 残念ながらApple MusicやiT ... ]]>
私が大好きな音楽家、Andrew W.K.の5thアルバム「You’re Not Alone」の全曲の歌詞を紹介します。
英語初学者の方が躓きそうな英語表現はルビとして振っています。
残念ながらApple MusicやiTunes、Spotifyで聴くことはできないので、私はAmazonでCDを買いました。。
Contents SHOW
Party…
Party…
Party…
「音楽は生きがい」
And I’ll bet you never thought you’d live to see the day
Where we could play with joy and laughter
And I’ll bet you never thought we’d make it all the way
And we could stay forever after
But I guess we proved you wrong
And I guess we showed ‘em all
We paid our dues
Getting up off the floor[1]pay one’s dueには「欲しいもののために(嫌なことを)実行する」という意味もあるので、「目的のために挫折から立ち直った」という意味となります。
And I guess we proved you wrong
And I guess we showed ‘em all
So much to lose
Walking right out the door[2]もし外の世界に飛び出したら失うものがたくさんある
Music is worth living for!
Music makes life worth living
Music is worth living for
Music is worth living for!
Music makes life worth living
Music is worth living for
A higher power that I can’t deny
Music makes me feel so high
Like the glorious sound of God
Coming down like a lightning rod
Give me the will to love
So below and as above [3]As above, so below: 上なる如く、下もまた然り
The only way that I’ll survive
Music makes me want to stay alive
And I’ll bet you never thought we had the strength inside
Yeah, we almost died and we kept on going
And I’ll bet you never thought the pain was justified
But we found our pride and we kept it growing
But I guess we proved you wrong
And I guess we showed ‘em all
We did our best
We played until our hands were sore
And I guess we proved you wrong
And I guess we showed ‘em all
Never gunna rest
We’re always gunna go for more
Music is worth living for!
Music makes life worth living
Music is worth living for
Music is worth living for!
Music makes life worth living
Music is worth living for
A higher power that I can’t deny
Music makes me feel so high
Like the glorious sound of God
Coming down like a lightning rod
Give me the will to love
So below and as above
The only way that I’ll survive
Music makes me want to stay alive
ever againは、主にneverと一緒に使って「もう2度としない」を表すための強調表現です。
People say that we’re born with a purpose
And that we’re meant to make our dreams come true
But if our dreams start to crumble they can bury us
Got to dig yourself out and push on through
They say that nobody changes
But I’m living proof that they do
Because I found the answer
And you can find the answer too
They made me think I was crazy
And that the pain was here to stay
But now that I found the answer
I’m never ever gunna lose my way
Ever again
Ever again
I’ll admit there were times I was terrified
I honestly thought I wouldn’t survive
But I learned a lot from my trip to the dark side
And from here on out I’ll keep my light alive
They say that nobody changes
But I’m living proof that they do
Because I found the answer
And you can find the answer too
They made me think I was crazy
And that the pain was here to stay
But now that I found the answer
I’m never ever gunna lose my way
Ever again
Ever again
Ever again
Ever again
Ever again
Ever again
Ever again
Ever again
I don’t know the truth
I don’t know the way
I don’t know what to think
I don’t know what to say
Yeah, but that’s alright
That’s OK
I don’t know anything
I don’t know the law
Or how to disobey
How to keep it cool
Or how to hip-hooray [4]正確にはHip Hip Hooray
Yeah, but that’s alright
That’s OK
I don’t know anything
I don’t know, I don’t know
I don’t know, I don’t know
I don’t know the plan
Just disarray
I just lost the plot
I got lead astray
Yeah, but that’s alright
That’s OK
I don’t know anything
I don’t know the Christ
Don’t know how to pray
How to face the world
Can’t even face the day
Hey, but that’s alright
Yeah, that’s OK
I don’t know anything
I don’t know, I don’t know
I don’t know, I don’t know
I don’t know the truth
I don’t know the way
I don’t know what to think
I don’t know what to say
But that’s alright
Yeah, that’s OK
I don’t know anything
I don’t know, I don’t know
I don’t know, I don’t know
I don’t know
If you ever feel like something is very, very wrong
Wrong with life, wrong with yourself
I understand, I have that feeling too
But in actuality that feeling isn’t wrong
That feeling is just being human
That intense feeling inside is the feeling of existing
Of being alive, of being a person
It’s a mountain to climb, it’s a test to pass
It’s a challenge we are ultimately worthy of
And rather than dread or resent this challenge
We can embrace it, we can learn from it
And we can celebrate it
Life is very intense
But that doesn’t mean it’s bad
Understanding this is what partying is all about
That is what partying is all about
⇒ それこそがパーティーの全て ⇒ パーティーの全てはThat
Understanding this is what party is all about
⇒ それを理解することこそが、パーティーの全て
Party mindset all year around
And where the party’s at you know I’ll be found
Don’t need a bar-b-q and don’t need a beach
I’m keeping clarity just out of reach
Party mindset all year long
And at your party I’ll be singing this song
Don’t need a holiday or special event
Time in oblivion is time well spent
I realized long ago
That all of life is one last waltz
I’d had enough of feeling low
I realized everything I knew was false
So I killed the place inside
That told me feeling good was a crime
So glad that place has finally died
Now here’s to feeling good all of the time
Here’s to a party mindset all year round
And where the party’s at you know I’ll be found
Don’t need a bar-b-q and don’t need a beach
I’m keeping clarity just out of reach
I’ll keep a party mindset all year long
And at your party I’ll be singing this song
Don’t need a holiday or special event
Time in oblivion is time well spent
(Don’t need no friends)
Don’t need no friends to get me by
I couldn’t figure out that scene
No means or ends to justify
Just a one-man party machine
The best way to win this game
Is simply not to play along
And disobey without no shame
Remember everything you know is wrong
You know I got a party mindset all year round
And where the party’s at you know I’ll be found
Don’t need a bar-b-q and don’t need a beach
I’m keeping clarity just out of reach
I’ll keep party mindset all year long
And at your party I’ll be singing this song
Don’t need a holiday or special event
Time in oblivion is time well spent
Oh
So-oh-oh-oh, so magical
So-oh-oh-oh, so magical
The child was born
Into a world of love
Into a world of pain
Into the night
Into the sun and rain
The child was torn
Between the black and white [5]be torn between A and B: どちらを選ぶか悩まされる、板挟みになる
Between the wrong and right
Between despair
And pure delight
The child of mysteries
The child of lies
The party never dies
The child is found
Beyond the rise and fall
Beyond the in and out
Beyond our faith
And all our doubt
The child is crowned
In a halo of gold
A vision to behold
Life unrestrained
And uncontrolled
The child of mysteries
The child of lies
The party never dies
We won’t give up on you
Won’t let you down
If you need a friend
If you’re feeling sad
If you’re feeling low
(If you’re feeling low)
You can count on us
We will give you hope
We will make you strong
We will show you love
Only love
We won’t give up on you
If thoughts grow dark
And you feel alone
If you’re feeling bad
If you’re feeling hurt
(If you’re feeling hurt)
If you’re on the floor
We will raise you up
We will heal your heart
We will show you love
Only love
Far away from everyone
Let ‘em blow away in the dust [6]leave 〇〇 in the dust: 〇〇を遥かに凌ぐ
And trust that everything
Is somehow gunna be alright
Can you remember your dreams?
Can you remember your darkest day?
All your deafening screams
But you kept on going anyway
Can you remember your fears?
Can you remember how it felt to cry?
All of your nightmare tears
Never figured out the reason why
But when they tried to push you ‘round
You just stood your ground
And you kept on going
And when they tried to break your heart
You didn’t fall apart
You just kept on going
‘Cause that’s the reason
That’s the meaning
The meaning of a star
When you get back up and
Just keep on going
‘Til you’re
Far away from everyone
Let ‘em blow away in the dust
And trust that everything
Is somehow gunna be alright
Can you remember their eyes?
The way you felt when they looked at you?
Can you remember their lies?
The way you felt when you tried it too?
Can you remember the sorrow?
The way you felt like the world would end?
Can you remember tomorrow?
Can you learn to be your own best friend?
But when they tried to push you ‘round
You just stood your ground
And you kept on going
And when they tried to break your heart
You didn’t fall apart
You just kept on going
‘Cause that’s the reason
That’s the meaning
The meaning of a star
When you get back up and
Just keep on going
Until you’re
Far away from everyone
Far away from everyone
Just keep on going away from everyone
Far away from everyone
Just keep on going away from everyone
Far away from everyone
Just keep on going away from everyone
Just keep on going away from everyone
Just keep on going away from everyone
Just keep on going away from everyone
Just keep on going
In your darkest moments never forget that you can and will make it through
Never forget the hard times that you already have made it through
And understand that in the future there will be more challenges but also more rewards
And all of this counts as life
It’s all part of true joy
Everything counts [7](人生の)全てに価値がある
After all, these ups and downs aren’t here to hurt us
They’re here to thrill us
To make the rollercoaster ride of life even more interesting and spectacular
Deep down inside we don’t really want an easy life
We want an amazing life
And the strength to love it with all our heart
Besides, darkness and shadow, those are not our enemies
They’re as necessary and natural as the nighttime is to the day
The dark isn’t bad, it’s simply the light casting a shadow
Our ultimate quest is not to destroy the shadows or our demons
But to learn to hold hands with that side of life
To party with our demons
You thought it’d be an easy trip
But I took you for a ride
Woah, the devil’s on your side [8]悪魔が嘘をついて、簡単な旅だと思わせてくれるから私たちは何かに挑戦できるのかもしれませんね
You first refused to take me in
But I made you open wide
Woah, the devil’s on your side
I’m in the back of your mind
I’m in the front of your head
I’m in the meaning behind
I’m in the gold and the lead
I’m there when you’re whirling the wheel
I’m there when you’re facing the fire
I’m there when you’re doing the deal
I’m there in the lower and higher
The slime of life had stained your heart
But I kept you purified
Woah, the devil’s on your side
The kings of earth tried to lend a hand
I made sure their hands were tied
Woah, the devil’s on your side
I’m at the top of the stairs
I’m at the foot of the cross
I’m at the death of your cares
I’m at the moment of loss
I’m there when you’re breaking the bone
I’m there when you’re daring to dream
I’m there when you go it alone
I’m there when you’re one of the team
When all your thoughts become as one
I’ll reveal a new divide
Woah, the devil’s on your side
You can try your best to block me out
But I just won’t be denied
Woah, the devil’s on your side
Woah…
No matter where you try to go
You can never hide
The devil is inside
Look who put a curse on you again
Look who put a curse on you
A curse so bad it cursed me too[9]自らを呪うほどの悪い呪い
Look who put a curse on you
Look who put a curse on you
Again
Woah-oh-oh
Look who played a trick on you again
Look who played a trick on you
A trick so good it tricked me too
Look who played a trick on you
Look who played a trick on you
Again
Woah-oh-oh
Look who pulled a scam on you again
Look who pulled a scam on you
A scam so sweet it scammed me too
Look who pulled a scam on you
Look who pulled a scam on you
Again
Woah-oh-oh
No
No
Break the curse
Break the curse
We didn’t care at all about
Who had more or who
Came from less or was
Rich or poor
We didn’t care at all about
Who got first or who
Got here last or was
Best or worst
Total freedom
We had total freedom
And we, we didn’t care at all about
Time going fast or if
We could get ahead or if
We would miss the past
We didn’t care at all
No we, we didn’t care at all
We had total freedom
Total freedom
(We didn’t care at all)
(We didn’t care at all)
(At all…)
We didn’t care at all about
What other people thought or if
We could pass the test or if
We were cool or not
Total freedom
We had total freedom
And we, we didn’t care at all about
Following the crowd or if
They said we looked like fools or if
They said we laughed too loud
We didn’t care at all
No we, we didn’t care at all
Total freedom
Total freedom
(We didn’t care at all)
(We didn’t care at all)
(At all…)
Total freedom…
Total freedom…
(Instrumental)
In the midst of all the doubt
All the uncertainty, all the frustration, all the confusion
We must never lose sight of the parts of life that we’re absolutely clear about
The parts of life that bring us undeniable and reliable joy
These are sacred
They give us strength
They give us pure physical and emotional energy
And that purely good feeling that tells us that life really is worth living
Even when it’s hard
The truest part of ourself is found inside the clarity of this feeling
This feeling is the life-force
It lives inside the undeniable love that we have for the people
And aspects of life that bring out the best we have to offer
Let this love define us
Let our spirit be fortified by this loving clarity
This love is our destiny
And our ultimate quest is to protect it, to amplify it
And to rejoice in sharing its power with all the world
Your journey’s
Not over
It’s just begun
Make your dreams
Your destiny
And do what must be done
If you’re frightened
If you’re worried
You’re not alone
Hand in hand
We’ll take the step
Into the great unknown
Your journey’s
Not over
It’s just begun
Make your dreams
Your destiny
And do what must be done
If you’re frightened
If you’re worried
You’re not alone
Hand in hand
We’re taking the step
Into the great unknown
何かわからない表現があれば、下のコメント欄か私のTwitterアカウントへのメンション/DMでお知らせください。
Terminology
| ↑1 | pay one’s dueには「欲しいもののために(嫌なことを)実行する」という意味もあるので、「目的のために挫折から立ち直った」という意味となります。 |
|---|---|
| ↑2 | もし外の世界に飛び出したら失うものがたくさんある |
| ↑3 | As above, so below: 上なる如く、下もまた然り |
| ↑4 | 正確にはHip Hip Hooray |
| ↑5 | be torn between A and B: どちらを選ぶか悩まされる、板挟みになる |
| ↑6 | leave 〇〇 in the dust: 〇〇を遥かに凌ぐ |
| ↑7 | (人生の)全てに価値がある |
| ↑8 | 悪魔が嘘をついて、簡単な旅だと思わせてくれるから私たちは何かに挑戦できるのかもしれませんね |
| ↑9 | 自らを呪うほどの悪い呪い |
量子力学のシュレディンガー方程式を解くと波動関数 wave functionという関数が求められます。
波動関数は電子や光がどれくらい広がって存在しているかを表しています。また、重ね合わせの原理 principle of superpositionという基本原理に従って、「ある」と「ない」が共存した不確定な状態を作り出すことができます。
そんな波動関数は、量子力学の最も基礎的な方程式であるシュレディンガー方程式と深い関係があるので、今回はシュレディンガー方程式の簡単な説明から始めます。
「簡単」に説明するためにも、この記事ではシュレディンガー方程式を詳しく解かずに、高校物理までの知識でわかるように解説していきます。
Contents SHOW
最も単純なシュレディンガー方程式は次のように書き表されます。
\left( \frac{\boldsymbol p^{2}} {2m}+V(\boldsymbol r) \right)\phi(\boldsymbol r)
=E\phi(\boldsymbol r)それぞれの文字の意味は以下のリストにまとめています。
この式は、量子現象を説明するために天下り的[1]数学や物理学で、なぜか分からないが天から降って湧いたように導入するとうまくいく式や解法のことに登場した方程式で、古典力学のニュートンの運動方程式[2]F=maに相当する基本方程式です。
それでは、シュレディンガー方程式の簡単な説明をします。
はじめに、左辺第1項 \boldsymbol{p}^2/2mは、量子力学の世界での粒子の運動エネルギー kinetic energyを表し、例えば電子などが該当します。運動量\boldsymbol{p}は、ベクトルであることを表すために太字で書きました。
運動エネルギーは高校で習った運動量の関係式 \boldsymbol{p}=m\boldsymbol{v}を使って、次のような見慣れた形に変形できます。
\frac{\boldsymbol p^{2}} {2m}=\frac{1}{2}m \boldsymbol{v}^2ただし量子力学の世界では、電子は波であり粒子であるため上の式が成り立つような「速度」を定義できず、方程式を解く際には使えないので注意が必要です。
具体的にどうするのかについては、別の記事で解説しましょう。(制作中)
左辺2項目のV(\boldsymbol {r})は位置エネルギー potnetial energyといいます。位置エネルギーは、量子力学ではポテンシャルエネルギーと呼ぶ場合が多いのですが、こちらの記事では位置エネルギーで統一することにします。位置エネルギーの項には、電場[3]電界や磁場[4]磁界によるエネルギーが代入されます。
具体的に位置エネルギーの例を挙げると、原子核に束縛される電子の運動を計算するには、電子と原子核のクーロン力に起因するエネルギーを代入します。逆に、外から何のエネルギーも加えられていない電子の運動を計算する場合は、位置エネルギーに0を代入します。
位置エネルギーがどんな式で表されるかによって、シュレディンガー方程式の形も大きく変化します。
これ以上解説すると本筋から脱線するので、この記事では具体的な形には立ち入りらず先に進みます。
右辺のEはエネルギー固有値 energy eigenvalueと呼ばれ、エネルギーを単位に持ちます。シュレディンガー方程式の左辺が運動エネルギーと位置エネルギーの和[5]力学的エネルギーで表されるので、右辺もエネルギーを単位に持つ量になります。量子力学の世界ではエネルギーがあまりに小さいので、単位はジュール[\text{J})]ではなくエレクトロンボルト[\text{eV}]という単位を使います。
最後に、ギリシャ文字の
\frac{\boldsymbol p^{2}} {2m}+V(\boldsymbol r)
=Eのような力学的エネルギーで書き表されていました。しかし、量子力学ではわざわざ波動関数を両辺に掛けた方程式を解かなくてはなりません。その理由を次の章で解説します。
波動関数を考慮する理由の一つは、測定するたびに得られる位置や運動量などの結果が変わるからです。
普段の生活や大学での実験など、私たちが長さ、質量、エネルギーなどの物理量 physical quantityと言われる量を観測するときは、外部から変化を促す力やエネルギーが加わっていない、または無視できるほど小さい場合、測定量は常に一定になります。
測定の度に物理量が変わってしまうことを、私たちの身近な物理量の一つである体重を例に説明しましょう。皆さんは体重を計測する際に、体重計に乗って数値を読み取ると思います。その時、体重計の指す値は一定のはずです。日頃ハードなトレーニングに励むアスリートでさえ、一日の体重変化は数kg程度に収まります。ましてや、体重計に乗ったまま数値を見るたびに体重が変動することはなく、したがって、観測するという行為そのものが物理量である体重を変化させることはありません。
しかし、量子力学の原理にのっとると、そのような現象が現実に起きてしまうことになります。
体重の変化は決して誤差の範囲ではなく、さっきは50kgだったのに今度測ったら10kgだった、というほど大幅に値が変わります。
もう少し物理学に沿った説明をするなら、熱力学が良い例の一つです。高校で勉強する理想気体の状態方程式 equation of stateは以下のような式です。
PV=nRT
この式の圧力Pや体積Vといった物理量は、観測・測定自体の影響で変化することはありません。しかし原子一つが見えるほど小さな、量子の世界でも状態方程式があるとすると、観測の度に測定値は変化していくことになります。
観測するたびに物理量が変化してしまう問題を解決するためには、質量、長さ、エネルギーなどの物理量全体を内包する「状態」そのものを表現した関数を方程式に組み込むことで解決できます。そのために導入された関数のことを波動関数と呼びます。
つまり、波動関数とは「物理量の背後にある状態そのもの」といえるような関数です。
いきなり「波動関数=状態」と言われてもよく分からないかも知れないので、記事を読んでいる画面の前のあなたにちょっとしたクイズを出しながら、量子力学の状態(=波動関数)の正体をつかんでいただこうと思います。
突然ですが、今から下の箇条書きの情報を元に、それらの情報と合致する「元素」が何なのか、少しの時間推測してみてください。
正解は原子番号75番、「レニウム Rhenium(Re)」です。
レニウムはレアメタルの一種で、世界で最も希少な元素の一つです。
ロケットのノズルやジェットエンジンのタービンなどの高温、高負荷で使用する部品に使われます。
実は、みなさんが行った元素を特定するまでのプロセスは、量子力学の状態、物理量、観測と対応関係にあります。
はじめに、「元素の情報」は元素の断片的な性質を表しており、量子力学の「状態」の一側面である「物理量」に相当します。次に様々な断片的な元素の情報から、元素の正体を調べる行為が量子力学の「観測」です。観測によって様々な物理量を調べ、状態を求めるために必要な要素を集めます。最後に、推測した元素の名称や元素そのものが、量子力学の「状態」に相当します。
別の例で言い換えると、量子力学では数式を使ってバラバラに散らばっている「物理量」というピースを「観測」によって一つずつ調べ、「状態」というパズルを解いていきます。そして、求めるパズルに相当するのが「状態」でありシュレディンガー方程式の「波動関数」ということです。
クイズと量子力学の明らかな違いとして注意すべき点が、クイズには明確に正解が存在し、私たちは正解である元素の名前を知ることができます。しかし、量子力学では観測によって得られる結果は物理量であって状態ではなく、状態そのものを観測することはできません。
したがって、波動関数の実体を直接観測することができず、あくまで物理量を元に波動関数や量子力学的な性質を推測することになります。このことは、量子力学が波動関数を当てるクイズだとすると、クイズの正解がはっきりと存在しない、あるいは複数存在することに相当します。
また、物理量すら観測によって容易に変化してしまうのが量子力学の世界です。古典物理学では、物理量は観測によって変化せず常に一定です。一方、量子力学の理論によると、例えばあなたが私の趣味を聞いたとき、最初は「サーフィンが好き」といっていたにもかかわらず、5秒後に同じ質問をすると「スノーボードが好き」と返されるというようなことが、現実に起こり得ます。
こうした量子力学の不可思議な性質は、プラトンの洞窟の比喩 Allegory of the caveや思考実験の中国語の部屋、哲学的ゾンビ Philosophical zombieと共通点があるように思います(クリックするとWikipediaに飛びます)。
量子力学では状態を筆頭に、ある種のブラックボックスになっている概念が多く、それらに多様な解釈が生まれています。本記事でも波動関数に対する代表的な解釈として、ボルンの確率解釈 Born’s stochastic interpretationという、量子力学で広く支持されている解釈を次節で紹介しています。
前節で説明したように、私たちは量子の状態そのものを観測することができません。
では、実体の捉えられない状態=波動関数も、物理学者が作り出した単なる机上の空論に過ぎないのでしょうか。
現代の量子力学は、そうした疑問に一つの解釈を提示しています。その解釈の一つが、前節で触れたボルンの確率解釈 Born’s stochastic interpretationです。
ボルンの確率解釈によると、波動関数の絶対値を取って二乗した値が、その地点に粒子が存在する確率密度を表しています。確率密度とは、非常に狭い領域の確率のことです。
波動関数は一般に実数と虚数からなる複素数です。なぜ複素数かというと、波動関数には私たちが観測できる実数の他に、私たちが観測できない虚数の成分も含まれていると考えられたからです。しかし、複素数である波動関数に対して絶対値をとって二乗すると、虚数の成分が消えて私たちにも観測できるようになります。その値が粒子の存在確率だとする解釈が、ボルンの確率解釈です。
ある地点での粒子の存在確率を
\begin{aligned}
\rho(x,y,z)
& =\phi^*(x,y,z)\phi(x,y,z) \\[4mm]
&=|\phi(x,y,z)|^{2}
\end{aligned}上の式では、波動関数\phi(x,y,z)とその複素共役\phi^*(x,y,z)を掛け合わせた式を計算しており、それがある地点の粒子の存在確率と等しいことを表しています。
波動関数とは何かを説明したところで、次章では波動関数の持つ特異な性質を紹介しましょう。
ボルンの確率解釈を説明した際に、波動関数の絶対値の二乗はその地点の確率密度\rho、つまり1つの粒子が狭い領域で存在する確率を表すと説明しました。
\rhoはあくまで確率密度なので、粒子がより大きな3次元空間に存在する確率P(x,y,z)を求めるには、x軸、y軸、z軸方向に積分する必要があります。すなわち、\rhoに対して下に書いたような積分を行います。
\begin{aligned}
P(x,y,z)
& =\int_{z_1}^{z_2}\int_{y_1}^{y_2}\int_{x_1}^{x_2}\rho(x,y,z)dxdydz\\
& =\int_{z_1}^{z_2}\int_{y_1}^{y_2}\int_{x_1}^{x_2}\phi^*(x,y,z)\phi(x,y,z)dxdydz
\end{aligned}P(x,y,z)は確率を表すので値域は0~1で、全区間で積分すると1になるはずですが、波動関数自体の値域には制限がなく、0~1であることの方が少ないです。波動関数は私たちに観測できない量として導入された関数なので、それを反映するかのように値域の制約はありません。
そこで、\rho(x,y,z)を3次元空間全体で積分した値Nで割り、確率Pの値域を0~1にそろえてあげます。そのことを規格化 normalizationまたは正規化と言います(どちらも同じ意味です)。
Nは規格化定数 normalization constantといい、Nを求めるためには下に書いた計算をします。積分時にdxdydzと毎回書くのは冗長なので、まとめてd\boldsymbol{r}と書くことにします。
\begin{aligned}
&N\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}\rho(x,y,z)dxdydz=1 \\[4mm]
& N\int_{-\infty}^{\infty}\rho(\boldsymbol{r})d \boldsymbol{r}=1\\[4mm]
&N\int_{-\infty}^{\infty}\phi^*(\boldsymbol{r})\phi(\boldsymbol{r})d\boldsymbol{r}=1 \\[4mm]
\therefore \quad
&N=\frac{1}{\int_{-\infty}^{\infty}\phi^*(\boldsymbol{r})\phi(\boldsymbol{r})d\boldsymbol{r}}
\end{aligned}積分範囲の\inftyは全区間という意味です。
(広義積分を覚えている方は、上の式のように極限を使わない書き方に違和感を覚えるかもしれません。しかし、物理学の世界では毎回\text{limit}を書くのは面倒なので基本的にこのように書きます)
細かい計算をしたいときには、各軸ごとに積分範囲を決めて積分を実行します。
積分すると自動的に規格化されるように、あらかじめ波動関数を下のように書くこともあります。
\frac{1}{\sqrt{N}}\phi(\boldsymbol{r})上の波動関数を規格化した波動関数といいます。
\phi(\boldsymbol{r})が規格化されているかどうかで、細かな計算結果に影響することがあるため、規格化定数の有無には注意する必要があります。とはいえ、「\phiは規格化されている」などとことわって\sqrt{N}は書かないことも多くあります。
前節までは波動関数で粒子の存在確率がどのように表現されるかを説明しました。似たような数式で、粒子の存在確率だけでなくエネルギーなどの物理量(観測量)の確率も表現することができます。その場合、単純に波動関数とその複素共役を掛けて積分するのではなく、物理量に対応する特別な記号を、波動関数で挟んで積分します。
例えば、ある物理量Aの期待値\langle A(\boldsymbol{r})\rangleを求めるためには、このような計算をします。
\begin{aligned}
\langle A(\boldsymbol{r})\rangle
& =\int_{-\infty}^{\infty}\phi^*(\boldsymbol{r})\hat{A}\phi(\boldsymbol{r})d\boldsymbol{r}
\end{aligned}\hat{A}は演算子 operatorといわれる記号で、単なるAとは異なります。文字の上にある記号は「ハット」といい、\hat{A}は「エーハット」と読みます。演算子というと四則演算子[6]+, -, \times, \divを思い浮かべますが、量子力学の演算子はどちらかというと微分演算子を想像するのが分かりやすいと思います。
例として下の式を使って説明します。
\frac{d}{dx}e^{ax}=ae^{ax}上の式はe^{ax}を微分した結果、元のe^{ax}の係数にaが掛かっています。
見方を変えると、e^{ax}という関数に演算子を掛ける(作用させる)ことで、aという値が出力値として得られたように見えます。量子力学の演算子も同じように、演算子の後ろにある関数に何らかの操作を加えます。先ほどの式では\hat{A}は\phi(\boldsymbol{r})に何らかの操作を行う演算子です。
量子力学では同じような文字でも意味が微妙に違う場合があります。今回の例では
がそれぞれ意味合いが異なりますので注意しましょう。
波動関数が規格化されている(規格化定数Nが波動関数に含まれている)とすると、全空間の波動関数の確率はこのように書けます。
\begin{aligned}
\int_{-\infty}^{\infty}\phi^*(\boldsymbol{r})\phi(\boldsymbol{r})d\boldsymbol{r}=1
\end{aligned}上の式のように、何らかの関数を掛け合わせてから全空間で積分した値を内積 inner/dot productといいます。規格化定数を求めるために行なった計算は、実は波動関数の内積を計算する式でもあります。
内積という言葉から連想されるように、関数の内積はベクトルの内積と根本的には同じ計算をしており、二つの関数やベクトルがどれくらい似通っているかを表しています。
関数もベクトルの内積と同じ計算であることを想像してもらうために、\phi(\boldsymbol{r})が無限の成分をもつベクトルだと思って、内積を計算してみます。
すると、ベクトルの内積は下のような成分同士を掛けた総和になります。
\begin{aligned}
\phi^* \cdot \phi
&=
\begin{pmatrix}
...\\
\phi^*_1\\
\phi^*_2\\
\phi^*_3\\
...\\
\end{pmatrix}
\cdot
\begin{pmatrix}
...\\
\phi_1\\
\phi_2\\
\phi_3\\
...\\
\end{pmatrix}
\\
&=\sum_{n=-\infty}^\infty \phi^*_n\phi_n
\end{aligned}このように書き下すと、本来違う定義であったはずの関数の内積とベクトルの内積が同じような式に見えませんか?
もしもベクトルのnの刻み幅が微少量なら、積分で書いた内積の式と一致します。よって、ベクトルの内積も関数の内積も本質的には同じ計算をしています。波動関数が規格化されていると、内積の計算で値が0~1になるので、どれほど波動関数が似通っているのかわかりやすいです。この場合は内積が1なので波動関数同士が同じであることを示しています。
内積の定義は本来、関数の一方に複素共役を掛ける必要はないのですが、量子力学では波動関数が複素数なので虚部を消すために(ボルンの確率解釈を満たすために)、複素共役を取った関数と元の関数を掛けて計算します。
内積は異なる波動関数\phi_1^*(\boldsymbol{r})、\phi_2(\boldsymbol{r})に対しても同じように計算することができます。そしてもし、
\begin{aligned}
\int_{-\infty}^{\infty}\phi_1^*(\boldsymbol{r})\phi_2(\boldsymbol{r})d\boldsymbol{r}
=0
\end{aligned}のように何らかの関数の内積が0になる場合、「関数が直交する」といいます。関数も直交している場合、関数同士が同じ成分を持たないことを示しています。
さて、波動関数の話に戻りますが、異なる波動関数は一般的には直交していません。しかし、ユニタリー変換 unitary transformationという数学的操作を通して互いに直交した波動関数に変換することができます。
この記事ではこれ以上踏み込みませんが、こちらも他の記事で解説できたらと考えています。(制作中)
波動関数は互いに足し合わせることができ、その性質を重ね合わせの原理 principle of superpositionと言います。重ね合わせの原理を用いると、ある波動関数を別の波動関数の足し合わせで表現できます。
式を使って表現すると、ある波動関数
\begin{aligned}
\Phi(\boldsymbol{r})=C_1\phi_1(\boldsymbol{r})+C_2\phi_2(\boldsymbol{r})
\end{aligned}と書けます。C_1、C_2は波動関数の混ざり具合を表す定数です。
波動関数は、直交した波動関数のようにお互いに同じ成分を含まない、全く異なる性質を持った波動関数(状態)同士も重ね合わせることができます。具体的には「上向きスピン」と「下向きスピン」と呼ばれる状態や、異なる電子軌道関数(s軌道、p軌道)などが挙げられます。
また、波動関数は二つだけでなく、理論上は状況に応じて無限個の波を重ね合わせることが出来ます。式で書くと、
\Phi(\boldsymbol{r})=\sum_{n=0}^{\infty}C_n\phi_n(\boldsymbol{r})のように、無限個の波動関数の重ね合わせで別の波動関数を表現することが出来ます。
このように、ある波動関数を別の二つ以上の波動関数の重ね合わせで書くことを、「波動関数を展開する」といいます。複雑な波動関数を近似する手法として、別の波動関数で展開することが多くあります。波動関数の展開につきましては、代数的なシュレディンガー方程式の解説の際にでまとめようと思います。(制作中)
今回は、波動関数の正体とその性質を紹介しました。波動関数の正体とその性質をまとめると次の通りです。
このような波動関数の性質を駆使して、量子力学ではさまざまな物理現象を明らかにしていきます。
などにつきましては、計算を行って初めて腑に落ちる部分もあるかと思います。
他の記事にシュレーディンガー方程式の解法をまとめる予定ですので楽しみにお待ちください(製作中)。
本記事は量子の世界をより身近に感じてもらうために厳密さに欠ける内容も入っています。
当サイトで取り上げた記事のほか、Twitter でもさまざまな情報を発信していますのでよろしければフォローをお願いします。
マサ: @masa_fpp03
]]>量子力学では、普段私たちが無視するくらい小さなエネルギーを扱います。例えば、量子の世界の光は約10^{-34}[J]という非常に小さなエネルギーを持ちます。そのような非常に小さいエネルギーに対しては、私たちが普段エネルギーの単位に用いるジュール joule [J]ではなく、エレクトロンボルト electronvolt [eV]という単位を使います。
今回は、小さな世界のエネルギーの単位であるエレクトロンボルトについて紹介します
Contents SHOW
先ほど書いた通り、量子力学の理論から光[1]より正確には「光子」のエネルギーを計算すると約10^{-34}[J]の値が得られます。こうしたエネルギーのわずかな違いを表すための単位にジュール[J]を使っていたのでは、常に10のべき乗の指数が式に付くので、量子力学の単位として適していません。エレクトロンボルト[eV]ではなくジュール[J]で電子のエネルギーを見るのは、30cm定規で原子の長さを測っているようなものです。
そこで、電子などの小さい物質のエネルギーにはジュールの代わりに、電子1個が1[V]の電圧で加速されたときに電子が得るエネルギーを1とした単位が使われます。その単位のことを「エレクトロンボルト electronvolt」といいます。
ジュール[J]とエレクトロンボルト[eV]はどちらも同じエネルギーの式なので、互いに変換することができます。式を使ってジュール[J]からエレクトロンボルト[eV]への変換を丁寧に表すと、下の式のように書かれます。
\begin{aligned}
E
&=qV \\
&=1.602\times10^{-19}[\text{C}]\times1[\text{V}] \\
&=1.602\times10^{-19}[\text{J}] \\
&=1[\text{eV}]
\end{aligned}qは電子一つが持つ電気の量を表す記号で、電気素量 elementary chargeといいます。単位はクーロン[C]です。
また、Vは電圧の記号で単位はボルト[V]です。電圧は変数と単位の記号がどちらも”V”で紛らわしいですが、斜体 italic typeが変数で、立体 roman typeが単位を表します。
式の通り、1[eV]は約10^{-19}[J]なので、非常に小さなエネルギーであるとわかります。
なぜエネルギーが電荷\times電圧で書けるのか興味のある人は、次の章にあるE=qVの導出をご覧ください。高校までの電磁気と微積・ナブラ演算子を既知として書いているので、上級的な内容かもしれません。
単位をジュールからエレクトロンボルトに変換する利点を理解してもらうために、例として自由電子という電子のエネルギーを[J]から[eV]に変換してみます。
\begin{aligned}
E
&=2.298\times10^{-25} [\text{J}] \\[3mm]
& =\frac{2.298\times10^{-25}}{1.602\times10^{-19}}[\text{eV}] \\[3mm]
& \approx1.434\times10^{-6}[\text{eV}]
\end{aligned}式を見てわかるように、いくらか指数が小さくなりました。このように考えている状況に合わせて、わかりやすい数字に変換することが単位変換の大きな長所です。エネルギーをはじめ、単位はあくまで人間が作った「ものさし」なので、有効数字や考えている物理量[2]長さ、質量、時間、エネルギーなどの大きさに適するように、単位の変換は行われます。
自由電子のエネルギーの導出はこちらの記事で具体的に計算しています。
エレクトロンボルト[eV]がどれほど小さい値かを紹介したところで、今度は1eVに相当する光の波長を求めてみます。量子力学の光のエネルギーは
E=h\nu=\hbar\omega
という式で求められます。hはプランク定数という非常に小さい定数(6.626\times10^{-34}[J\cdots])で、\nu,\omegaはそれぞれ光の振動数 frequency、と角振動数 angular frequencyを表します。
また光速c=2.99792458\times10^{8}と振動数\nuにはこのような関係があります。
\begin{aligned}
c
&=\nu\lambda \quad [\text{m/s}]\\
\nu
&=\frac{c}{\lambda} \quad [\text{1/s}]
\end{aligned}これらの関係から、光の波長は次のように求められます。
\begin{aligned}
E
& =\frac{hc}{\lambda}\\[5mm]
\lambda
& =\frac{hc}{E} \\[3mm]
& =\frac{6.626\times10^{-34}\times2.998\times10^8}{1.602\times10^{-19}} \\[3mm]
& \approx1.24\times10^{-6}[\text{m}] \\[3mm]
& =1240[\text{nm}]
\end{aligned}この数値はおよそ近赤外線の波長に相当し、量子力学が見ている規模感や、波長とエネルギーの対応関係を大まかに把握するための基準となる大事な値です。
エレクトロンボルト[eV]は電気素量[C]と電圧[V]を掛けて定義されますが、そもそもなぜ”クーロン[C]”と”ボルト[V]”を掛けるとエネルギーの単位になるのでしょうか。
この疑問に対して、この章では一次元のクーロンの法則から出発して解説します。
まず、ある電荷q_2が作る電場(電界)[3]どちらも同じ意味ですが物理学では電場、工学では電界といわれる傾向にありますE_2によって、q_1に生じる力Fはこうなります。
\begin{aligned}
F
& =q_1E_2 \\[3mm]
& =k\frac{q_1q_2}{r^2} \quad [\text{N}]\\[5mm]
k
& =\frac{1}{4\pi\varepsilon_0} [\text{N} \cdot \text{m}^2/\text{C}^2]
\end{aligned}\varepsilon_0は真空中の誘電率 dielectric constant/permittivity というもので、分極の度合いを表す量ですが、具体的な意味は今は気にしなくてOKです。この式ではEはエネルギーではなく電場の意味で置いています。物理学ではEはエネルギーの意味で使われることが多いです。電気と物理ではしばしば文字の置き方が違う場合があり、参考書を読んだり試験で文字を置くときの些細なストレスになります。
エネルギー保存則が成り立つときは、エネルギーUと力の間には次の関係があります。マイナスも忘れずに。
\begin{aligned}
& F=-\frac{\partial U}{\partial r} \quad[\text{N}]\\[3mm]
& U=-\int F{dr} \quad[\text{J}]\\[3mm]
\end{aligned}なのでエネルギーはクーロン力を距離rで積分すれば求められます。
\begin{aligned}
U
&=-kq_1q_2\int\frac{1}{r^2}{dr} \\[3mm]
&=k\frac{q_1q_2}{r} \quad[\text{J}]\end{aligned}ちょっと話は脱線しますが、電場Eと電圧[4](正確には電位)Vにもこんな関係があります。
E=-\text{grad}V=-\nabla V \quad[\text{V/m}]電場は電位の勾配という意味です。一次元系ならこの式を使って
E=-\frac{\partial V}{\partial r}=-\frac{dV}{dr}\quad[\text{V/m}]となるのでq_2による電位V_2はこうなります。
\begin{aligned}
V_2
& =-\int E_2{dr} \\[3mm]
& = -\int k\frac{q_2}{r^2}dr \\[3mm]
& =k\frac{q_2}{r} \quad [\text{V}]
\end{aligned}この形はさっき求めたエネルギーの式の中にありましたね。つまり
\begin{aligned}
U
& =-q_1k\frac{q_2}{r}=q_1V_2 \\[3mm]
\therefore U
& =qV \quad[\text{J}]\\[3mm]
\end{aligned}で無事エネルギーは電荷と電圧の積の形になることが証明できました。
今回の記事は以上になります。
本記事は量子の世界をより身近に感じてもらうために厳密さに欠ける内容も入っています。
当サイトで取り上げた記事のほか、Twitter でもさまざまな情報を発信していますのでよろしければフォローをお願いします。
マサ: @masa_fpp03
量子力学に出てくる、重要かつ基礎的な用語・方程式・概念をまとめました。
へ向けて、量子力学の外観を少しでも知ってもらえたらと思います。
式番号は上から順についていますが、気にせず知りたい項目からご覧ください。
他の記事の公開などに伴って、随時追記していく予定です。
量子力学では、これまで無視してきた原子一粒ほどの小さな物質の運動に焦点を当てます。
そこでのあらゆる現象は私たちが普段生活している世界とは根本的に違い、量子の世界の粒子や波動はお互いに波と粒子の性質を合わせ持ちます(波動と粒子の二重性)。
この波と粒の性質を合わせ持った小さな物質やエネルギーを量子と呼びます。
量子に関する詳しい説明はこちらの記事にまとめています。
光や電子は「波動」と「粒子」の二つの性質を合わせ持ちます。この性質を発見した実験の一つが二重スリット実験です。
現象に応じて、波動性と粒子性のうちどちらか一方の性質だけが顕在化することがあります。
人間は光や電子の実態を観測できませんが、それらが作り出す量子現象には、ほぼ確実に二つの性質が根底にあります。
量子の持つ波動性と粒子性については、二重スリット実験を例に説明したこちらの記事が参考になります。
ニュートン力学には登場しない量子力学特有の概念で、「状態」を記述した関数です。
F=maなどの古典物理学の運動方程式では、状態自体を表した物理量(長さ、質量、時間など)や関数はありません。
しかし、量子力学の中では抽象的な状態そのものを関数として導入しています。
以下の式のように、位置と時間の関数 \phi, \psi で書かれることが多いです。
\phi(\boldsymbol{r},t), \psi(\boldsymbol{r},t)波動関数は一般的に複素数であり、私たちの見ている世界では観測することができません。
しかし、波動関数に複素共役を取ったものと、元の波動関数を掛けると虚数が消え、正の実数となるので観測可能になります。この操作は波動関数に絶対値を取って二乗することと同じです。
すると波動関数の二乗絶対値した値と一体何なのか、私たちが観測可能な量とどんな関係があるのか、量子力学の成立に伴っていくつかの解釈が提唱されました。
その中で現在最もされているのが(ボルンの)確率解釈です。この説によると波動関数の二乗絶対値がその位置に粒子が存在する確率を表します。
粒子がある位置\boldsymbol xに存在する確率密度 probability densityを\rho、波動関数を\phi(x)として確率解釈を式に表すと下のように書けます。
\begin{equation}
\rho(x)=\phi^*(x)\phi(x) \\[4mm]
=|\phi(x)|^{2}
\end{equation}\phi^*(x)は\phi(x)の複素共役を表しています。
一口に波動関数といっても何の波動関数を表すのかは様々ですが、例えば\phi^*(x)が電子の波動関数とすると、\rhoは電子密度を意味します。
もしも、波動関数が空間的に小さな領域に集中(局在)しているなら、微視的には粒子が確率的に存在していても、より大きいスケールの視点ではまるで一つの粒のように見えます。そういった意味で確率解釈は粒子性と波動性の両方をうまく取り込んだ解釈と言えるでしょう。
量子力学の波動関数が一体何を表しているのかは、専門家の間でも細かい解釈の違いがあります。
確率解釈につきましてはこれらの記事で詳しく紹介しています。
シュレディンガーさんが提案した状態方程式で(1)式や(2)式のように表されます。
\begin{equation}
i\hbar\frac{\partial \phi(\boldsymbol r,t)}{\partial t}=\mathcal{H}\phi(\boldsymbol r.t)
\end{equation}\begin{equation}
\mathcal{H}\phi(\boldsymbol r) =E\phi(\boldsymbol r)
\end{equation}(1)式を「時間依存シュレディンガー方程式」、(2)式を「時間に依存しないシュレディンガー方程式」といいます。
必ずしもそうではありませんが、波動関数の時間変化を見たい時は(1)式、ある波動関数の持つエネルギーを見たい時は(2)式といった使い方がされます。
(1)式の右辺にあるEはエネルギーの次元を持ち、エネルギー固有値 energy eigenvaluesとよばれます。
\mathcal{H}はハミルトニアン Hamiltonianといって、考えている粒子や波動のエネルギーを足し合わせた式です。中身は(3)式のように運動エネルギーとポテンシャルエネルギーの和で表されます。ポテンシャルエネルギーとは位置エネルギーのことです。
\begin{equation}
\mathcal{H}=\frac{\boldsymbol p^{2}} {2m}+V=-\frac{\hbar^{2}}{2m}\Delta+V
\end{equation}シュレディンガー方程式は拡散方程式と呼ばれる微分方程式の形をしており、量子力学的現象をうまく記述することができます。
いくつかの方法でこれらの式の妥当性を証明することができますが、そもそもなぜこの式が成り立つのかについてはよくわかっていません。
注意点として、\mathcal{H}=Eと書いてはいけません。
量子力学では、ハミルトニアンは波動関数に何らかの数学的な操作を加える「演算子」として考えます。演算子を波動関数に作用させると、それによって波動関数から係数として何らかの値が出力されたり、波動関数自体の形が変化します。
前節で説明した波動関数と、波動関数に作用する演算子という二つの概念を方程式に落とし込むことで、ニュートン力学では考えられなかった量子的な効果を導き出すことができます。
逆に、演算子と波動関数を導入しないとニュートン力学と結果が等しくなって量子的な解が得られなくなります。
また、(3)式は運動量\boldsymbol pの項がラプラシアンで書かれた形に変わっていますが、こちらもニュートン力学では考えられない式変形です。
シュレディンガー方程式は式変形によって解析的 analyticalに解くほかに、代数的 algebraicな行列計算によっても解くことができます。
この時、シュレディンガー方程式は次のような行列の式になります。
\begin{equation}
\begin{pmatrix}
\mathcal{H_{11}} & \mathcal{H_{12}} \\
\mathcal{H_{21}} & \mathcal{H_{22}} \\
\end{pmatrix}
\begin{pmatrix}
\phi_1 \\
\phi_2\\
\end{pmatrix}
=
\begin{pmatrix}
E&0\\
0&E\\
\end{pmatrix}
\begin{pmatrix}
\phi_1 \\
\phi_2\\
\end{pmatrix}
\end{equation}(5)式は線形代数の固有値方程式 characteristic equationの形をしています。
解析的には微分方程式ですが、代数的には固有値方程式の形をしているのが、シュレディンガー方程式の大きな特徴です。
式の意味を簡単に説明します。
(2)式の関数を使ったシュレディンガー方程式と(5)式を比較すると、ハミルトニアンが行列に、波動関数はベクトルの形に、エネルギー固有値は対角行列にそれぞれ変化します。
数学的に行列 matrixは、何らかのベクトルを別のベクトルに変換する操作をします。
一方、(5)式では左辺でハミルトニアンを波動関数に作用させて波動関数を変換させても、右辺で波動関数は変化していません。代わりにハミルトニアンが固有エネルギーに変化しています。言い換えると、波動関数にハミルトニアンを入力した結果、エネルギー固有値が出力結果として得られたということを表しているのです。
(5)式の各項の関係が量子力学と何の関係があるのかというと、ある波動関数のエネルギーを見ようと観測するということが、方程式上では左辺の波動関数にハミルトニアンを作用させることと対応しています。
そして、ある波動関数に対応するエネルギーがEとして観測されたということが、右辺と対応しています。
物理的には上のような対応関係がありますが、数式は単なる固有値方程式なので、エネルギーを求めるためには下に書いたような行列式を計算して固有値と固有ベクトルを求めることが、シュレディンガー方程式を解くことに相当します。
\begin{equation}
\begin{vmatrix}
\mathcal{H_{11}}-E & \mathcal{H_{12}} \\
\mathcal{H_{21}} & \mathcal{H_{22}} -E \\
\end{vmatrix}
=0
\end{equation}ちなみに、(6)式を永年方程式 secular equationと呼ぶことがあります。
シュレディンガー方程式では(6)式を解いて得られた固有値のことを、固有エネルギーまたはエネルギー固有値、固有ベクトルを固有状態 eigenstateと呼びます。
代数的にはシュレディンガー方程式のエネルギーとは、固有値方程式を解いて得られる固有値のことを指すので、関数のシュレディンガー方程式でも代数版の呼び方と同じくEをエネルギー固有値と呼称します。
このように量子力学の大きな特徴として、解析と代数の両方で互いに等価な解法が存在します。
特に、代数的な解法は数値計算と非常に相性が良いことで知られています。
ハミルトン行列はエルミート行列 hermitian matrixと呼ばれる行列でなければなりません。
エルミート行列とは「複素転置行列が元の行列と等しくなるような行列」です。
\begin{equation}
H=H^\dagger=\begin{pmatrix}
\mathcal{H_{11}} & \mathcal{H_{a}+iH_b} \\
\mathcal{H_{a}-iH_b} & \mathcal{H_{22}} \\
\end{pmatrix}
\end{equation}H^\daggerの肩に乗っている記号はダガー daggerといい「複素共役を掛けて転置する」という意味です。

量子力学では前述で説明したハミルトニアンを演算子 operatorとみなす見方があります。普通、演算子と言えば四則演算子が思い浮かぶかと思いますが、量子力学で扱う演算子はどちらかというと微分演算子やナブラ演算子に近いです。
演算子を作用させることは波動関数に対する何らかの操作を表しています。例えば下の式を例にしましょう。
\begin{equation}
\frac{d}{dx}e^{ax}=ae^{ax}
\end{equation}(8)式はe^{ax}を微分した結果、元のe^{ax}の係数にaが掛かっています。見方を変えると、関数に演算子を作用させる(入力する)ことで、aという値が出力結果として得られたように見えます。
今度はシュレディンガー方程式に対しても同じような見方をします。ハミルトニアンを\hat{\mathcal{H}}(エイチハット)という演算子であるとすると、(2)式は「波動関数にハミルトン演算子を作用させた結果、エネルギーが出力された」ように見えます。このとき、演算の前後で波動関数は変化しません。
このような操作は特定の別の演算子でも行うことができ、ハミルトン演算子のほかにもさまざまな種類が存在します。
例えばある状態の運動量や位置を求めたいときは、数式上では波動関数に運動量演算子や位置演算子という演算子を作用させることで表します。
このように、シュレディンガー方程式は演算子や行列によって状態(波動関数)を変化させたり、物理量などの情報を取り出すことができます。
ハミルトニアンの行列はエルミート行列であることが必須でしたが、演算子も同様にエルミート演算子と呼ばれる演算子でなくてはなりません。
特定の演算子が持つ「観測量(長さ、時間、エネルギーなど)を取り出せる」性質をオブザーバブル observableといいます。
私たちは波動関数を直接観測することはできず、実験によって物理量を「観測・測定」して状態を求めます。実験による物理量の測定は、数式では波動関数にオブザーバブルな演算子を作用させることで表現します。
物理量は観測可能な実数なので、オブザーバブルな演算子には「作用させると実数が取り出せる」という条件が掛かってきます。その条件とは、演算子がエルミート演算子という演算子であることです。
行列計算では二つの行列のどちらを先にかけるかで、結果が変わることがありましたね。
同様に演算子も二つの演算子を入れ替えると結果が変わることがあります。
演算子の入れ替えに関して値がどのように変化するかを示した関係を交換関係と言います。
交換関係は二つの演算子\hat{A}, \hat{B}に対して次の計算をして確かめます。
\begin{equation}
[\hat{A},\hat{B}]=\hat{A}\hat{B}-\hat{B}\hat{A}
\end{equation}(9)式の左辺は交換子 commutator、あるいはポアソン括弧式 Poisson bracketなどといい、互いに演算子を入れ替えて差をとる操作を行います。
もし(9)式の結果が0なら「交換関係が成り立つ」あるいは「可換である」といい、演算子は自由に入れ替え可能です。しかし0でなければ演算子の入れ替えで得られる結果が変わります。
交換関係が成り立つ場合、二つの演算子に対して状態は一つに決まり同時固有状態 simultaneous eigenstatesをもつ」といいます。
それぞれの演算子がオブザーバブルかつ可換なら、二つの物理量は同時に観測することができます。
逆に可換でなければ、演算子のどちらかを先に作用させるかで状態が変わってしまうので、実験でも同じ状態に対して二つの物理量を同時に計測することはできません。
交換関係は不確定性原理の説明にも用いられます。
位置と運動量を高精度に同時には求められないという原理です。
運動量を速度とした書籍やもありますが、確率解釈で説明したように粒子は確率的に存在します。そのため確率的に存在する粒子に対して速度は定義されないため、運動量で書く方が正確です。
逆に速度が定義されない確率的な粒子にも、運動量に相当する何かが存在するともいえます。
交換子で表現すると次の通りです。
\begin{equation}
[\hat{x},\hat{p}]=i\hbar
\end{equation}(10)式は可換ではなく、同時固有状態を持ちません。したがって位置と運動量を同時に計測することができず、不確定性原理を満足します。
今回の記事は以上になります。
ご覧いただきありがとうございました。
少しでも興味がある方は、他の記事も読んでいただければ幸いです。さらに量子力学の理解度が深まるはずです。
当サイトで取り上げた記事のほか、Twitter でもさまざまな情報を発信していますのでよろしければフォローをお願いします。
マサ: @masa_fpp03
]]>
プログラミング初学者の最大の障害はプログラミング自体の難しさや複雑さではありません。自分のパソコンでプログラミングをできるように準備すること(環境構築)こそが鬼門となります。 そこでこの記事では、プログラミング初心者の方 ... ]]>
プログラミング初学者の最大の障害はプログラミング自体の難しさや複雑さではありません。自分のパソコンでプログラミングをできるように準備すること(環境構築)こそが鬼門となります。
そこでこの記事では、プログラミング初心者の方でもWindows にPython をインストールする(あなたのパソコンでPython プログラムを動かせるようにする)手順を紹介します。
さらに付録として、複数のPython のバージョンを管理するツール(pyenv)のインストール方法もまとめました。将来的に複数のプロジェクトを担当するようになるとPython のバージョンを使い分ける必要性が出てきます。Pythonを始めるのに必須ではないのですが、せっかくなので一緒にインストールしてしまいましょう。
Contents SHOW
Windows ではPython をインストールする方法が大きく分けて2つあります。
1の方法が最も簡単なのですが、Microsoft Store でインストールされたPythonには操作できるファイルに制限がかけられます。(具体的に言うと、デスクトップやドキュメントなどの共有場所にアクセスできなくなります)
その他にも、Microsoft Store からインストールされたPython の安定性への指摘や、Microsoft Store にある偽物のPython による詐欺被害などが報告されているため、筆者としましては2の公式サイトからのインストールをお勧めします。
基本的に、過去にインストールされたPython は時間が経っても無くなることはありません。絶対にPython をインストールしたことがない自信がある方は次の「公式サイトからPythonをインストールしよう」へ移動して下さい。
インストールされているかの確認にはコマンドプロンプト(Command Prompt) を使います。
因みにこのコマンドプロンプトはPython を実際に動かすときにも使えるのでタスクバーにピン留めすることをお勧めします。まだタスクバーにピン留めされていない人は、Windows ロゴキーとSを同時に押してパソコン内アプリを検索して開きましょう。
以下の画像のように、検索窓に「コマンドプロンプト」と入力すると以下のようにコマンドプロンプトのアプリが表示されます。そしたらEnter キーを押すとコマンドプロンプトを開くことができます。

コマンドプロンプトが開いたら、以下のコマンドをコピーして、コマンドプロンプトに貼り付け、Enterを押して実行してください。
python -V
このコマンドは、現在インストールされているPythonのバージョンを表示するものです。
実行した時に、'python'は内部コマンド、もしくは外部コマンド、操作可能なプログラムまたはパッチプログラムとして認識されていませんと表示された場合はPython がインストールされていない証拠になります。
反対に、Python 3.10.2のようにPython 3.X.Xと表示された人はPython がインストールされています。早速Python を勉強するのも良いですが、せっかくなので「pyenv の環境設定」もお試しください。
インストール手順を大きく分けると以下のようになります。
それぞれのステップに1, 2個の注意点があるので、それらを意識しながらインストールしましょう。
まずはPython 公式サイトの「Windows 用インストーラーダウンロードページ」を開きます。そうすると以下のような画面が出てくると思います。

太文字で書かれた「Python Releases for Windows」 の直後にある「Latest Python 3 Release – Python 3.X.X」リンクをクリックします。そうすると新しいページに移動するので、太文字で「Files」と書かれた場所までスクロールしましょう。

この表の一番下に「Windows installer (32-bit)」と「Windows installer (64-bit)」があります。
基本的にどのパソコンでも64-bit 版は動くようになっているので、確認するのが面倒だという人は「Windows installer (64-bit) 」をクリックしてダウンロードして下さい。
厳密に確認したい人は設定アプリから確認できます。Windows ロゴキーとIを一緒に押して設定アプリを開きます。設定アプリが開いたら「システム」>「バージョン情報」の順でクリックし、「デバイスの仕様」の「システムの種類」を確認して下さい。

上記の「システムの種類」を参考にWindows installer (32-bit)かWindows installer (64-bit) のどちらかをクリックして、インストーラーをダウンロードします。
Chrome を使っている方は、画面左下にダウンロードした「python-3.X.X-amd….exe」が表示されているはずなのでそれをダブルクリックして実行しましょう。
Edge を使っている方は、Windows キーとEを一緒に押してエクスプローラーを開き、ダウンロードフォルダーにあるpython-3.X.X-amd64.exe (もしくはpython-3.X.X-amd32.exe)をダブルクリックしましょう。
ダブルクリックするとインストーラーが実行され、以下のような画面が表示されるはずです。Install Now を押す前に、Install launcher for all users とAdd Python 3.X to PATH のチェックボックスを必ずオンにしましょう。

2つのチェックボックスのどちらにもチェックしたことを確認したら「Install Now」をクリックして下さい。
しばらく待つと、Python のインストールが完了したことを知らせるメッセージが表示されます。
先ほどの「既にインストールされていない確認する」でコマンドプロンプトを開いている人は、1度コマンドプロンプトを閉じましょう。そしてまたコマンドプロンプトを開き直します。繰返しになりますが、Windows キーとSを一緒に押すとWindows 内を検索できます。
コマンドプロンプトを開くことができたら、もう1度以下のコマンドを実行します。
python -V
インストールしたバージョンPython 3.X.Xが表示されれば、無事にPython のインストールに成功したことになります。
pyenvとは複数のPython のバージョンを管理できるようにするツールです。
Python を勉強中の方が、今から複数のPython のバージョンを管理することはまだないかもしれません。そんな初学者の方でも感じられる大きなメリットがあります。
それはズバリ、新バージョンのPython の新機能を試しやすくなるということです。
例えば、Python 3.8 以降から:= という演算子を使えるようになりました。この演算子を使えば同じプログラムを打つ回数を減らし、プログラムの読みやすさを向上させることができます。
user_input = input("パスワード: ")
while user_input != PASSWORD: print("パスワードが違います。もう一度入力して下さい。") user_input = input("パスワード: ")while (user_input := input("パスワード: ")) != PASSWORD: print("パスワードが違います。もう一度入力して下さい。")さらに、Python 3.9 以降からはzoneinfo というタイムゾーンを設定できる機能などが使えます。
from zoneinfo import ZoneInfo
from datetime import datetime
# 何も指定しなければグリニッジ標準時を表示します
print(datetime.now())
# => 2022-03-06 19:36:56.959459
# タイムゾーンを設定して、東京の現在時刻を取得します
print(datetime.now(ZoneInfo('Asia/Tokyo')))
# => 2022-03-06 19:36:58.200443+09:00「だったらPythonのバージョンをアップグレードすればいいのでは?」
と言うのは自然な疑問ですが、例えば研究やプロジェクトで使用しているライブラリが新しいバージョンのPythonをサポートしていないときにアップグレードするのは得策ではありません。
「複数のバージョンを管理するツールならPythonより先にpyenv をインストールする必要があるのではないか?」
と感じる人もいると思います。実際にmacOS などでは先にpyenv をインストールしますが、Windows ではpyenv を単独でインストールできないので、先に公式サイトからPython をインストールしました。
少々前置きが長くなってしまいましたので、先にpyenv をインストールするコマンドを紹介します。インストール中に説明を読んでみて下さい。
pip install pyenv-win --target %USERPROFILE%\.pyenv
pipはPython の拡張機能(ライブラリ)を管理するコマンドです。
例えば、高速な行列計算をしたいときはpipを使ってNumPy というライブラリをインストールしますし、AIをプログラムしたいときはTensorFlow やPyTorch などのライブラリをインストールします。
後半の--target %USERPROFILE%.pyenvは、pyenvのプログラム本体をC:\Users\あなたのユーザー名\.pyenv にダウンロードするように指定しています。
残念なことに、ただインストールしただけではpyenvをコマンドプロンプトから呼び出すことができません。なぜなら、パソコンは「どこに実行可能なプログラムがあるか」を知らないとプログラムを実行できないからです。この実行可能なプログラムがある場所をパス path と言います。
Windows ではパスの情報をコントロールパネルで編集できます。

Iで検索しましょうコントロールパネルを開いたら、検索窓に「環境変数」と入力しましょう。そうすると以下のような結果が表示されるはずです。

この「環境変数を編集」をクリックすると新しい画面が表示されます。
その新しい画面の中の「[あなたのユーザー名]のユーザー環境変数」の下にある「Path 」という行を選択し、「編集」ボタンを押します。
そうすると今度は「環境変数名の編集」という画面が出てくるので、以下のテキスト情報を2つに分けて「新規追加」して下さい。
%USERPROFILE%\.pyenv\pyenv-win\bin
%USERPROFILE%\.pyenv\pyenv-win\shims
追加が終わったら、新規追加した2つの情報を「上へ」ボタンで1番上に移動します。

図のように一番上にあることを確認したら「OK」ボタンなどを押して、これまでに開いたコントロールパネルの画面を終了します。
動作確認の意味も含めて、Python のバージョン設定を済ませます。
まずは、pyenvでインストールできる最新のPython を検索します。新しく開いたコマンドプロンプトで以下のコマンドを実行して下さい。
pyenv install --list
ずらっと長い結果が表示されますが、ただ単に「3.X.X」と書かれているものを見つけて下さい。この記事を執筆時点での最新バージョンは3.10.2でした。
あとは実際にそのバージョンのPython をインストールして、パソコンのどこでも使えるように設定します。
pyenv install 3.10.2 pyenv global 3.10.2 pyenv versions
最後のコマンドは、pyenv にインストールされている全てのPython のバージョンを表示します。*がついているバージョンが、あなたが現在選択しているPython のバージョンです。私の場合は以下の結果が返ってきました。
* 3.10.2 (set by C:\Users\nariakik\.pyenv\pyenv-win\version)
似たような結果が返ってくれば成功です。お疲れ様です!
当サイトでは、プログラムを書くエディタとしてVSCode を推奨しています。その詳しいインストール方法などは後日記事にまとめます。
もし、初めてのPython プログラミングで何をしようか迷ったら以下の記事をお勧めします。この記事では、全くのプログラミング初心者の方でもポケモンワードルの制作を通してプログラミングの基礎を学ぶことができます。是非ご覧下さい。
]]>
プログラミングで一番初めの大きな壁は環境構築です。それ故に一般的なPython講座などでは「Google Colabなどのネット上でPython プログラムを動かしましょう」とされることが多いです。 しかし、あなたのパソ ... ]]>
プログラミングで一番初めの大きな壁は環境構築です。
それ故に一般的なPython講座などでは「Google Colabなどのネット上でPython プログラムを動かしましょう」とされることが多いです。
しかし、あなたのパソコン上でPython を動かせるようになるメリットは大きく分けて2つあります。
1つはあなたのパソコン内のファイル、フォルダをPython で編集できること。
例えば、仕事で使う機密のエクセルファイルを処理するにはネットにアップロードせずに自分のパソコンで処理する必要があります。そこまで重要なデータを扱わずとも、「1年以上更新していないファイルを検索して全て削除する」「デスクトップにあるPNG画像だけを1つのフォルダにまとめる」などのちょっとした整理整頓にも役立ちます。
2つ目はオフライン時でも作業できること。田舎のホテルに泊まる時や飛行機で移動するときなどネットの繋がらない環境でも研究や仕事が行えるのは便利ですよ。
このようにPython を自分のパソコン上で使える大きなメリットがあるのでぜひ挑戦しましょう。必要な情報はしっかりとこの記事だけでまとめているので大丈夫です!
Python のインストールに使うmacOSのアプリはTerminal です。Terminal の場所がわからない方は、command⌘とスペースを同時に押し、Terminal と入力すると検索結果が表示されると思います。
Contents SHOW
brewとは、macOSの初期設定では使えないコマンドを追加したり削除したりできるツールです。brewはPython 3のインストールに必須なだけではなく、これからJavaScript やRust などの他のプログラミング言語に挑戦したいと思ったときにも使うツールなので、しっかりと使えるようにしましょう。
pyenvは複数のPython を管理することのできるツールです。なぜそんなツールが必要なのかについては後述します。
大本命のPython 3のインストールです。ここまでの設定を終えているなら4個のコマンドを実行するだけでインストールできます。
Python 3のインストールが成功したか、ちゃんとTerminal から呼び出せるかをテストします。
また、簡単なPython プログラムを作って実行してみます。
とりあえず、以下のコマンドをTerminal 上で実行して下さい。おそらく実行には少し時間がかかるので、その間にHomebrewについて説明します。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
一言で説明すると、Homebrew はMac にない機能を追加したり更新したりできるツールのことです。
他の人がネット上で公開しているプログラムのことをパッケージと言い、それをインストールすることであなたのパソコン上で追加の便利な機能を使えるようになります。
インストールに必要なRubyプログラム(Formulae)も一緒に保持されており、brewはそのFormulaeに基づいて以下のようなインストールや更新、削除などをします。
brew install ipython: ipythonという名前のパッケージの取得&インストールを行います。brew list: 過去にインストールしたパッケージを一覧表示します。brew update: Homebrew 自体を最新のバージョンに更新し、インストールされたパッケージに最新版がないかを調べます。(実際に更新はしてくれません)brew upgrade: Homebrew 自体と、インストールされている全てのパッケージを最新のバージョンに更新します。uninstall)brew uninstall ipython: アンインストールは名前通り、インストールとは反対のことをします。つまり、あなたのパソコンでipythonを使えないようにしてくれます。brew のインストールは終わりましたでしょうか?正しくインストールされていることを確認するために以下のコマンドを入力して下さい。command not found: brew が出てこなければ成功です。
brew
まずは先にインストールをしてしまいましょう。以下のコマンドを1行ずつ実行して下さい。
brew install pyenv echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc source ~/.zshrc
pyenv の名前は複数のPython の環境 environment を管理できることから由来しています。pyenvを用いて複数のPython 環境を持つと、複数のアプリのメンテナンスが楽になります。
例えばあなたがWeb サイトを作ろうと思い、Python の他にWeb サイトを作るのに必要なライブラリをいくつかインストールしたとします。無事にそのWeb サイトの制作が終わったので、あとはそのWeb サイトでバグが出たら直すようにしています。
そのWeb サイトを見たあなたは友人は最新のAIを使った別のWeb サイトを作って欲しいそうです。しかし、そのAI用のライブラリをインストールするにはPython のバージョンをアップグレードする必要があるのですが、Python をアップグレードすると自分のWeb サイトの一部のライブラリが使えなくなります。
こんな板挟みの状態は、pyenv をインストールし複数のバージョンのPythonを管理できるようになることで解決できます。
pyenvの簡単な使い方よく使うpyenvのコマンドを紹介します。今は流し読み程度で見ておくのがちょうど良いと思います。
pyenv install -lpyenv install 3.X.Xpyenv versionpyenv versionspyenv global 3.X.Xpyenv local 3.Y.Zpyenv virtualenv 3.X.X app_namepyenv activate app_namepyenv deactivate実際にpyenv を使って環境を設定しましょう。
pyenv install -l pyenv install 3.10.2 pyenv versions pyenv global 3.10.2
1行目から説明します。
ここではブログ執筆時(3/1/2022)に最新のPython 3.10.2 をインストールしていますが、3.10.3や3.11.0 などがインストールできるようなら最新版をインストールすることをお勧めします。
前回のコマンドに引き続き、Terminal 上でこの記事の一番初めに実行したpython3 -Vコマンドを実行してみましょう。Python あなたのインストールしたバージョン(ここではPython 3.10.2)が返って来れば成功の証です!
さて、ここで終わっても良いのですが、簡単なPython プログラムを作って実行してみましょう。以下のコマンドをTerminal で1行ずつ入力して下さい。
touch hello.py open hello.py
このコマンドはhello.pyというファイルを作って開くというものです。
Python プログラムが書かれたファイルは.pyで終わるようになっていれば良いので、hello.pyではなくgood_evening.pyでも良いです。ただ、ファイル名にスペースを使うと後々面倒なのでスペースはアンダースコア(_)に置き換えて下さい。
開かれたアプリを使って、以下のプログラムを入力してみて下さい。
print("Hello, World!")しっかりcommand⌘+Sで保存して、Terminal 上でhello.pyを実行します
python3 hello.py
Hello, World! と返ってきたでしょうか?これであなたも歴としたPython プログラマーです。
この後はプログラム編集アプリ(エディター)を準備するのもよし、実際に何か作ってみながらPython を勉強するのもよしです。読者の方にお役に立てそうな記事を以下に貼っておきます。本当にお疲れ様でした!
]]>
iPad では、iPad用のMagic KeyboardやMac用のワイヤレスMagic Keyboardを接続することでキーボードショートカットが使えます。 iPadでのキーボードショートカットを知ることで作業効率が上 ... ]]>
iPad では、iPad用のMagic KeyboardやMac用のワイヤレスMagic Keyboardを接続することでキーボードショートカットが使えます。
iPadでのキーボードショートカットを知ることで作業効率が上がるのはもちろんとして、今回紹介するキーボードショートカットの多くはmacOS でも使うことができます[1]使えない具体的なショートカットキーはfn🌐を使ったショートカット(Slide Over, Split View, Siri, ディクテーションなど)となります。
より詳しくは「macOSの全キーボードショートカット一覧」をご覧ください。
さて、そんな便利なiPad用ショートカットキーは、アプリやホーム画面にてcmd ⌘を長押しすることで表示される以下のような画面から確認できます。
しかし、この記事ではiPadOS でも使えるmacOS のショートカットキーもまとめているのでショートカットキー愛好家にも気に入っていただけること請け合いです。
以下注意点に気をつけたら、目次を参考に気になったセクションからご覧ください。
全てのアプリやホーム画面にて使えることができるショートカットです。
| 🌐H ⌘H | ホーム画面へ移動 Home |
| ⌘ space | 検索 |
| ⌘tab ⇥ | App の切り替え ⌘を押したまま、tabキーを押すことで使った順にアプリを選択できる ⌘を押したまま、⇧tabキーを押すことで使った逆順にアプリを選択できる |
| 🌐A | Dock を表示 |
| ⇧🌐A | App ライブラリを表示 |
| 🌐Q | クイックメモ Quick Note |
| 🌐S | Siri |
| 🌐C | コントロールセンター Control Center |
| 🌐N | 通知センター Notification Center |
| 🌐M | システムのキーボードショートカットの表示 |
| ⌘を長押し | 現在開いているアプリで使えるキーボードショートカットの表示 |
| ⌘? | 現在開いているアプリで使えるキーボードショートカットの検索 |
| 🌐▲ | App スイッチャーを開く |
| 🌐◀ 🌐▶ | 前/次のAppに切り替える |
| ⌃⌘Q | 画面をロックする |
| ⇧⌘3 | スクリーンショット |
| ⇧⌘4 | スクリーンショット 画面一枚を撮影し、即編集画面が開く |
Split View とはiPad 画面を半分もしくは3:7で分割して、2つのアプリを画面に同時に表示できる機能です。似たようにSlide Over はメインのアプリとは別に独立した細長いアプリを表示できる機能です。
Split View でもSlide Over でも、キーボード入力が有効なのはフォーカスが当たっているアプリです。iPad でアプリにフォーカスを当てる方法はアプリを開いたりアプリをタップするなどの他に、フォーカスを当てるショートカットもあります。フォーカスが当たっているアプリはアプリ上部の・・・で確認できます。


| ⌃🌐◀ ⌃🌐▶ | Split View で画面を左側/右側にタイル表示 |
| ⌃🌐▼ | 現在Split View で開いているApp を切り替え |
| 🌐 \ | Slide Over の表示と非表示を切り替える |
| ⌥🌐◀ ⌥🌐▶ | 現在開いているSlide Over を左/右に移動する 現在開いているSlide Over が有効なアプリを左/右のSlide Over に開く |
| 🌐 ` | 同時に開いているアプリ間でフォーカスを切り替える |
| 🌐F | アプリをフルスクリーンにする Full screen |
| 🌐D | 音声入力 Dictation |
| 🌐E | 絵文字 Emoji |
| ⌘Z | 取り消し Undo |
| ⇧⌘V | “取り消し”の取り消し Redo |
| ⌘A | 全選択 All |
| ⌘X | 選択したテキストをカット |
| ⌘C | 選択したテキストをコピー Copy |
| ⌃A | カーソルを行頭に移動 |
| ⌃E | カーソルを行末に移動 |
| ⌥▶ ⌥◀ | 次/前の単語に移動 |
| ⇧◀▲▶▼ | 選択範囲の拡大/縮小 |
| ⌃T | カーソルの両隣の文字を置換 Transpose |
Apple の公式サイトなどでは、よくファイルとフォルダのことをまとめて項目(item)と呼んでいます。なのでこの記事でもファイルとフォルダの総称として「項目」という言葉を使います。
| ◀▲▶▼ | 項目の選択 |
| ⇧◀▲▶▼ | 項目の複数選択 |
| ⌘A | 項目を全選択 All |
| ⌘O | 選択した項目を開く Open |
| ⌘Y | 選択した項目をクイックルックする |
| ⌘W | クイックルックを閉じる |
| ⌘I | 選択した項目の情報を見る Info |
| ⌘D | 選択した項目を複製する Duplicate |
| ⌃⌘T | 選択した項目を”よく使う項目”に追加 |
| return ⏎ | 選択した項目の名前を変更する |
| delete ⌫ | 選択した項目の削除 |
| ⌘C | 選択した項目のコピー Copy |
| ⌘V | コピーした項目の貼り付け ペースト |
| ⌥⌘V | コピーした項目の現在のフォルダに移動 |
| ⇧⌘N | 新規フォルダ |
| ⌘↓ | 選択したフォルダを開く |
| ⌘↑ | 親フォルダ(フォルダを内包しているフォルダ)へ移動 |
| ⌘F | 検索 Find |
| ⌃⌘S | サイドバーを表示 |
| ⌘1 | アイコン表示 |
| ⌘2 | リスト表示 |
| ⌘3 | カラム表示 |
| ⌃⌘0 | グループを使用 |
| ⌃⌥⌘1 | 名前で並べ替え |
| ⌃⌥⌘2 | 種類で並べ替え |
| ⌃⌥⌘5 | 日付で並べ替え |
| ⌃⌥⌘6 | サイズで並べ替え |
| ⌃⌥⌘7 | タグで並べ替え |
| ⇧⌘F | “最近使った項目”に移動 Recent |
| ⇧⌘O | “書類”に移動 Document |
| ⇧⌘D | “デスクトップ”に移動 Desktop |
| ⌥⌘L | “ダウンロード”に移動 Download |
| ⇧⌘I | iCloud Driveに移動 |
| ⇧⌘G | “フォルダへ移動…”を開く |
| ⌘K | “サーバーへ接続”を開く |
| ⌃⌘F | (ファイルを開いているときのみ)フルスクリーンモードを切り変える (ステータスバーやタイトルなどを隠す) |
| ⌘T ⌘N | 新規タブ |
| ⌥⌘T | 右に新規タブを追加 |
| ⇧⌘N | 新規プライベートタブ |
| ⌘L | 場所(検索バー)を開く |
| ⌘リンクをタップ | リンクを新規タブで開く (設定によって新規タブで開くかバックグラウンドで開くかが変わります) |
| ⇧⌘リンクをタップ | リンクをバックグラウンドで開く (設定によって新規タブで開くかバックグラウンドで開くかが変わります) |
| ⌘W | タブを閉じる |
| ⌥⌘W | その他のタブを閉じる |
| ⌘S | 別名で保存 |
| ⌥リンクをタップ | リンクのページをダウンロード |
| ⌘I | このページをメールで送信 |
| ⌘A | 全てを選択 All |
| ⇧⌘A | フォームに自動入力 |
| ⌘F | ページを検索 Find |
| ⌘E | 選択部分を検索 |
| ⇧⌘B | お気に入りバーを表示 |
| ⇧⌘L | サイドバーを表示 |
| ⇧⌘R | リーダーを表示 |
| ⇧⌘\ | タブの概要を表示 (タブの一覧表示) |
| ⌘R | ページを再読み込み Reload |
| ⌘+ ⌘- | サイトの拡大/縮小 |
| ⌘0 | 実際のサイズ |
| ⌃⌘1 | ブックマークを表示 |
| ⌥⌘B | ブックマークを編集 |
| ⌘D | ブックマークを追加… |
| ⌃⌘2 | リーディングリストを表示 |
| ⇧⌘D | 開いているページをリーディングリストに追加 |
| ⇧リンクをタップ | リンクをリーディングリストに追加 |
| ⌃⌘3 | 履歴を表示 |
| ⌘[ ⌘] | 戻る/進む |
| ⌃⌘4 | “あなたと共有”を表示 |
| ⌃tab ⇥ ⌥⌘→ | 次のタブを表示 |
| ⌃⇧tab ⇥ ⌥⌘← | 前のタブを表示 |
| ⌘1~⌘9 | 数字に応じて、最初のタブ(1)から最後のタブ(9)のいずれかを開く |
| ⌥⌘N | 空の新規タブグループ |
| ⌥⌘[ ⌥⌘] | 前/次のタブグループを表示 |
「メールボックスの移動」のキーボードショートカットは人によって少し変わります。例えば以下のような順番でサイドバーに表示していると、⌘1を押すと”全受信”へ移動し、⌘5を押すと”フラグ付き”へ移動します。

| ⌘N | 新規メッセージ New |
| ⇧⌘N | 新着メッセージを全て受信 |
| ⌘1-9 | 登録しているメールアドレス1~9へ移動 |
| ⌘L | メッセージフィルタを有効にする |
| ⌥⌘F | メッセージボックスを検索 |
| ⌃⌘A | メッセージをアーカイブ Archive |
| delete ⌫ | メッセージを削除 |
| ⌘E | メッセージを編集 Edit |
| ⌘R | メッセージに返信 Reply |
| ⇧⌘R | 全員に返信 |
| ⇧⌘F | メッセージを転送 Forward |
| ⇧⌘J | メッセージを”迷惑メール”に移動 Junk |
| ⇧⌘L | フラグ |
| ⇧⌘U | 未開封にする Unread |
| ⌘P | プリント |
| ⌃T | 一番上へジャンプ |
| ⌘J | 選択したメッセージへジャンプ |
| ⌃⌘S | サイドバーの表示/非表示の切り替え |
| ⇧⌘D | 送信 |
| ⌘W | キャンセル |
| ⇧⌘A | ファイルを添付 |
| ⇧⌘V | 引用としてペースト |
| ⌘B | ボールド Bold |
| ⌘I | イタリック Italic |
| ⌘U | アンダーライン Underline |
| ⌘+ / ⌘ – | 大きく / 小さく |
| ⌘ ’ | 引用レベルを増やす |
| ⌥⌘ ’ | 引用レベルを減らす |
| ⌥⌘B | Bcc を追加 |
| ⌘N | 新規メッセージ New |
| ⌘I | 詳細を表示 Infomation |
| ⌘F | 検索… Find |
| ⌃tab ⇥ | 次のチャットへ行く |
| ⇧⌃tab ⇥ | 前のチャットへ戻る |
| ⌘N | 新規メモ |
| ⌘P | プリント |
| ⌘F | メモを検索 |
| ⌥⌘F | メモリスト検索 |
| ⌃⌘S | サイドバーを表示 |
| ⌘1 | メモをリストで表示 |
| ⌘2 | メモをギャラリーで表示 |
| ⌘3 | 添付ファイルブラウザを表示 |
| ⌘return ⏎ | 編集を終了 |
| ⌘B | ボールド Bold |
| ⌘I | イタリック Italic |
| ⌘U | アンダーライン Underline |
| ⇧⌘T | タイトル Title |
| ⇧⌘H | 見出し Heading |
| ⇧⌘J | 小見出し |
| ⇧⌘B | 本文 |
| ⇧⌘M | 等幅 Monospace |
| ⇧⌘7 | 箇条書きリスト |
| ⇧⌘8 | ダッシュ付きリスト |
| ⇧⌘9 | 番号付きリスト |
| ⇧⌘L | チェックリスト |
| ⇧⌘U | チェック済みにする |
| ⌥⌘T | 表 Table |
| ⌘] ⌘[ | インデント/アンインデント |
| ⌘N | 新規イベント |
| ⌘F | 検索 |
| ⌘E | イベントを編集 Edit |
| ⌘T | 今日を表示 Today |
| ⌘R | カレンダーを更新 Refresh |
| ⌘▶ | 次の日、週、月、年に移動 |
| ⌘◀ | 前の日、週、月、年に移動 |
| ⌘1 | 日表示に切り替え |
| ⌘2 | 週表示に切り替え |
| ⌘3 | 月表示に切り替え |
| ⌘4 | 年表示に切り替え |
| ⌥tab ⇥ ⌥▶ ⌥▼ | 次のイベントを選択 |
| ⇧⌥tab ⇥ ⌥◀ ⌥▲ | 前のイベントを選択 |
| ⌘N | 新規 |
| ⇧⌘N | 新規リスト |
| ⌘P | プリント |
| ⌘T | 期限を今日に設定 |
| ⌥⌘T | 期限を明日に設定 |
| ⌃⌘T | 全てを今日までの期限超過にする |
| ⌘K | 期限を今週末に設定 |
| ⌥⌘K | 期限を来週に設定 |
| ⇧⌘C | 実行済みにする |
| ⇧⌘F | フラグをつける |
| ⇧⌘T | タグを追加する |
| ⌘] ⌘[ | リマインダーをインデント/アンインデント |
| ⌘return ⏎ | 編集を終了 |
| ⌘1 | 今日のリストに移動 |
| ⌘2 | 日時設定ありリストに移動 |
| ⌘3 | すべてのリストに移動 |
| ⌘4 | フラグ付きリストに移動 |
| ⇧⌘H | 実行済みを表示 |
| ⌘I | 選択中・編集中の情報を表示する |
| ⌘N | 新規アルバム |
| ⌃⌘N | 新規共有アルバム |
| ⇧⌘N | 新規フォルダ |
| ⌘F | 検索 Find |
| ⌃⌘S | サイドバーの表示/非表示の切り替え |
| ⌘1 | “年別”に移動 |
| ⌘2 | “月別”に移動 |
| ⌘3 | “日別”に移動 |
| ⌘4 | “すべての写真”に移動 |
| ⌘T | アスペクト比 |
| ⌥⌘1 | よく使うフィルタを有効にする |
| ⌥⌘ | 編集済みフィルタを有効にする |
| ⌥⌘ | 写真フィルタを有効にする |
| ⌥⌘ | ビデオフィルタを有効にする |
| ⌘+ ⌘- | 拡大/縮小 |
| ⌘R | 反時計回りに回転 Rotate |
| ⌥⌘R | 時計回りに回転 |
| ⌘E | 自動補正 |
| ⌘I | 情報を表示 Info |
| ⌘S | 共有 Share |
| ⌘L | 非表示 |
| ⌘D | 複製 Duplicate |
| ⌘P | プリント Print |
| delete ⌫ | 削除 |
| . | お気に入り |
| space | ビューアを閉じる |
| ⌥space | 再生/停止の切り替え |
| return ⏎ | エディタを開く |
| ⌥⌘A | “マップ”のアカウント… |
| ⌥⌘1 | よく使う項目を全て表示 |
| ⌥⌘2 | 履歴を全て表示 |
| ⌘N | 新規ウィンドウ |
| ⌘T | 新規タブ |
| ⌘P | プリント… |
| ⇧⌘D | ピンをドロップ |
| ⌘F | 検索 |
| ⌘1 | 詳細マップに切り替え |
| ⌘2 | ドライブに切り替え |
| ⌘3 | 交通機関に切り替え |
| ⌘4 | 航空写真に切り替え |
| ⌘+ ⌘- | 拡大/縮小 |
| ⌘0 | デフォルトの拡大/縮小率 |
| ⇧⌘▲ | 北を上にする |
| ⌘D | 3D表示と2D表示の切り替え |
| ⌘L | 現在地に移動 |
| ⌘F | 検索 |
| ⌘▲ ⌘▼ | 音量を上げる/下げる |
| ⌘◀ ⌘▶ | 前/次の曲へ |
| space | 再生と一時停止の切り替え |
| ⌃⌘S | サイドバーを非表示 |
| ⌘N | 新規プレイリスト |
| ⌘F | 検索 Find |
| ⌘R | 配信を更新 Refresh |
| ⌘N | 新規ステーション |
| ⇧⌘N | URLで番組を追加 |
| ⌃⌘S | サイドバーの表示/非表示を切り替える |
| space | 再生/停止を切り替える |
| ⌘▶ ⌘◀ | 次/前へ |
| ⌘▲ ⌘▼ | 音量を上げる/下げる |
| ⇧⌘▶ ⇧⌘◀ | 15秒スキップ/15秒早戻し |
| ⌘L | 現在プレイしている番組を開く |
| ⌥0 | 1/2倍速 |
| ⌥1 | 標準速度 |
| ⌥2 | 1.25倍速 |
| ⌥3 | 1.5倍速 |
| ⌥4 | 2倍速 |
Terminology
| ↑1 | 使えない具体的なショートカットキーはfn🌐を使ったショートカット(Slide Over, Split View, Siri, ディクテーションなど)となります |
|---|
「Git 用のGUIアプリをわざわざ全部のデバイスにインストールするのは面倒だなー」とか「Terminal でよくGit を使うんだけどもっと楽できないのかなー」と感じたことはありませんか?そんな人のために、この記事では ... ]]>
「Git 用のGUIアプリをわざわざ全部のデバイスにインストールするのは面倒だなー」とか「Terminal でよくGit を使うんだけどもっと楽できないのかなー」と感じたことはありませんか?
そんな人のために、この記事ではTerminal 上でGit を最も効率よく使うためのキーボードショートカットを紹介します。
この記事ではなるべく便利なキーボードショートカットを厳選していますが、目次から「実際に使えるかもな」「使ってみたい」と感じられるものから見てみてください。なぜならショートカットキーを覚えるコツは、”実際に使ってみること”だからです。
半年に一度くらい「古いフォルダを削除するか」とrmコマンドを実行したけど管理者権限がないと言われ「あーー、確かにそうですね」と呟きながら、矢印キー(▲と◀)だけでコマンドの先頭に移動してsudoをつけ、実行し直したことはありませんか?
Apps % rm -r MyApp rm: SeaMark/.git/objects/2e: Permission denied rm: SeaMark/.git/objects: Permission denied rm: SeaMark/.git: Permission denied rm: SeaMark: Permission denied
直前のコマンドに管理者権限を付与したいだけならsudo !!で実現できます。
% sudo !! sudo rm -r MyApp Password: ⚿
しかし、それより前のコマンドに管理者権限を付与したい場合は矢印キーで履歴を遡る必要がありますね。
遡った以前のコマンドがどんなに長くても、以下の4つのショートカットキーで管理者権限を付与して再実行できます。
▲: コマンド履歴(管理者権限がないコマンド)を表示⌃A: カーソルを行の先頭に移動sudo␣をタイプ⏎: カーソルがどこにあろうとreturn を押すだけでコマンドが実行されます。comand not found: gtiおそらくgitを使ったことがある人の大半は、以下のようなミスをしたことがあるでしょう。
MyApp % gti push origin Release/macOS/NavigationSideBar zsh: command not found: gti
打ち直すのは面倒ですね。そんなときは以下のショートカットコンビネーションをやってみましょう。
▲: 直前のコマンド履歴(間違ったコマンド)を表示⌃A: カーソルを行の先頭に移動▶×2: カーソルをiに合わせる⌃T: tとiを転置 transpose する⏎: カーソルがどこにあろうとreturn を押すだけでコマンドが実行されます。
git pullやgit addのときなど、何度も何度も同じ名前をマウスで選択してコピーしてペーストすることはありませんか?しかもそれが長い名前だとマウスで選択するときに余計な文字や改行まで含まれたり…
以下のショートカットキーの組み合わせで、面倒な「マウスを使ってファイルパスを選択し、コピペする」を省略します。
⇧⌘ダブルクリック⇧⌘を付け加えるとファイルパスを選択できます。⇧⌘Vコツは⇧⌘を離さないことです。実際の2つのシチュエーションごとに、どのように活用できるか見てみましょう。
git branch⏎git pull origin␣まで入力⇧⌘を押さえながらダブルクリック⇧⌘を押さえたままVを押す
git addする似たようなシチュエーションとして、変更が加わったファイルをgit addすることもよくあります。
ファイルパスが短い場合は入力中にTab を押すことでディレクトリ名やファイル名が補完されますが、ファイルパスが長くなるほどタイプする時間は比例して長くなってしまいます。
ブランチ名をペーストするのと基本的にやり方は変わりませんが、git add は何度も連続して実行することが避けられない時があります。そこで何度もgit add をタイプしなくていいような方法をまとめました。
git status⏎git add␣までタイプする⇧⌘を押しながらダブルクリック⇧⌘を離さずVを押す⏎: コマンドを送信↑: 直前のコマンドの表示⌃W: カーソルから左側の1単語を消す(ファイルパス部分をまるっと削除)▲と▼で履歴を遡ってもお目当てのコマンドが見つからず、delete⌫ キーを何度も押してコマンドを削除していた時期が筆者にもあります。
長ったらしいコマンドを書いているけど実行せずに中断する方法は以下の2つの方法があります。
⌃U: 行全体を削除する⌃Y: ⌃Uで消した内容の復活⌃C: ブレークする(コマンドを実行せずに、新しい行へ移動する)⌘.でも操作は同じエラー関しての詳しい説明をすることなく、ただURL を返してきて「詳しくはここみてね」という扱いを受けることはよくあります。
Landmarks % git push -u origin main Username for 'https://github.com': *** Password for 'https://***@github.com': remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information. fatal: Authentication failed for 'https://github.com/***/Landmarks.git/'
そんなときは、⌘を押しながらURLをダブルクリックするとそのリンク先をデフォルトブラウザーで開いてくれます。
「このコマンドを打つとこのようなエラーが返ってきます」という文言を添えて、Terminal のスクリーンショットを送りたい時に活用してほしいのが以下の3つのコマンドです。
⌘K: 画面をクリアする⌘+: フォントサイズを1段階大きくする⇧⌘▲: マーク間を選択する因みに、Mac で1つのアプリを選択してスクリーンショットをとるショートカットは⇧⌘5です。
Terminal スクショを共有して原因を同僚や先輩に尋ねるときは、なるべく聞きたい内容以外の情報(ノイズ)をスクショから減らすようにしましょう。(何がエラーの原因になるのかが全くわからない時は動画でも撮って聞くしかないですが…)
⌘Kは現在カーソルが表示されている行が一番上になるように画面をクリアします。この機能を有効活用して不要な情報を減らしてみましょう。


あのままのスクショでも良いのですが、ちょっとした改善点はまだあります。上のスクリーンショットのTerminal はフォントが小さくて少しだけ見にくいです。スクリーンショットを共有する際は⌘+でフォントを大きくしましょう。フォントを小さくする時は⌘-、元のサイズに戻すときは⌘0です。

また、最近のチャットアプリではチャット内にコードを挿入できるので、できれば画像だけでなく入力したコマンドとその結果のテキストデータを載せてあげるといいかもしれませんね。
そのような、コマンドと結果を選択したい時は⇧⌘▲で、マークごとに選択範囲を拡大することができます(⇧⌘▼でマークごとに選択範囲を縮小できることもあるのですが、うまくいかないときはescキーを押してやり直しましょう)。

⇧⌘▲でマーク間の選択つい最近、「断片的にしか覚えていない、昔使った便利なコマンドをまた実行したい」と思うことがありました。この記事用に動画からGIF を作るコマンドです。コマンド名も”ffmp”なんとかしか覚えていませんし、そのオプションも完璧に忘れています。
そんな時はzshのショートカットキーの⌃Rを使いましょう。⌃Rはユーザーが入力した文字を使って過去のコマンドを検索し、マッチした結果を最近使った順に表示してくれます。百聞は一見にしかずということで、下のGIFを見るか是非ご自分の環境でやってみてください。

⌥▶, ⌃Wも活用しています以下が、例として使った.movファイルから.gifファイルを作るコマンドです。多少の警告は無視して使っています。もし皆さんが試しに使ってみてまたいつか使いたいなと思ったときは⌃Rで検索してみてください。
ffmpeg -i in.mov -pix_fmt rgb24 -r 10 -f gif - > out.gif
その他のzshのキーボードショートカットキーは以下の記事にてまとめています。
今回の記事では以下のショートカットキーをシチュエーション別に説明しました。
⌃A: カーソルを行の先頭にどうする⌃T: カーソルの両隣の文字を転置する⇧⌘ダブルクリック: ファイルパスを選択する⇧⌘V: 選択中のテキストをペーストする⌃W: 1単語をまるっと消す⌘ダブルクリック: ダブルクリックしたURLを開く⌃U: 行全体を消す⌃C: ブレークする⌘K: 画面をクリアする⌘+: フォントを大きくする⇧⌘↑: マーク情報を使って選択範囲を拡張する⌃R: コマンド履歴の検索紹介したショートカットキーが身についてきて、「もっと便利なショートカットキーを知りたい」と感じてきたら以下の記事をご覧ください。
私はもっと速い方法を知ってるよ!という方はぜひコメント欄や私のTwitterアカウントへのメンションで教えてください。
]]>