рдЬрдЯрд┐рд▓ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдирд╛

рдирдорд╕реНрддреЗ!

рдПрдХ рдФрд░ рдирд┐рдмрдВрдзред рдЗрд╕ рдмрд╛рд░ рдЪрд▓реЛ рдЬрдЯрд┐рд▓ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рддреЗ рд╣реИрдВ, рд╕реВрддреНрд░ рдФрд░ рдЙрдирдХреЗ рджреГрд╢реНрдп рдХреЗ рд╕рд╛рдеред



рд╡рд┐рдЪрд╛рд░


рдПрдХ рдЬрдЯрд┐рд▓ рд╕рдВрдЦреНрдпрд╛ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд┐рд╕реНрддрд╛рд░ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╡реЗрдХреНрдЯрд░ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдпрдВрд╕рд┐рджреНрдзреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рд╕реЗрдЯ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рдЬрдЯрд┐рд▓ (рдФрд░ рдЗрд╕рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ) рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ z=a+biрдЬрд╣рд╛рдВ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдмреА рдХрд╛рд▓реНрдкрдирд┐рдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдореИрдВ рд╕рдореАрдХрд░рдг рдХрд╛ рдореВрд▓ рд╣реИ x2=тИТ1ред рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрдИ рдСрдкрд░реЗрд╢рди рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, z1+z2=a1+a2+(b1+b2)iред рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдпрджрд┐ рдЖрдк рдЙрдирдХреЗ рд╕рд╛рде рд╡рд┐рднрд┐рдиреНрди рдСрдкрд░реЗрд╢рди рдХрд░рддреЗ рд╣реИрдВ, рдПрдХ рд╢рдХреНрддрд┐ рдХреЛ рдмрдврд╝рд╛рддреЗ рд╣реИрдВ, рдЧреБрдгрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЖрджрд┐, рдФрд░ рдлрд┐рд░ рд▓реЗрддреЗ рд╣реИрдВ рд░реЗ(z)(рд╡рд╛рд╕реНрддрд╡рд┐рдХ рднрд╛рдЧ) рдЕрдХреНрд╖ рдХреЗ рд▓рд┐рдП рдмреИрд▓, рдФрд░ рдЗрдо(z)(рдХрд╛рд▓реНрдкрдирд┐рдХ рднрд╛рдЧ) рдУрдП рдЕрдХреНрд╖ рдХреЗ рд▓рд┐рдП, рдЖрдк рдордЬрд╝реЗрджрд╛рд░ рдЪрд┐рддреНрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╡реИрд╕реЗ, рдореИрдВ рд╕реНрд╡рдпрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рднреА рд╕реВрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдЖрдпрд╛ рд╣реВрдВред

рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдлрд╝рдВрдХреНрд╢рди


рдирд┐рдпрдорд┐рддред рдлрд╝рдВрдХреНрд╢рди, рдЬреЛ рдЗрд╕ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдлрд╝реАрд▓реНрдб рдкрд░ рд╕рдм рдХреБрдЫ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ:

import random import numpy as np def vis(A, f, step=1.0, c=None): x = [] y = [] for B in np.arange(0, A, step): v = f(A, B) x.append(v.real) y.append(v.imag) plt.figure(figsize=[8, 8]) mxabs = max([i[0] ** 2 + i[1] ** 2 for i in zip(x, y)]) ** 0.5 x = np.array(x) / mxabs y = np.array(y) / mxabs if c is None: plt.scatter(x, y) else: plt.scatter(x, y, color=[c(x[i], y[i]) for i in range(len(x))]) plt.show() 

рд╣рдорд╛рд░реЗ рд╕рднреА рдХрд╛рд░реНрдп рджреЛ рдорд╛рдкрджрдВрдбреЛрдВ рдП рдФрд░ рдмреА рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдмреА рдЗрдирд╕рд░реНрдЯ рдЗрди рд╡рд┐рд╕ (), рдФрд░ рдП рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВред

рдХрд░реНрд▓ рд╕рдорд╛рд░реЛрд╣


f(A,B)=Bsin(B)тИЧeiBcos(A)



рдЕрдЬрдЧрд░ рдореЗрдВ рдЙрд╕рдХреА рдШреЛрд╖рдгрд╛:

 def func_1(A, B): return math.sin(B) * B * math.e ** (1j * (B * math.cos(A))) 

рдФрд░ рджреМрдбрд╝реЛ

 A = 121.5 vis(A, func_1, step=0.1) 

рдФрд░ рдП = 121.5 рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо:



рдФрд░ рдП = 221.5 рдХреЗ рд▓рд┐рдП:



рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпреЗ рд╕рдВрдЦреНрдпрд╛ рдПрдХ рдЪрд┐рдХрдиреА рдХрдИ рдЧреБрдирд╛ рдФрд░ рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЕрд░реНрдерд╣реАрди рдЕрдиреНрдп рдЪрддреБрд░ рд╢рдмреНрджреЛрдВ рдкрд░ рдХрд┐рд╕реА рдирд┐рд╢реНрдЪрд┐рдд рдЕрднрд┐рдиреНрди рдХреА рдЧрдгрдирд╛ рд╕реЗ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдпреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛рдПрдВ рд╣реИрдВ, рдФрд░ рдЕрднреА рднреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдП рдХреА рдЕрдирдВрддрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╕реМрдВрджрд░реНрдп рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред

