Aaron Adkins
Subscriber

Thank you, I believe I have enough memory. When I try 2D topology optimization with 5.5 x 5.5 um, I get this trace:

opt.run()
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\optimization.py", line 145, in run
    self.initialize()
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\optimization.py", line 216, in initialize
    self.optimizer.initialize(start_params = start_params, callable_fom = callable_fom, callable_jac = callable_jac, bounds = bounds, plotting_function = plotting_function)
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\optimizers\optimizer.py", line 45, in initialize
    self.reset_start_params(start_params, self.scale_initial_gradient_to)
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\optimizers\optimizer.py", line 51, in reset_start_params
    self.auto_detect_scaling(min_required_rel_change)
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\optimizers\optimizer.py", line 72, in auto_detect_scaling
    gradients = self.callable_jac(params)
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\optimizers\generic_optimizers.py", line 57, in callable_jac_local
    gradients= -callable_jac(params / self.scaling_factor) / self.scaling_factor
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\optimization.py", line 309, in callable_jac
    return self.calculate_gradients()
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\optimization.py", line 329, in calculate_gradients
    fom_partial_derivs_vs_wl = self.geometry.calculate_gradients_on_cad(self.sim, 'forward_fields', 'adjoint_fields', self.adjoint_fields.scaling_factor)
  File "c:\users\zlab\desktop\inverse design\lumopt\lumopt\geometries\topology.py", line 171, in calculate_gradients_on_cad
    sim.fdtd.eval(('params = struct;'
  File "C:\Program Files/Lumerical/v222/api/python\lumapi.py", line 1283, in eval
    evalScript(self.handle, code, True)
  File "C:\Program Files/Lumerical/v222/api/python\lumapi.py", line 261, in evalScript
    raise LumApiError("Failed to evaluate code")
lumapi.LumApiError: 'Failed to evaluate code'