# set to true to use the thick top metal option thick_top_metal = False # loss tangent value to use in oxide layer definitions loss_tangent = 0 # NOTE: setting a non-zero loss tangent can cause some problems with Momentum # The stack is entered from bottom to top, starting with the bulk. # BulkLayer arguments: thickness, resistivity, dielectric loss tangent bulk = BulkLayer(300 * um, 11.9, 20 * Ohm_cm, loss_tangent) # NOTE: # Sonnet uses dielectric loss tangent AND resistivity # Momentum uses only resistivity # Create a SubstrateStack object using the specified bulk layer. stack = SubstrateStack(bulk) # Add all oxide layers to the stack, starting with the bottom one, working # up to the top. # OxideLayer arguments: thickness, relative epsilon, loss tangent stack.add_oxide_layer_on_top(OxideLayer(300 * A, 7, loss_tangent)) stack.add_oxide_layer_on_top(OxideLayer(5.0 * kA, 4, loss_tangent)) stack.add_oxide_layer_on_top(OxideLayer(300 * A, 4.1, loss_tangent)) # The following oxide layers repeat four times for i in range(4): stack.add_oxide_layer_on_top(OxideLayer(5.0 * kA, 3.7, loss_tangent)) stack.add_oxide_layer_on_top(OxideLayer(300 * A, 4.1, loss_tangent)) # The thickness of the following layers depend on the thick metal option if thick_top_metal: