벡터: 두 판 사이의 차이

잔글 (문자열 찾아 바꾸기 - "할것" 문자열을 "할 것" 문자열로)
잔글 (봇: 자동으로 텍스트 교체 (-<(br|Br|BR|bR) *> +<br />))
 
(사용자 10명의 중간 판 21개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{다른 뜻|벡터(유희왕)|수학에서의 벡터|[[유희왕 ZEXAL]]의 등장인물}}
{{다른 뜻|벡터 (유희왕)|수학에서의 벡터|[[유희왕 ZEXAL]]의 등장인물}}


= 용어 Vector =
'''Vector'''.
수학, 물리학에 쓰이는 용어로 크기와 방향을 동시에 나타내는 물리량을 말한다.


==수학에서의 벡터==
== 수학에서의 벡터 ==
===벡터의 정의===
[[벡터공간]]의 원소를 벡터라고 한다.
고등학교에서 벡터의 정의가 나오는 부분을 보면 위에서와 같이 '크기와 방향을 나타내는 양을 벡터라고한다' 라고 명시되어 있다.그리고 많은 학생또한 그렇게 알고 있다. 하지만 잘 생각해보자. 이게 정말 '''수학적'''정의 인가? 그러면 크기라는것은 무엇이고 방향이란건 어떻게 정의할 것인가? 이러한 용어들이 먼저 잘 정의되어 있지 않으면 수학적으로 잘 정의된 용어라고 볼 수 없다. 따라서 '크기와 방향을 나타내는 양'은 수학적 정의가 아니라 수학적 정의 전 단계의 '''직관'''으로서만 받아드려야 한다.


이것이 정식 정의이고, 여기서 더할 말도 뺄 말도 없다. 벡터에 관한 공부는 벡터공간에 관한 공부로서 하게 된다. 자세한 내용은 [[벡터공간]] 참조.


이미지적으로 크기와 방향을 나타낼수 있는것은 길이를 가지는 화살표이다. 이를 수학적객체들로 대응 시키기위해서 좌표평면위의 순서쌍으로 나타나는 점 <math>A=(a,b)</math>에서 점<math> B=(c,d)</math>쪽을 가르키며 이 두 점 사이의 길이를 가지는 화살표와의 대응으로서 <math>A=(a,b)</math>와 <math>B=(c,d)</math>의 순서쌍(즉 순서쌍의 순서쌍)<math>(A,B)=((a,b),(c,d))</math>를 생각할 수 있다. 하지만 이러한 단순대응은 '화살표라는것은 위치에 상관없다'라는 중요한 성질을 간과하게 된다. 즉 같은 화살표를 여러 <math>(A,B)</math>에 대응시킬수 있으며 이들은 수학적으로 다른 존재가 되는것이다.
그런데 고등학교에서는 이와 다른 정의를 먼저 가르치고, 그 정의는 오히려 학생들에게 혼란을 주는 경우가 많아 이에 대해 부연을 해 본다.


따라서 이 문제를 해결하기위해 벡터  <math>\vec{AB}</math>의 정의를 다음과 같이 생각할수 있다.
=== 고등학교에서의 벡터의 정의 ===
고등학교에서 벡터의 정의가 나오는 부분을 보면 위에서와 같이 '크기와 방향을 나타내는 양을 벡터라고한다' 라고 명시되어 있다.그리고 많은 학생또한 그렇게 알고 있다. 하지만 잘 생각해보자. 이게 정말 '''수학적''' 정의 인가? 그러면 크기라는 것은 무엇이고 방향이란건 어떻게 정의할 것인가? 이러한 용어들이 먼저 잘 정의되어 있지 않으면 수학적으로 잘 정의된 용어라고 볼 수 없다. 따라서 '크기와 방향을 나타내는 양'은 수학적 정의가 아니라 수학적 정의 전 단계의 '''직관'''으로서만 받아들여야 한다.


