# LED diode 3QW GaN # # Description of the device physical regions $Device { Region n-algan #n-AlGaN { # mesh_regions = 1 structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) material = AlGaN x=0.20 doping = 5e18 doping_type = donor doping_level = 0.025 } Region alinn # AlInN { # mesh_regions = 2 structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) material = AlInN x=0.78 doping = 1e19 doping_type = donor doping_level = 0.025 } Region algan_barr1 # AlGaN_barrier1_no_quantum { # mesh_regions = 3 structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) material = AlGaN x = 0.2 doping = 3e18 # doping_type = donor doping_level = 0.025 } Region AlGaN_barrier_quantum { # mesh_regions = (4,6,8) mesh_regions = (algan_barr_quantum1, algan_barr_quantum2, algan_barr_quantum3) structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) material = AlGaN x = 0.2 doping = 3e18 doping_type = donor doping_level = 0.025 } Region GaN_QWell { # mesh_regions = (5,7,9) mesh_regions = (GaN_QW1, GaN_QW2, GaN_QW3) structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) material = GaN doping = 1e15 # intrinsic doping_type = donor # } Region i_AlGaN1_quantum { # mesh_regions = 10 structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) material = AlGaN x = 0.2 doping = 1e15 # intrinsic doping_type = donor } Region i_AlGaN2_noquantum { # mesh_regions = 11 structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) material = AlGaN x = 0.2 doping = 1e15 # intrinsic doping_type = donor } Region p_AlGaN { # mesh_regions = 12 structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) material = AlGaN x = 0.250 doping = 3e19 doping_type = acceptor doping_level = 0.170 g = 4 #p-doped Mg : Ea=170 meV } Cluster Quantum_1 { mesh_regions = (algan_barr_quantum1,GaN_QW1) # (4, 5) } Cluster Quantum_2 { mesh_regions = (algan_barr_quantum2, GaN_QW2 ) # (6,7) } Cluster Quantum_3 { mesh_regions = (algan_barr_quantum3,GaN_QW3, i_AlGaN1_quantum) # (8,9,10) } } # Definition of Simulation Models and associated Boundary Conditions $Models { model driftdiffusion { options { simulation_name = driftdiffusion physical_regions = all } physical_model recombination { model = srh } physical_model recombination { model = direct C = 0.47e-10 # GaN } BC_Regions { BC_Region n_contact { # BC_reg_numb = 1 type = ohmic voltage = 0.0 } BC_Region p_contact { # BC_reg_numb = 2 type = ohmic voltage = @Vb[0.0] } } } model macrostrain { options { simulation_name = strain physical_regions = all } BC_Regions { BC_Region n_contact # substr { # BC_reg_numb = 1 type = substrate material = AlGaN x=0.2 structure = wz y-growth-direction = (1,0,-1,0) z-growth-direction = (-1,2,-1,0) x-growth-direction = (0,0,0,1) } } } model efaschroedinger { options { simulation_name = QW1_electrons physical_regions = Quantum_1 # (4,5) } } model efaschroedinger { options { simulation_name = QW1_holes physical_regions = Quantum_1 # (4,5) } } model efaschroedinger { options { simulation_name = QW2_electrons physical_regions = Quantum_2 # (6,7) } } model efaschroedinger { options { simulation_name = QW2_holes physical_regions = Quantum_1 # (6,7) } } model efaschroedinger { options { simulation_name = QW3_electrons physical_regions = Quantum_3 # (8,9,10) } } model efaschroedinger { options { simulation_name = QW3_holes physical_regions = Quantum_3 # (8,9,10) } } model opticskp { options { simulation_name = optics physical_regions = Quantum_3 # ( 8,9,10 ) } } model opticalspectrum { options { simulation_name = spectrum } } } # Definition of Model-dependent Solver parameters $Solver { driftdiffusion ## full DD calculation { nonlinear_solver = tiber coupling = full nonlin_rel_tol = 1e-14 nonlin_abs_tol = 1e-50 nonlin_step_tol = 1e-3 lin_rel_tol = 1e-6 nonlin_max_it = 30 discretization = fem ls_max_step = 1.0 pc_type = lu } sweep { variable = Vb start = 0.0 stop = 4.0 # steps = 100 # plotvariable = current } macrostrain { substrate = n_contact #substr } efaschroedinger { x-periodicity = false Dirichlet_bc_everywhere = true number_of_eigenstates = 20 poisson_model_name = driftdiffusion # potential from driftdiffusion strain_model_name = macrostrain convergent_density = true log_output= false } QW1_electrons { particle = el } QW2_electrons { particle = el } QW3_electrons { particle = el } QW1_holes { particle = hl } QW2_holes { particle = hl } QW3_holes { particle = hl } optics { initial_state_model = QW3_electrons # quantum_el final_state_model = QW3_holes # quantum_hl initial_eigenstates = (0, 19) final_eigenstates = (0, 19) } # optical spectrum spectrum { k_space_dimension = 2 k-space_basis = true k1 = (0, 0, 0.1) k2 = (0, 0.1, 0) refine_fraction = 0.30 # 1.0 for uniform refinement relative_accuracy = 0.01 # refine_k_space = true number_of_nodes = (2,2) # numb. of elememts in k mesh, along x and y wedge = quarter optical_matr_elem_model=optics polarization = (0, 0, 1) Emin = 3.0 Emax = 5.0 dE = 0.001 } } # Definition of Model dependent physical parameters $Physics { driftdiffusion { statistics = FD strain_simulation = strain } # quantum_electrons QW1_electrons { particle = el model = conduction_band #eff mass cb } QW2_electrons { particle = el model = conduction_band #eff mass cb } QW3_electrons { particle = el model = conduction_band #eff mass cb } # quantum_holes QW1_holes { particle = hl model = kp # k.p for valence band kp_model = 6x6 } QW2_holes { particle = hl model = kp # k.p for valence band kp_model = 6x6 } QW3_holes { particle = hl model = kp # k.p for valence band kp_model = 6x6 } optics { } } # Definition of model-indipendent parameters of the Simulation $Simulation { #searchpath = ../../materials meshfile = led_spectrum.msh # verbose = 3 mesh_units = 1e-9 #nm dimension = 1 temperature = 300 solve = (strain, sweep, QW3_electrons,QW3_holes, spectrum ) resultpath = output_V4_QW3 plot = (Ec, Ev, QFermi_e, QFermi_h, EField , eDensity, hDensity, eCurrent, hCurrent, Current, NetRecombination, eMob, hMob, T, strain, polarization, xEffPot, xDensity, xMob, ExcitonRecombination, Occupation, EigenFunctions, EigenEnergy,EnergyLevels, xCurrent, optical_spectrum, k-space ) output_format = grace }