본문 바로가기
반응형

전체 글19

파이썬으로 지구와 달의 공전궤도 시뮬레이션하는 방법, 삼체 문제 (three-body problem), 만유인력법칙, 궤도역학 ▶ 삼체 문제 (three-body problem)- 고전역학에서 삼체 문제란, 서로 상호작용하는 세 물체의 운동을 다루는 문제이다. - N체 문제 (N-body problem)에서 N=3인 경우를 의미한다. ▶ 시뮬레이션 주제- 태양-지구-달 삼체 시스템에서의 지구와 달의 공전궤도 ▶ 시뮬레이션 설정- 프로그래밍 언어: 파이썬3.9- 편집기: Jupyter notebook------------------------------------- 물리량 단위: MKS units (미터(metre, m), 킬로그램(kilogram, kg), 초(second, s))- 좌표계: 데카르트 좌표계 (2D, (x, y))- time step: 1 day- number of steps : 3 years (365x3 day.. 2024. 6. 3.
티스토리 나의 이전 발행글 썸네일과 함께 넣는 방법 ▶ 티스토리 나의 이전 발행글 썸네일과 함께 넣는 방법티스토리 글을 작성하다보면 내가 전에 작성했던 글의 링크를 첨부하고싶은 경우가 있다. 이때 플러그인의 '이전 발행 글 넣기'를 사용하게 된다. 첨부하고자 하는 글을 선택하면 작성중인 글에 링크가 나타나는데, 나타난 링크 아래 썸네일이 나타나게 하기 위해서는 링크 마지막에서 엔터를 눌러 줄을 바꿔줘야 한다. ▣ 엔터를 누른 경우2024.05.31 - [프로젝트] - 파이썬으로 지구와 달의 공전궤도 시뮬레이션하는 방법, 삼체 문제 (three-body problem), 만유인력법칙, 궤도역학 파이썬으로 지구와 달의 공전궤도 시뮬레이션하는 방법, 삼체 문제 (three-body problem), 만유인력법▶ 삼체 문제 (three-body problem)-.. 2024. 6. 1.
파이썬으로 지구의 공전궤도 시뮬레이션하는 방법, 이체 문제 (two-body problem), 만유인력법칙, 궤도역학 ▶ 이체 문제 (two-body problem)- 고전역학에서 이체 문제란, 서로 상호작용하는 두 물체의 운동을 다루는 문제이다. - N체 문제 (N-body problem)에서 N=2인 경우를 의미한다. ↓ 태양-지구-달 삼체 시스템에서의 지구와 달의 공전궤도 시뮬레이션 프로젝트 2024.05.31 - [프로젝트] - 파이썬으로 지구와 달의 공전궤도 시뮬레이션하는 방법, 삼체 문제 (three-body problem), 만유인력법칙, 궤도역학 파이썬으로 지구와 달의 공전궤도 시뮬레이션하는 방법, 삼체 문제 (three-body problem), 만유인력법▶ 삼체 문제 (three-body problem)- 고전역학에서 삼체 문제란, 서로 상호작용하는 세 물체의 운동을 다루는 문제이다. - N체 문제 (.. 2024. 6. 1.
[파이썬] matplotlib, ax.plot, linestyle, 그래프 선 유형 설정 ax.plot을 사용해서 그래프를 그릴때, 나타낼 수 있는 그래프 선의 유형은 다음과 같다. 1. solid 2. dotted3. dashed4. dashdot 기본적인 사용방법은 다음과 같다. (dotted를 예로 함) ax.plot(x축 데이터,  y축 데이터,  linestyle = 'dotted')  import numpy as npimport matplotlib.pyplot as plt### 데이터 정의 ###x_arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]y_arr = [1, 4, 9, 16, 25, 25, 25, 64, 81, 100]### 데이터 시각화 ###fig, ax = plt.subplots(figsize = (20, 20), nrows = 2, ncols = .. 2024. 4. 4.
[파이썬] 재귀함수를 통한 피보나치 수의 구현 피보나치 수 - 첫째 및 둘째 항이 1이며 그 뒤의 모든 항은 바로 앞 두 항의 합인 수열 ※ 편의상 0번째 항을 0으로 두기도 함. 예시) 1) 반복문을 통한 팩토리얼의 구현 # 반복문을 통한 피보나치 수 구현 # 입력부 n = int(input()) # 0번째, 1번째 피보나치 수를 포함하는 배열 생성 answer_arr = [0, 1] # 반복문을 통해 n을 입력받았을 때, 기존 배열에 n번째 피보나치 수까지 추가 for i in range(n-1): answer_arr.append(answer_arr[1+i] + answer_arr[i]) # 입력받은 n번째 피보나치 수 출력 print(answer_arr[n]) 2) 재귀함수를 통한 팩토리얼의 구현 # 재귀함수를 통한 피보나치 수 구현 def F.. 2022. 8. 25.
[파이썬] 재귀함수를 통한 팩토리얼의 구현 팩토리얼(계승) - 그 수보다 작거나 같은 모든 양의 정수의 곱 예시) 3! = 3 × 2 × 1 4! = 4 × 3 × 2 ×1 1! = 1 ※ 0! = 1 재귀함수 - 함수의 정의 단계에서 자신(함수)을 참조하는 함수 1) 반복문을 통한 팩토리얼의 구현 # 반복문을 통한 팩토리얼 구현 N = int(input()) result = 1 for i in range(N, 0, -1): result = result*i print("{0}! = {1}".format(N, result)) 2) 재귀함수를 통한 팩토리얼의 구현 # 재귀함수를 통한 팩토리얼의 구현 def factorial(x): if x == 0: return 1 else: answer = x*factorial(x-1) # 함수호출부(아래 모식도 .. 2022. 8. 24.
[파이썬] 소수 판별/소수로 구성된 배열 생성 알고리즘 소수(prime number) : 1보다 큰 자연수 중, 1과 자신만을 약수로 갖는 수  방법 1)-해당 수가 소수인지 아닌지를 판별하는 함수 선언을 통해 소수로 구성된 배열 생성 # 코드실행 시간을 측정하기 위해서 time이라는 외부라이브러리를 불러옴import time# start라는 변수에 코드실행 시작 시각 값 저장start = time.time()# 입력 받은 값이 소수인지 판별하는 함수 선언def prime(x): # tf라는 변수 선언 tf = 0 # 반복문을 통해 입력받은 값을 나눠봄, 단 한번이라도 조건문을 만족할 경우, # 입력받은 수(x)는 소수가 아니므로, 이를 나타내기 위해 tf라는 변수에 1을 지정 for i in range(2, x): .. 2022. 8. 14.
[파이썬] 배열(list)에서의 메소드(method)/내장함수 총정리 파이썬 배열관련 메소드/내장함수 정리※ 목록 안의 메소드, 내장함수는 알파벳순으로 정렬되어 있습니다. 메소드(method) 사용방법 목록 append(object) ▶기존에 있던 배열의 마지막에 object(객체)를 추가 arr1 = [1, 2, 3, 4, 5]arr1.append(6) # 객체 6(정수)을 arr1에 추가arr1.append('rabbit') # 객체 'rabbit'(문자열)을 arr1에 추가arr1.append([7, 8, 9]) # 객체 [7,8,9](배열)을 arr1에 추가arr1.append((10, 11, 12)) # 객체 {10,11,12}(튜플)을 arr1에 추가print(arr1) ※ 한번의 함수 사용당 하나의 객체를 추가 가.. 2022. 8. 11.
[파이썬] 1차원 배열(list)의 슬라이싱(slicing) 이번 포스팅에서는 "배열의 특정 요소만을 불러오는 방법"에 대해서 알아보겠습니다. 먼저, 간단한 예를 보겠습니다.arr1 = [i+1 for i in range(10)] # 1부터 10까지의 정수로 구성된 배열 생성print('arr1:', arr1)new_list = [] # arr1에서 짝수만을 저장할 새로운 배열 생성 for i in range(10): # 반복문을 통해 arr1의 요소들에 순차적으로 접근 if arr1[i]%2 == 0: # 2로 나누었을 때, 나머지가 0인 경우(짝수인 경우) new_list.append(arr1[i]) # 앞서 만든 빈 배열에 해당 요소.. 2022. 8. 9.