{{인용문2|<math>A=(a,b), B=(c,d)</math>라고 할때 벡터 <math>\vec{AB}</math>란 <math>g-e=c-a,h-f=d-b</math>를 만족하는 모든<math>c,f,g,h</math>에 대한 두 점의 순서쌍 <math>((c,f),(g,h))</math>들의 '''집합'''이다.}}
이미지적으로 크기와 방향을 나타낼수 있는 것은 길이를 가지는 화살표이다. 이를 수학적객체들로 대응 시키기위해서 좌표평면위의 순서쌍으로 나타나는 점 <math>A=(a,b)</math>에서 점<math> B=(c,d)</math>쪽을 가리키며 이 두 점 사이의 길이를 가지는 화살표와의 대응으로서 <math>A=(a,b)</math><math>B=(c,d)</math>의 순서쌍(즉 순서쌍의 순서쌍)<math>(A,B)=((a,b),(c,d))</math>를 생각할 수 있다. 하지만 이러한 단순대응은 '화살표라는 것은 위치에 상관없다'라는 중요한 성질을 간과하게 된다. 즉 같은 화살표를 여러 <math>(A,B)</math>에 대응시킬수 있으며 이들은 수학적으로 다른 존재가 되는 것이다.


즉 화살표를 해당하는 '''모든것'''들의 모임에 대응시켜 정의한다.
따라서 이 문제를 해결하기위해 벡터  <math>\vec{AB}</math>의 정의를 다음과 같이 생각할 수 있다.


이렇게 정의한 두 벡터 <math>\vec{AB}</math><math>\vec{CD}</math>에 대해 생각해 볼 때, <math>\vec{CD}</math>는 어떠한 <math>E</math>에 대해 <math>\vec{BE}</math>로서도 표현할 수 있다.(이미지 적으로는 화살표를 이동한것이다). 그리고 이 두벡터의 덧셈을 <math>\vec{AB}+\vec{CD}=\vec{AB}+\vec{BE}=\vec{AE}</math> 라고 정의할 수 있다.
{{인용문2|<math>A=(a,b), B=(c,d)</math>라고 할 때 벡터 <math>\vec{AB}</math><math>g-e=c-a,h-f=d-b</math>를 만족하는 모든<math>c,f,g,h</math>에 대한 두 점의 순서쌍 <math>((c,f),(g,h))</math>들의 '''집합'''이다.}}


단 여기서 그냥 넘어가지 말아야 할 것은 이것이 '''잘 정의되는가'''하는 것이다. 우리가 이 덧셈을 정의할때 앞에 <math>\vec{AB}</math>에 대응해서<math> \vec{CD}</math>의 원소중 하나<math>(B,E)</math>를 임의로 '''선택'''해서 그것을<math> \vec{CD}</math>의 이름으로 삼아(<math>\vec{CD}=\vec{BE}</math>) 덧셈을 정의했다. 이럴때는 그러한 '''선택'''에 관계없이 같은 값(벡터)나오는가가 수학적으로 중요하다. <s>연습문제로 남긴다.</s><s>스칼라배도 어떻게 잘 정의할 것인지 스스로 생각해보자.</s>
즉 화살표를 해당하는 '''모든 것'''들의 모임에 대응시켜 정의한다.
 
이렇게 정의한 두 벡터 <math>\vec{AB}</math>와 <math>\vec{CD}</math>에 대해 생각해 볼 때, <math>\vec{CD}</math>는 어떠한 <math>E</math>에 대해 <math>\vec{BE}</math>로서도 표현할 수 있다.(이미지 적으로는 화살표를 이동한 것이다). 그리고 이 두벡터의 덧셈을 <math>\vec{AB}+\vec{CD}=\vec{AB}+\vec{BE}=\vec{AE}</math> 라고 정의할 수 있다.
 
단 여기서 그냥 넘어가지 말아야 할 것은 이것이 '''잘 정의되는가'''하는 것이다. 우리가 이 덧셈을 정의할 때 앞에 <math>\vec{AB}</math>에 대응해서<math> \vec{CD}</math>의 원소중 하나<math>(B,E)</math>를 임의로 '''선택'''해서 그것을<math> \vec{CD}</math>의 이름으로 삼아(<math>\vec{CD}=\vec{BE}</math>) 덧셈을 정의했다. 이럴때는 그러한 '''선택'''에 관계없이 같은 값(벡터)나오는가가 수학적으로 중요하다. <s>연습문제로 남긴다.</s><s>스칼라배도 어떻게 잘 정의할 것인지 스스로 생각해보자.</s>




위를 좀더 확장시켜 [[벡터공간]]의 원소로서 벡터를 정의할 수 있다.
위를 좀더 확장시켜 [[벡터공간]]의 원소로서 벡터를 정의할 수 있다.


===위치벡터===
=== 위치벡터 ===
 
== 물리학에서의 벡터 ==
크기와 방향을 동시에 나타내는 물리량을 말한다.
=== 물리학에서의 벡터 개념에 관한 사유 ===
크기와 방향을 모두 가진 양을 벡터라고 부른다고 했다. 하지만 매번 방향을 언급하기는 불편하며, 기준 방향이 주어져 있다고 해도 '크기와 방향'만으로 벡터를 연산하려면 [[삼각함수]]의 여러 법칙들을 사용해야 한다.
그렇다면 벡터를 더 편리하게 언급할 방법이 있을지 한 번 알아보자. 어떤 문제를 탐구할 때 답을 쉽게 알 수 없는 경우엔, 그 문제의 가장 간단한 경우에서 시작해서 점점 복잡한 경우로 넘어오는 것이 도움이 된다.
 
일[[직선]]상에서는 [[원점]]에서의 [[방향]](왼쪽, 오른쪽)과 [[거리]]만 언급해 주면 되니 이 문제를 고민할 필요가 없어 보인다. 그렇다면 일직선만으로 점의 위치를 전부 표시할 수 없는 공간 중 가장 간단한 공간인 [[평면]]을 생각해 보도록 한다.
여기서 필자는 여러분들의 직관에 호소하도록 하겠다. 평면 위에 임의의 직선을 그은 뒤 그 직선을 [[철도|레일]] 삼아 장난감 [[기차]]가 놓여져 있다고 생각해 보자. 이 기차는 절대로 탈선하지 않는다. 이 기차에 벡터의 일종인 [[힘]]을 아무 방향에서나 가해 보도록 하자. 어느 방향에서 힘을 가하면 기차가 안 움직일까? 레일에서 직각인 방향에서 힘을 가하면 기차가 움직이지 않을 것이다. 그리고 레일에 평행하지 않은 방향에서 힘을 가하면, 그 힘의 레일에서 평행한 방향의 성분만큼의 크기의 힘을 레일에서 평행한 방향으로 가한 것과 똑같이 기차가 움직일 것이다. 이를 생각해 보면, 이 장난감 기차에 가한 임의의 힘은 레일의 방향으로 작용하는 힘과 레일에 수직한 방향으로 작용하는 힘 두 가지로 분해해서 생각해 볼 수 있을 것 같다.
 
이를 일반화하면, 임의의 벡터는 일정한 방향으로 향하는 성분과 그 방향에 [[수직]]한 방향으로 작용하는 성분으로 분해해서 생각하면 좋다는 생각이 든다. 물론 이는 [[벡터]]를 분해하는 방법 중 극히 일부일 뿐이지만, 위의 장난감 기차의 예시를 볼 때, 한 벡터를 임의의 방향과, 그에 수직한 방향으로 분해하는 것이 일반적인 경우에선 가장 직관적임을 알 수 있을 것이다. 그렇다면, 서로 직교하는 두 좌표축을 설정하면 한 평면 안의 모든 점을 손쉽게 표기할 수 있다는 말이 된다. 이 두 좌표축은 첫번째 좌표축의 +방향과 두 번째 좌표축의 +방향이 반시계 방향을 이루도록 배치하는 것이 관례이다.
 
3차원 공간에서는, 이저느이 두 좌표축 모두에 직교하는 3번째 좌표축을 원점<ref>좌표축이 여럿이 존재할 경우에는 이들을 모두 한 점에서 만나게 하고 그들의 교점을 원점으로 잡는 것이 합리적임은 굳이 설명할 필요가 없을 것이다.</ref>을 관통하도록 설정해 주면 된다. 이 3번째 좌표축은, 첫번째 좌표축의 +방향과 두번째 좌표축의 +방향을 순서대로 지나도록 오른손을 말아쥐었을 때 엄지가 향하는 방향으로 잡는 것이 관례이다.
 