рдкреЗрдВрдЯ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ


рд╣рдо рдПрдХ рд░рдВрдЧ рд╕рдорд╛рд░реЛрд╣ рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ (рдРрд╕рд╛ рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдореЗрдВ рддреАрди рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд▓реМрдЯрд╛рддрд╛ рд╣реИ):

 def sigm(x): #         0  1 return (1 / (1 + 1.2 ** (-x*50)) - 0.5) * 2 color_1 = lambda x, y: (0.2, sigm(x ** 2 + y ** 2) / 1.4, 1 - sigm(x ** 2 + y ** 2)) color_2 = lambda x, y: (sigm(x ** 2 + y ** 2), 0.5, 0.5) 

рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкреИрд░рд╛рдореАрдЯрд░ A рдЪреБрдиреЗрдВ, рдЗрд╕реЗ 149 рд╣реЛрдиреЗ рджреЗрдВ:

 vis(149, func_1, step=0.1, c=color_1) 



рдЧреАрдд рд╕рдорд╛рд░реЛрд╣


рдЧреАрдЬрд╝ рдХрд╛ рд╡рд░реНрдгрди рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

f (A, B) = cos (B) рдкрд╛рдк (B) * B * e ^ {iBcos (A) 2


рдкрд╛рдпрдерди рдШреЛрд╖рдгрд╛:

 def func_2(A, B): return math.cos(B) * math.sin(B) * B * math.e ** (1j * (B * math.cos(A))) 

рдП = 106 рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо:



рдлреЛрдХреЗрд╢рд┐рдпрд╛ рдлрд╝рдВрдХреНрд╢рди


f(A,B)=cos(B(A+1))тИЧeiBcos(A)



 def func_3(A, B): return math.cos((A + 1) * B) * math.e ** (1j * (B * math.cos(A))) 

 vis(246, func_3, step=0.1, c=color_2) 



 vis(246, func_3, step=0.1, c=color_2) 



рд╢реАрд░реНрд╖рдХрд╣реАрди рдХрд╛рд░реНрдп


f(A,B)=Bsin(A+B)тИЧeiBsin(A)


 color_3 = lambda x, y: (0.5, 0.5, sigm(x ** 2 + y ** 2)) vis(162, func_4, step=0.1, c=color_3) 



 vis(179, func_4, step=0.1, c=color_3) 



рд╕реМрдВрджрд░реНрдп рдХрд╛ рд╕реВрддреНрд░


f(A,B)=cos(B(A+1)) frac32тИЧeiBcos(A)



 def func_5(A, B): return math.cos((A + 1) * B) ** 1.5 * math.e ** (1j * (B * math.cos(A))) 

 color_4 = lambda x, y: (sigm(x ** 2 + y ** 2) / 2, 0.5, 1 - sigm(x ** 2 + y ** 2)) vis(345, func_5, step=0.1, c=color_4) 



 vis(350, func_5, step=0.1, c=color_4) 



рдЕрднреА рдХреЗ рд▓рд┐рдП рдмрд╕ рдЗрддрдирд╛ рд╣реАред

рдкреВрд░рд╛ рдХреЛрдб
 import numpy as np import random import matplotlib.pyplot as plt import math def vis(A, f, step=1.0, c=None): x = [] y = [] for B in np.arange(0, A, step): v = f(A, B) x.append(v.real) y.append(v.imag) plt.figure(figsize=[7, 7]) mxabs = max([i[0] ** 2 + i[1] ** 2 for i in zip(x, y)]) ** 0.5 x = np.array(x) / mxabs y = np.array(y) / mxabs if c is None: plt.scatter(x, y) else: plt.scatter(x, y, color=[c(x[i], y[i]) for i in range(len(x))]) plt.show() def func_1(A, B): return math.sin(B) * B * math.e ** (1j * (B * math.cos(A))) def func_2(A, B): return math.cos(B) * math.sin(B) * B * math.e ** (1j * (B * math.cos(A))) def func_3(A, B): return math.cos((A + 1) * B) * math.e ** (1j * (B * math.cos(A))) def func_4(A, B): return math.sin(A + B) * B * math.e ** (1j * B * math.sin(A)) def func_5(A, B): return math.cos((A + 1) * B) ** 1.5 * math.e ** (1j * (B * math.cos(A))) def sigm(x): return (1 / (1 + 1.2 ** (-x*50)) - 0.5) * 2 color_1 = lambda x, y: (0.2, sigm(x ** 2 + y ** 2) / 1.4, 1 - sigm(x ** 2 + y ** 2)) color_2 = lambda x, y: (sigm(x ** 2 + y ** 2), 0.5, 0.5) color_3 = lambda x, y: (0.5, 0.5, sigm(x ** 2 + y ** 2)) color_4 = lambda x, y: (sigm(x ** 2 + y ** 2) / 2, 0.5, 1 - sigm(x ** 2 + y ** 2)) colors = [color_1, color_2, color_3, color_4] funcs = [func_1, func_2, func_3, func_4, func_5] while True: col = random.choice(colors) func = random.choice(funcs) vis(random.random() * 200 + 100, func, step=0.1, c=col) if input() == "exit": break 


рдЕрдзрд┐рдХ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ


















Source: https://habr.com/ru/post/hi468781/


All Articles