'union': [-1, -2, -3], }, { 'name': 'A', 'phys': 2, 'union': 1, }, { 'name': 'B', 'phys': 4, 'union': 2, }, { 'name': 'C', 'phys': 16, 'union': 3, }] mtf = MultiTrace(kRef, meshname, dd, 'CSC') At, X, J, iJ = mtf.tolinop() shape = mtf.shape A = 2.0 * At A2 = A * iJ * A Ce = 0.5 * J - At Ci = 0.5 * J + At Ce2 = Ce * iJ * Ce Ci2 = Ci * iJ * Ci x = np.random.rand(shape[0]) + 1j * np.random.rand(shape[0])
doms = merge_msh_bubbles(dgens) myd = Domains(doms) myd.write2dot('graph.dot') call(['dot', '-Teps', 'graph.dot'], stdout=open('graph.eps', 'wb')) dd = myd print(N) ################################## meshname = "./geo/all.msh" mtf = MultiTrace(kRef, meshname, dd) At, X, J, iJ = mtf.tolinop() shape = mtf.shape A = 2.0 * At A2 = A * iJ * A Ce = 0.5 * J - At Ci = 0.5 * J + At Ce2 = Ce * iJ * Ce Ci2 = Ci * iJ * Ci x = np.random.rand(shape[0]) + 1j * np.random.rand(shape[0])
'union': [-1, -2, -3], }, { 'name': 'A', 'phys': 2, 'union': 1, }, { 'name': 'B', 'phys': 4, 'union': 2, }, { 'name': 'C', 'phys': 16, 'union': 3, }] mtf = MultiTrace(kRef, meshname, dd, J_is='CSC') #jmtf = MultiTrace(1j * kRef, meshname, dd) At, X, J, iJ = mtf.tolinop() #jAt, jX, jJ, jiJ = jmtf.tolinop() shape = mtf.shape #jshape = jmtf.shape A = 2.0 * At A2 = A * iJ * A Ce = 0.5 * J - At Ci = 0.5 * J + At Ce2 = Ce * iJ * Ce
nEl2, nEnl2 = [], [] nEL2, nEnL2 = [], [] for nlambda in nlambdas: print('\n') print('##################') print('\n') geoconf['nlambda'] = nlambda cmds = write_params_geo(geoconf) system("gmsh geo/sphere-disjoint.script.geo -") H.append(ll / nlambda) mtf = MultiTrace(geoconf['kRef'], 'geo/'+geoconf['meshname'], dd) Aw = mtf.A_weak_form() At, X, J, iJ = mtf.tolinop() shape = mtf.shape size, _ = shape Size.append(size) A = 2.0 * At A2 = A * iJ * A Ce = 0.5 * J - At Ci = 0.5 * J + At
'union': [-1, -2, -3], }, { 'name': 'A', 'phys': 2, 'union': 1, }, { 'name': 'B', 'phys': 4, 'union': 2, }, { 'name': 'C', 'phys': 16, 'union': 3, }] mtf = MultiTrace(kRef, meshname, dd, J_is='Blocked') At, X, J, iJ = mtf.tolinop() shape = mtf.shape A = 2.0 * At A2 = A * iJ * A Ce = 0.5 * J - At Ci = 0.5 * J + At Ce2 = Ce * iJ * Ce Ci2 = Ci * iJ * Ci x = np.random.rand(shape[0]) + 1j * np.random.rand(shape[0])