이렇게 우리는 공간을 '좌표계'로 나타내는 방법을 배웠다. 그리고 이 체계에서는 벡터를 아주 편리하게 나타낼 수 있다. 임의의 점으로 향하는 벡터를 각각의 좌표축에 평행하게 진행하는 성분들로 분해한 뒤, 그 각각의 성분들이 원점에서 어떠한 방향으로 떨어져 있는지만 언급하면 되는 것이다. 1차원 공간상의 벡터는 스칼라와 동치임을 앞에서 언급했으므로 우리는 벡터를 스칼라들의 나열로 나타낼 수 있게 된 것이다.
 
벡터를 이렇게 표기하고 나면 벡터간의 덧뺄셈 A±B는, A(a1, a2, a3), B(b1, b2, b3)이라고 했을 때 A±B(a1 ± b1, a2 ± b2, a3 ± b3) 이라는 스칼라의 덧뺄셈으로 환원될 수 있다는 것은, 여러분들이 직접 생각해 보면 알 수 있을 것이다.
== [[C++]] 벡터 ==
[[배열]]에 항목 추가와, 삭제, 항목 개수 알기 등의 여러 가지 기능을 추가한 스마트한 배열.
<syntaxhighlight lang=C++>std:vector<타입> (변수이름)[항목 개수]or(항목 개수, 지정할 값)or{요소,···}</syntaxhighlight>
이렇게 선언한다. 개수와 지정할 값은 선택 사용으로 생략 가능하다. <br />
(변수이름).push_back(값)으로 항목 추가 가능하며,(변수이름).size()로 항목 개수를 알 수 있다. (변수이름).insert(위치 번호,값)으로 위치 번호에서  값을 삽입할 수 있다.  예를 들면 a{3,6,7}에 a.insert(1,4)를 하면, {3,4,6,7} 이렇게 된다. v.erase(vec.begin()+(항목 번호))로 항목 삭제도 가능.
{{주석}}
 
[[분류:수학]]
[[분류:물리량]]

2021년 7월 14일 (수) 17:52 기준 최신판

Vector.

수학에서의 벡터[편집 | 원본 편집]

벡터공간의 원소를 벡터라고 한다.

이것이 정식 정의이고, 여기서 더할 말도 뺄 말도 없다. 벡터에 관한 공부는 벡터공간에 관한 공부로서 하게 된다. 자세한 내용은 벡터공간 참조.

그런데 고등학교에서는 이와 다른 정의를 먼저 가르치고, 그 정의는 오히려 학생들에게 혼란을 주는 경우가 많아 이에 대해 부연을 해 본다.

고등학교에서의 벡터의 정의[편집 | 원본 편집]

고등학교에서 벡터의 정의가 나오는 부분을 보면 위에서와 같이 '크기와 방향을 나타내는 양을 벡터라고한다' 라고 명시되어 있다.그리고 많은 학생또한 그렇게 알고 있다. 하지만 잘 생각해보자. 이게 정말 수학적 정의 인가? 그러면 크기라는 것은 무엇이고 방향이란건 어떻게 정의할 것인가? 이러한 용어들이 먼저 잘 정의되어 있지 않으면 수학적으로 잘 정의된 용어라고 볼 수 없다. 따라서 '크기와 방향을 나타내는 양'은 수학적 정의가 아니라 수학적 정의 전 단계의 직관으로서만 받아들여야 한다.

이미지적으로 크기와 방향을 나타낼수 있는 것은 길이를 가지는 화살표이다. 이를 수학적객체들로 대응 시키기위해서 좌표평면위의 순서쌍으로 나타나는 점 [math]\displaystyle{ A=(a,b) }[/math]에서 점[math]\displaystyle{ B=(c,d) }[/math]쪽을 가리키며 이 두 점 사이의 길이를 가지는 화살표와의 대응으로서 [math]\displaystyle{ A=(a,b) }[/math][math]\displaystyle{ B=(c,d) }[/math]의 순서쌍(즉 순서쌍의 순서쌍)[math]\displaystyle{ (A,B)=((a,b),(c,d)) }[/math]를 생각할 수 있다. 하지만 이러한 단순대응은 '화살표라는 것은 위치에 상관없다'라는 중요한 성질을 간과하게 된다. 즉 같은 화살표를 여러 [math]\displaystyle{ (A,B) }[/math]에 대응시킬수 있으며 이들은 수학적으로 다른 존재가 되는 것이다.

