Приведенный ниже код отображает график 2-й оси. Как я могу найти конкретную c точку на графике? В частности, значение х, когда у = -0,99. Извиняюсь за простой вопрос, так как я новичок в этом и не уверен, как конкретно узнать об этом.
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import odeint
import plotly.express as px
import plotly.graph_objects as go
import math
t = np.arange(0,20e-09,1e-12) #runtime
mu0 = math.pi*4e-7 #Vacuum permeability N/A2)
Ms = 1257e3 #Saturation Magnetization (A/m)
alpha = 0.01 #Damping constant
K_U = 2.245e5 #Anisotropic constant(J/m3)
K_I = 1.286e-03 #Interfacial Anisotropic (J/m2)
gr = 1.76e11 #gyromagnetic ratio(rad/(s.T))
h = 1.054e-34 #reducedplancksconstant(J.s)
e_charge = 1.602e-19 #charge
L_FL = 50e-09 #length of nanomagnet
W_FL = 150e-09 #width of nanomagnet
T_FL = 1.7e-09 #thickness of nanomagnet
Nxx = 0.01312 #demagtensor xx-component
Nyy = 0.05695 #demagtensor yy-component
Nzz = 0.9288 #demagtensor zz-component
T_MGO = 2e-9 #thicknessofMgOLayer
E_c = 50e-15 #VCMA coefficient
Vol = 0 #inputvoltage
J_MTJ = 1e11
def cross(a,b):
product = np.array([a[1]*b[2] - a[2]*b[1], a[2]*b[0] - a[0]*b[2], a[0]*b[1] - a[1]*b[0]])
return product
Hdemag = -Ms*np.array([Nxx, Nyy, Nzz]) #Demagnetizing field
E_field = Vol/T_MGO
Keff = K_U+(K_I-(E_c*E_field))/T_FL
anis_z = 2*Keff/(mu0*Ms)
Hanis = np.array([0.0, 0.0, anis_z]) #Anisotropic field
ha = 0
theta1 = 0
hext = ha*np.array([math.cos(180*theta1/math.pi), 0, math.sin(180*theta1/math.pi)]) #External magnetic field
heff = (Hanis+Hdemag)
beta = (h*gr*J_MTJ)/(2*e_charge*T_FL*Ms)
def model(m,t):
Heff = np.array([heff[0]*m[0], heff[1]*m[1], heff[2]*m[2]]) + hext
P = 0.56
m_p = np.array([0,0,-1])
lambda_1 = 1
epsilon_1 = 0.1
epsilon = (P*lambda_1)/(((lambda_1*lambda_1)+1)+(((lambda_1*lambda_1)-1)*(np.dot(m,m_p))))
dmdt = -(mu0/(1+alpha**2)) * (gr*cross(m,Heff) + gr*alpha*cross(m,cross(m,Heff))) - beta*cross(m, (epsilon*(cross(m,m_p)))-epsilon_1*m_p)
return dmdt
theta2 = 10
m0 = np.array([math.cos(180*theta2/math.pi), 0, math.sin(180*theta2/math.pi)])
m = odeint(model, m0, t)
plt.plot(t, m[:,2])
plt.show()
Приведенный ниже код изображает график 2d оси. Как я могу найти конкретную c точку на графике? В частности, значение х, когда у = -0,99. Извиняюсь за простой вопрос, так как я новичок в этом и не уверен, как конкретно узнать об этом.