ts.dump(tstep) initial_step = bool(parameters["restart_folder"] is None) while t < T: tstep += 1 info_cyan("tstep = {}, time = {}".format(tstep, t)) u_1.assign(u_) converged = False while not converged: if parameters["anneal"]: tau.assign( anneal_func( t+dt.get(), parameters["tau"], parameters["tau_ramp"], parameters["t_ramp"])) # Compute energy u_.assign(u_1) Eout_0 = df.assemble(geo_map.form(E_0)) Eout_2 = df.assemble(geo_map.form(E_2)) E_before = Eout_0 + Eout_2 try: solver.solve() converged = True except: info_blue("Did not converge. Chopping timestep.") dt.chop()
ts.add_field(df.sqrt(geo_map.gab[i, j] * mu_.dx(i) * mu_.dx(j)), "abs_grad_mu") # Step in time ts.dump(tstep) initial_step = bool(parameters["restart_folder"] is None) t_prev = t while t < T: tstep += 1 info_cyan("tstep = {}, time = {}".format(tstep, t)) u_1.assign(u_) if parameters["anneal"]: tau.assign( anneal_func(t, parameters["tau"], parameters["tau_ramp"], parameters["t_ramp"])) # Compute energy # u_.assign(u_1) Eout_0 = df.assemble(geo_map.form(E_0)) Eout_2 = df.assemble(geo_map.form(E_2)) E_before = Eout_0 + Eout_2 converged = False while not converged: try: solver.solve() converged = True except: info_blue("Did not converge. Chopping timestep.") dt.chop()