Это мое первое реальное использование Fipy, так что обучение. Я пытаюсь использовать Fipy Viewer для построения некоторых из моих решений для уравнений PDE, у меня система уравнений и использую тот же код, пытаясь построить несколько результатов. < /P>
import numpy as np
from fipy import CellVariable, Grid2D, TransientTerm, DiffusionTerm, Viewer
a, b, c, d = (0.0, 1.0, 0.0, 1.0)
# Mesh parameters
h = 10**-2 # Mesh spacing
dt = 10**-4 # Time step size
Lx = b - a
Ly = d - c
Nx = int(np.round(Lx / h))
Ny = int(np.round(Ly / h))
mesh = Grid2D(dx=h, dy=h, nx=Nx, ny=Ny)
cell_centers = mesh.cellCenters
x_p = cell_centers[0]
y_q = cell_centers[1]
#parameters
D_K = 8.0e-4
D_A = 0
d_K = 1.5
d_A = 2e-3
lambda_K = 1.5e-6
lambda_A = 6.0e-5
N_0 = 3.00e-2
M_0 = 3.50e-3
A_0 = 2.5e-2
R = 1.5e-6
lambda_AM = 2.5e-3
K_M = 1e-2
initial_K = 1.0e-6
initial_A = 3.0e-2
timeStepDuration = 1.0
steps = 3
K = CellVariable(mesh=mesh, value=initial_K, name=r"$K$")
A = CellVariable(mesh=mesh, value=initial_A, name=r"$A$")
# Define equations
eq_K = TransientTerm(var=K) == DiffusionTerm(coeff=D_K, var=K) + \
(R + lambda_K - d_K * K ) * (N_0 / N_0)
eq_A = TransientTerm(var=A) == DiffusionTerm(coeff=D_A, var=A) + \
lambda_A + lambda_AM * M_0 / (K_M + M_0) * A - d_A * A
for step in range(steps):
eq_K.solve(var=K, dt=timeStepDuration)
eq_A.solve(var=A, dt=timeStepDuration)
viewer = Viewer(vars=(K,A), title="Solution")
viewer.plot()
< /code>
В приведенном выше коде для значения видны, а для k not.
Что может быть причиной, как решить? Я начал догадаться, что это связано со значениями параметров, но не понимаю, почему. < /P>
missing_values
visible_values < /p>
Использование Python: 3.12.7 и Fipy 3.4.5 < /p>
Подробнее здесь: https://stackoverflow.com/questions/797 ... the-legend
Fipy Viewer - отсутствующие значения в легенде [закрыто] ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение