소스코드 61

조화진동자 함수 그래프

import tkinter as tkfrom matplotlib.backends.backend_tkagg import FigureCanvasTkAggimport matplotlib.pyplot as pltimport numpy as np# 함수 정의def plot_graph():    # 사용자 입력값 가져오기    frequency = float(entry_frequency.get())    amplitude = float(entry_amplitude.get())    phase_shift = float(entry_phase.get())    time_end = float(entry_time.get())    # 시간 배열 생성    t = np.linspace(0, time_end, 1000)    ..

양자역학 1차원 조화진동자의 파동함수(Hermite Polynomial)

import numpy as npimport matplotlib.pyplot as pltfrom scipy.special import hermitefrom math import factorial, pi# 물리 상수 정의m = 1.0    # 입자의 질량omega = 1.0 # 진동자의 각진동수hbar = 1.0  # 플랑크 상수# 파동함수 정의def psi_n(x, n):    # Hermite 다항식 계산    hermite_poly = hermite(n)        # 상수 부분 계산    normalization_factor = 1 / np.sqrt(2**n * factorial(n)) * (m * omega / (pi * hbar))**(1/4)        # 파동함수 계산    psi = n..

최대값과 최소값 함수

# 최대값과 최소값을 구하는 함수 정의def find_max_min(numbers):    # 초기값 설정: 리스트의 첫 번째 요소로 설정    max_value = numbers[0]    min_value = numbers[0]    # 리스트의 각 요소를 순회하면서 최대값과 최소값 갱신    for num in numbers[1:]:        if num > max_value:            max_value = num        if num min_value:            min_value = num        return max_value, min_value# 테스트용 숫자 리스트numbers = [12, 45, 23, 89, 78, 55, 33]# 최대값과 최소값 구하기m..

지수 함수

import tkinter as tkfrom tkinter import ttkimport matplotlib.pyplot as pltimport numpy as np# 그래프 그리는 함수def plot_exponential():    try:        # 입력값을 받아와서 float으로 변환        base = float(base_entry.get())        coefficient = float(coefficient_entry.get())        # x 값 범위 설정        x = np.linspace(-10, 10, 400)        # 지수 함수 y = coefficient * base^x        y = coefficient * base ** x        # 그래..

절대값 함수

import numpy as npimport matplotlib.pyplot as pltimport tkinter as tkfrom tkinter import simpledialog# 절대값 함수 그래프를 그리는 함수def plot_absolute_value(a, b, c):    x = np.linspace(-10, 10, 400)    y = a * np.abs(x - b) + c    plt.figure()    plt.plot(x, y, label=f"{a} * |x - {b}| + {c}")    plt.title(f"y = {a} * |x - {b}| + {c}")    plt.xlabel("x")    plt.ylabel("y")    plt.grid(True)    plt.legend() ..

역삼각 함수

import numpy as npimport matplotlib.pyplot as pltfrom tkinter import *from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg# 역삼각 함수 그래프 그리기 함수def plot_graph():    func_type = function_var.get()    start = float(entry_start.get())    end = float(entry_end.get())        x = np.linspace(start, end, 400)        if func_type == 'arcsin':        y = np.arcsin(np.clip(x, -1, 1))  # arcsin의 입력..

델타 함수

import numpy as npimport matplotlib.pyplot as pltfrom tkinter import *from tkinter import messagebox# 가우시안 근사로 델타 함수 구현def delta_approx(x, epsilon):    return (1 / (np.sqrt(2 * np.pi) * epsilon)) * np.exp(-x**2 / (2 * epsilon**2))# 델타 함수 근사값 계산 및 출력 함수def plot_delta():    try:        epsilon = float(epsilon_entry.get())  # 사용자 입력값을 가져옴        if epsilon 0:            messagebox.showerror("Error..

시그모이드 함수

import numpy as npimport matplotlib.pyplot as pltfrom tkinter import Tk, Label, Entry, Buttonfrom matplotlib.backends.backend_tkagg import FigureCanvasTkAgg# 시그모이드 함수 정의def sigmoid(x):    return 1 / (1 + np.exp(-x))# 그래프 그리기 함수def plot_sigmoid():    try:        x_min = float(entry_xmin.get())        x_max = float(entry_xmax.get())        x_points = int(entry_xpoints.get())                x = np...

로그 함수

import tkinter as tkfrom tkinter import ttkimport matplotlib.pyplot as pltfrom matplotlib.backends.backend_tkagg import FigureCanvasTkAggimport numpy as np# 그래프 업데이트 함수def update_plot():    try:        # 사용자 입력값 읽기        a = float(a_entry.get())        b = float(b_entry.get())        c = float(c_entry.get())                # 로그 함수 정의        x = np.linspace(0.1, 10, 400)  # x는 0보다 큰 값만        y ..