>>> print var.allclose(analyticalArray) 1 """ __docformat__ = 'restructuredtext' from fipy import Tri2D, CellVariable, DiffusionTerm, Viewer nx = 50 dx = 1. mesh = Tri2D(dx = dx, nx = nx) valueLeft = 0. valueRight = 1. var = CellVariable(name = "solution-variable", mesh = mesh, value = valueLeft) var.constrain(valueLeft, mesh.facesLeft) var.constrain(valueRight, mesh.facesRight) if __name__ == '__main__': DiffusionTerm().solve(var) viewer = Viewer(vars=var) viewer.plot() x = mesh.cellCenters[0] Lx = nx * dx analyticalArray = valueLeft + (valueRight - valueLeft) * x / Lx print var.allclose(analyticalArray) raw_input("finished")
from builtins import input __docformat__ = 'restructuredtext' from fipy import CellVariable, Grid1D, LinearLUSolver, NthOrderBoundaryCondition, DiffusionTerm, Viewer Lx = 1. nx = 100000 dx = Lx / nx mesh = Grid1D(dx=dx, nx=nx) var = CellVariable(mesh=mesh) eq = DiffusionTerm((1.0, 1.0)) BCs = (NthOrderBoundaryCondition(mesh.facesLeft, 0., 0), NthOrderBoundaryCondition(mesh.facesRight, Lx, 0), NthOrderBoundaryCondition(mesh.facesLeft, 0., 2), NthOrderBoundaryCondition(mesh.facesRight, 0., 2)) solver = LinearLUSolver(iterations=10) if __name__ == '__main__': eq.solve(var, boundaryConditions=BCs, solver=solver) viewer = Viewer(var) viewer.plot() print(var.allclose(mesh.cellCenters[0], atol=10)) input("finished")
from fipy import CellVariable, Grid1D, LinearLUSolver, NthOrderBoundaryCondition, DiffusionTerm, Viewer Lx = 1. nx = 100000 dx = Lx / nx mesh = Grid1D(dx = dx, nx = nx) var = CellVariable(mesh = mesh) eq = DiffusionTerm((1.0, 1.0)) BCs = (NthOrderBoundaryCondition(mesh.facesLeft, 0., 0), NthOrderBoundaryCondition(mesh.facesRight, Lx, 0), NthOrderBoundaryCondition(mesh.facesLeft, 0., 2), NthOrderBoundaryCondition(mesh.facesRight, 0., 2)) solver = LinearLUSolver(iterations=10) if __name__ == '__main__': eq.solve(var, boundaryConditions = BCs, solver = solver) viewer = Viewer(var) viewer.plot() print(var.allclose(mesh.cellCenters[0], atol = 10)) input("finished")
from __future__ import division from __future__ import unicode_literals from builtins import input __docformat__ = 'restructuredtext' from fipy import Tri2D, CellVariable, DiffusionTerm, Viewer nx = 50 dx = 1. mesh = Tri2D(dx=dx, nx=nx) valueLeft = 0. valueRight = 1. var = CellVariable(name="solution-variable", mesh=mesh, value=valueLeft) var.constrain(valueLeft, mesh.facesLeft) var.constrain(valueRight, mesh.facesRight) if __name__ == '__main__': DiffusionTerm().solve(var) viewer = Viewer(vars=var) viewer.plot() x = mesh.cellCenters[0] Lx = nx * dx analyticalArray = valueLeft + (valueRight - valueLeft) * x / Lx print(var.allclose(analyticalArray)) input("finished")
from __future__ import division from __future__ import unicode_literals from builtins import input __docformat__ = 'restructuredtext' from fipy import Tri2D, CellVariable, DiffusionTerm, Viewer nx = 50 dx = 1. mesh = Tri2D(dx = dx, nx = nx) valueLeft = 0. valueRight = 1. var = CellVariable(name = "solution-variable", mesh = mesh, value = valueLeft) var.constrain(valueLeft, mesh.facesLeft) var.constrain(valueRight, mesh.facesRight) if __name__ == '__main__': DiffusionTerm().solve(var) viewer = Viewer(vars=var) viewer.plot() x = mesh.cellCenters[0] Lx = nx * dx analyticalArray = valueLeft + (valueRight - valueLeft) * x / Lx print(var.allclose(analyticalArray)) input("finished")