PLaSK library
Loading...
Searching...
No Matches
diffusion2.py File Reference

Go to the source code of this file.

Namespaces

namespace  diffusion2
 

Functions

 diffusion2.evaluate (expr, args)
 
 diffusion2.evaluate_matrix (expr)
 
 diffusion2.evaluate_vector (expr)
 
 diffusion2._print_Indexed (self, expr)
 
 diffusion2.cpp (v)
 
 diffusion2._print_cpp (kij, kvals, fvals, file=sys.stdout)
 
 diffusion2.print_cpp (KK, FF, fname=None)
 
 diffusion2.La (i, x, z)
 

Variables

 diffusion2.msize = mpi.Get_size()
 
 diffusion2.mrank = mpi.Get_rank()
 
 diffusion2._print_Indexed
 
str diffusion2.sidx = lambda i: "e.i{}{}".format(*idx[i])
 
 diffusion2.x
 
 diffusion2.y
 
 diffusion2.X
 
 diffusion2.Y
 
 diffusion2.ξ = x / X
 
 diffusion2.ζ = y / Y
 
 diffusion2.Φ = np.linalg.inv(np.array([[1, 0, 0, 0], [0, 1, 0, 0], [1, 1, 1, 1], [0, 1, 2, 3]])).T
 
list diffusion2.φx = [sum(int(c) * ξ**i for i, c in enumerate(p)) for p in Φ]
 
list diffusion2.φy = [sum(int(c) * ζ**i for i, c in enumerate(p)) for p in Φ]
 
list diffusion2.idx = [(0,0), (0,1), (1,0), (0,2), (0,3), (1,2), (2,0), (2,1), (3,0), (2,2), (2,3), (3,2)]
 
 diffusion2.φ = np.array([φx[idx[i][0]] * φy[idx[i][1]] for i in range(12)])
 
 diffusion2.dφx = np.array([sym.expand(sym.diff(a, x)) for a in φ])
 
 diffusion2.dφy = np.array([sym.expand(sym.diff(a, y)) for a in φ])
 
 diffusion2.U = sym.IndexedBase('U', shape=(4, 4))
 
 diffusion2.u0 = sum(U[idx[k]] * φ[k] for k in range(12))
 
 diffusion2.sep
 
 diffusion2.zx = np.array([0, X])
 
 diffusion2.zy = np.array([0, Y])
 
 diffusion2.J = sym.IndexedBase('J', shape=(2, 2))
 
 diffusion2.Jxy = sym.simplify(sum(J[i,j] * La(i, x, zx) * La(j, y, zy) for i in range(len(zx)) for j in range(len(zy))))
 
 diffusion2.KD
 
 diffusion2.end
 
 diffusion2.KA
 
 diffusion2.KB
 
 diffusion2.u02 = sym.expand(u0**2)
 
 diffusion2.u03 = sym.expand(u0**3)
 
 diffusion2.KC
 
 diffusion2.KK = KD, KA, KB, KC
 
 diffusion2.FB
 
 diffusion2.FC
 
 diffusion2.F0
 
 diffusion2.FF = FB, FC, F0
 
 diffusion2.P = sym.IndexedBase('P', shape=(2,2,2))
 
 diffusion2.G = sym.IndexedBase('G', shape=(2,))
 
 diffusion2.dG = sym.IndexedBase('dG', shape=(2,))
 
 diffusion2.ug = sym.symbols('Ug')
 
list diffusion2.Pxy = [sym.simplify(sum(P[i, j, c] * La(i, x, zx) * La(j, y, zy) for i in range(len(zx)) for j in range(len(zy)))) for c in range(2)]
 
 diffusion2.KL
 
 diffusion2.FL