따라서 이 문제를 해결하기위해 벡터 [math]\displaystyle{ \vec{AB} }[/math]의 정의를 다음과 같이 생각할 수 있다.

[math]\displaystyle{ A=(a,b), B=(c,d) }[/math]라고 할 때 벡터 [math]\displaystyle{ \vec{AB} }[/math][math]\displaystyle{ g-e=c-a,h-f=d-b }[/math]를 만족하는 모든[math]\displaystyle{ c,f,g,h }[/math]에 대한 두 점의 순서쌍 [math]\displaystyle{ ((c,f),(g,h)) }[/math]들의 집합이다.

즉 화살표를 해당하는 모든 것들의 모임에 대응시켜 정의한다.

이렇게 정의한 두 벡터 [math]\displaystyle{ \vec{AB} }[/math][math]\displaystyle{ \vec{CD} }[/math]에 대해 생각해 볼 때, [math]\displaystyle{ \vec{CD} }[/math]는 어떠한 [math]\displaystyle{ E }[/math]에 대해 [math]\displaystyle{ \vec{BE} }[/math]로서도 표현할 수 있다.(이미지 적으로는 화살표를 이동한 것이다). 그리고 이 두벡터의 덧셈을 [math]\displaystyle{ \vec{AB}+\vec{CD}=\vec{AB}+\vec{BE}=\vec{AE} }[/math] 라고 정의할 수 있다.

단 여기서 그냥 넘어가지 말아야 할 것은 이것이 잘 정의되는가하는 것이다. 우리가 이 덧셈을 정의할 때 앞에 [math]\displaystyle{ \vec{AB} }[/math]에 대응해서[math]\displaystyle{ \vec{CD} }[/math]의 원소중 하나[math]\displaystyle{ (B,E) }[/math]를 임의로 선택해서 그것을[math]\displaystyle{ \vec{CD} }[/math]의 이름으로 삼아([math]\displaystyle{ \vec{CD}=\vec{BE} }[/math]) 덧셈을 정의했다. 이럴때는 그러한 선택에 관계없이 같은 값(벡터)이 나오는가가 수학적으로 중요하다. 연습문제로 남긴다.스칼라배도 어떻게 잘 정의할 것인지 스스로 생각해보자.


위를 좀더 확장시켜 벡터공간의 원소로서 벡터를 정의할 수 있다.

위치벡터[편집 | 원본 편집]

물리학에서의 벡터[편집 | 원본 편집]

크기와 방향을 동시에 나타내는 물리량을 말한다.

물리학에서의 벡터 개념에 관한 사유[편집 | 원본 편집]

크기와 방향을 모두 가진 양을 벡터라고 부른다고 했다. 하지만 매번 방향을 언급하기는 불편하며, 기준 방향이 주어져 있다고 해도 '크기와 방향'만으로 벡터를 연산하려면 삼각함수의 여러 법칙들을 사용해야 한다. 그렇다면 벡터를 더 편리하게 언급할 방법이 있을지 한 번 알아보자. 어떤 문제를 탐구할 때 답을 쉽게 알 수 없는 경우엔, 그 문제의 가장 간단한 경우에서 시작해서 점점 복잡한 경우로 넘어오는 것이 도움이 된다.

직선상에서는 원점에서의 방향(왼쪽, 오른쪽)과 거리만 언급해 주면 되니 이 문제를 고민할 필요가 없어 보인다. 그렇다면 일직선만으로 점의 위치를 전부 표시할 수 없는 공간 중 가장 간단한 공간인 평면을 생각해 보도록 한다. 여기서 필자는 여러분들의 직관에 호소하도록 하겠다. 평면 위에 임의의 직선을 그은 뒤 그 직선을 레일 삼아 장난감 기차가 놓여져 있다고 생각해 보자. 이 기차는 절대로 탈선하지 않는다. 이 기차에 벡터의 일종인 을 아무 방향에서나 가해 보도록 하자. 어느 방향에서 힘을 가하면 기차가 안 움직일까? 레일에서 직각인 방향에서 힘을 가하면 기차가 움직이지 않을 것이다. 그리고 레일에 평행하지 않은 방향에서 힘을 가하면, 그 힘의 레일에서 평행한 방향의 성분만큼의 크기의 힘을 레일에서 평행한 방향으로 가한 것과 똑같이 기차가 움직일 것이다. 이를 생각해 보면, 이 장난감 기차에 가한 임의의 힘은 레일의 방향으로 작용하는 힘과 레일에 수직한 방향으로 작용하는 힘 두 가지로 분해해서 생각해 볼 수 있을 것 같다.

이를 일반화하면, 임의의 벡터는 일정한 방향으로 향하는 성분과 그 방향에 수직한 방향으로 작용하는 성분으로 분해해서 생각하면 좋다는 생각이 든다. 물론 이는 벡터를 분해하는 방법 중 극히 일부일 뿐이지만, 위의 장난감 기차의 예시를 볼 때, 한 벡터를 임의의 방향과, 그에 수직한 방향으로 분해하는 것이 일반적인 경우에선 가장 직관적임을 알 수 있을 것이다. 그렇다면, 서로 직교하는 두 좌표축을 설정하면 한 평면 안의 모든 점을 손쉽게 표기할 수 있다는 말이 된다. 이 두 좌표축은 첫번째 좌표축의 +방향과 두 번째 좌표축의 +방향이 반시계 방향을 이루도록 배치하는 것이 관례이다.

3차원 공간에서는, 이저느이 두 좌표축 모두에 직교하는 3번째 좌표축을 원점[1]을 관통하도록 설정해 주면 된다. 이 3번째 좌표축은, 첫번째 좌표축의 +방향과 두번째 좌표축의 +방향을 순서대로 지나도록 오른손을 말아쥐었을 때 엄지가 향하는 방향으로 잡는 것이 관례이다.

이렇게 우리는 공간을 '좌표계'로 나타내는 방법을 배웠다. 그리고 이 체계에서는 벡터를 아주 편리하게 나타낼 수 있다. 임의의 점으로 향하는 벡터를 각각의 좌표축에 평행하게 진행하는 성분들로 분해한 뒤, 그 각각의 성분들이 원점에서 어떠한 방향으로 떨어져 있는지만 언급하면 되는 것이다. 1차원 공간상의 벡터는 스칼라와 동치임을 앞에서 언급했으므로 우리는 벡터를 스칼라들의 나열로 나타낼 수 있게 된 것이다.

벡터를 이렇게 표기하고 나면 벡터간의 덧뺄셈 A±B는, A(a1, a2, a3), B(b1, b2, b3)이라고 했을 때 A±B(a1 ± b1, a2 ± b2, a3 ± b3) 이라는 스칼라의 덧뺄셈으로 환원될 수 있다는 것은, 여러분들이 직접 생각해 보면 알 수 있을 것이다.

C++ 벡터[편집 | 원본 편집]

배열에 항목 추가와, 삭제, 항목 개수 알기 등의 여러 가지 기능을 추가한 스마트한 배열.

std:vector<타입> (변수이름)[항목 개수]or(항목 개수, 지정할 )or{요소,···}

이렇게 선언한다. 개수와 지정할 값은 선택 사용으로 생략 가능하다.
(변수이름).push_back(값)으로 항목 추가 가능하며,(변수이름).size()로 항목 개수를 알 수 있다. (변수이름).insert(위치 번호,값)으로 위치 번호에서 값을 삽입할 수 있다. 예를 들면 a{3,6,7}에 a.insert(1,4)를 하면, {3,4,6,7} 이렇게 된다. v.erase(vec.begin()+(항목 번호))로 항목 삭제도 가능.

각주

  1. 좌표축이 여럿이 존재할 경우에는 이들을 모두 한 점에서 만나게 하고 그들의 교점을 원점으로 잡는 것이 합리적임은 굳이 설명할 필요가 없을 것이다.