Difference between revisions of "Simulation/Comsol"
(6 intermediate revisions by the same user not shown) | |||
Line 9: | Line 9: | ||
When you open Comsol, the Model Navigator is the first window to pop up. This is where you select the relevant differential equations to solve. Choose the dimension of the problem first (upper right-hand corner), as this affects the physical models available to you. To choose a single model, click on it. To use multiple models, click the "Multiphysics" button in the lower right-hand corner, then use the add key to add all the models you intend to use. | When you open Comsol, the Model Navigator is the first window to pop up. This is where you select the relevant differential equations to solve. Choose the dimension of the problem first (upper right-hand corner), as this affects the physical models available to you. To choose a single model, click on it. To use multiple models, click the "Multiphysics" button in the lower right-hand corner, then use the add key to add all the models you intend to use. | ||
+ | |||
+ | Once you have chosen a model type, click "OK" to open the drawing window. The window on the far left is the model tree, which in most cases you don't need. The toolbar immediately to the right of that deals with drawing objects. Most useful buttons are in the upper left hand corner (square, circle, etc.). In 3D, there are also some buttons that deal with camera angle and perspective. For drawing, the only useful buttons on the top bar are the zoom keys. | ||
+ | |||
+ | [[File:COMSOL_drawingscreenshot.png|500px]] | ||
+ | |||
+ | Once your structure is drawn, you can specify physical properties. To do this, go to Physics > Subdomain settings (or press F8) and a dialog will pop up. You can select a subdomain (drawn object) either by number, which will highlight it in the drawing window, or by clicking on it. Comsol has a library of materials and their relevant properties, or you can define your own. You can define the boundary settings in much the same way by going to Physics > Boundary setting (or press F7). | ||
+ | |||
+ | Comsol will accept variable names rather than numbers so long as they are defined elsewhere. These variable names can either be defined by constants (e.g. the index of refraction of Si) or by expressions (e.g. the temperature-dependent thermal conductivity of Si). To define a constant, go to Options > Constants ..., type the name you used in the physical properties box on the left and the value in the middle column. To define an expression, go to Options > Expressions, choose the relevant type of expression, and define it in the same way as for constants. It is safe to ignore any errors relating to units that may arise. | ||
+ | |||
+ | To solve, you can click solve directly, which will automatically generate a mesh or click mesh and then solve. The results can be investigated further by clicking Postprocessing > Plot parameters..., which will change the plot in the main window or >Cross-section plot parameters..., which will give you an option to spawn a new plot window. The data from a 2D or 1D plot window can be exported easily as a text file, but it is difficult to do this from 3D data. | ||
== Thermal modeling == | == Thermal modeling == | ||
+ | |||
+ | In general, heat is conducted by three mechanisms: conduction, convection, and black-body radiation. Conduction is self-explanatory and in semiconductor devices dominant. Convection requires a working fluid, for example the air around a device. Black-body radiation in devices at reasonable operating temperatures is very low because: 1) they are not at all ideal black bodies; and 2) the temperature difference between the surface of a device and what it is facing (some random object in the lab, usually) is not very large. | ||
+ | |||
+ | For a simple, steady-state model, in the Model Navigator, choose: COMSOL Multiphysics > Heat Transfer > Conduction > Steady-state analysis. This assumes that no convection occurs within the geometry you define - it is still possible, choosing this option, to define convective and radiative heat transfer at the boundaries of your model. | ||
+ | |||
+ | The size of the substrate matters - if it is drawn too small, the model will show a much higher temperature rise than the device actually sees. | ||
+ | |||
+ | Comsol has a library of common materials with defined thermal conductivities, but this does not include III-V semiconductors. The thermal conductivities of these materials can be found in this paper: [[Media:Cond_consts_gpsIII_IV_V.pdf]]. for steady-state modeling, the heat capacity is irrelevant. The source term in a thermal model is Q, the power dissipated per unit volume (in W/m^3). In general, power dissipation is not evenly distributed in a device, but assuming that it is in lasers, surface-normal photodetectors, and modulators yields reasonable results. In that case, Q is just I*V/volume. Numbers on the order of 1e15 are reasonable here. | ||
+ | |||
+ | For boundary conditions, unless you are going to air-cool your device, most boundaries will be insulating, except the bottom of the chip, which can be held at constant temperature by the stage. | ||
+ | |||
+ | Here is an example: [[file:ComsolThermal.rar]]. The purpose was to estimate crosstalk between adjacent devices on the [[LASOR]] buffer, so the heat source is not very carefully placed within each laser. | ||
== Mode solving == | == Mode solving == | ||
== Examples == | == Examples == |
Latest revision as of 12:16, 16 July 2012
Comsol is a generic FEM differential equation solver with built-in support for multiple physical models. It is most commonly used in our group for solving steady-state temperature distributions and waveguide modes, but it can be used to solve transient equations as well. One of the benefits of Comsol is that it can use multiple physical models simultaneously - Joule heating, for example, can be used to evaluate the thermal properties of any forward-biased diode, taking contact design into account. It does not, however, have built-in support for semiconductor transport equations.
Installation[edit]
Our group has a copy of Comsol that can be installed from CDs kept in 2221A. The license file can be obtained here: Media: Comsol_license.txt. Save the linked file as a .dat.
General operation[edit]
When you open Comsol, the Model Navigator is the first window to pop up. This is where you select the relevant differential equations to solve. Choose the dimension of the problem first (upper right-hand corner), as this affects the physical models available to you. To choose a single model, click on it. To use multiple models, click the "Multiphysics" button in the lower right-hand corner, then use the add key to add all the models you intend to use.
Once you have chosen a model type, click "OK" to open the drawing window. The window on the far left is the model tree, which in most cases you don't need. The toolbar immediately to the right of that deals with drawing objects. Most useful buttons are in the upper left hand corner (square, circle, etc.). In 3D, there are also some buttons that deal with camera angle and perspective. For drawing, the only useful buttons on the top bar are the zoom keys.
Once your structure is drawn, you can specify physical properties. To do this, go to Physics > Subdomain settings (or press F8) and a dialog will pop up. You can select a subdomain (drawn object) either by number, which will highlight it in the drawing window, or by clicking on it. Comsol has a library of materials and their relevant properties, or you can define your own. You can define the boundary settings in much the same way by going to Physics > Boundary setting (or press F7).
Comsol will accept variable names rather than numbers so long as they are defined elsewhere. These variable names can either be defined by constants (e.g. the index of refraction of Si) or by expressions (e.g. the temperature-dependent thermal conductivity of Si). To define a constant, go to Options > Constants ..., type the name you used in the physical properties box on the left and the value in the middle column. To define an expression, go to Options > Expressions, choose the relevant type of expression, and define it in the same way as for constants. It is safe to ignore any errors relating to units that may arise.
To solve, you can click solve directly, which will automatically generate a mesh or click mesh and then solve. The results can be investigated further by clicking Postprocessing > Plot parameters..., which will change the plot in the main window or >Cross-section plot parameters..., which will give you an option to spawn a new plot window. The data from a 2D or 1D plot window can be exported easily as a text file, but it is difficult to do this from 3D data.
Thermal modeling[edit]
In general, heat is conducted by three mechanisms: conduction, convection, and black-body radiation. Conduction is self-explanatory and in semiconductor devices dominant. Convection requires a working fluid, for example the air around a device. Black-body radiation in devices at reasonable operating temperatures is very low because: 1) they are not at all ideal black bodies; and 2) the temperature difference between the surface of a device and what it is facing (some random object in the lab, usually) is not very large.
For a simple, steady-state model, in the Model Navigator, choose: COMSOL Multiphysics > Heat Transfer > Conduction > Steady-state analysis. This assumes that no convection occurs within the geometry you define - it is still possible, choosing this option, to define convective and radiative heat transfer at the boundaries of your model.
The size of the substrate matters - if it is drawn too small, the model will show a much higher temperature rise than the device actually sees.
Comsol has a library of common materials with defined thermal conductivities, but this does not include III-V semiconductors. The thermal conductivities of these materials can be found in this paper: Media:Cond_consts_gpsIII_IV_V.pdf. for steady-state modeling, the heat capacity is irrelevant. The source term in a thermal model is Q, the power dissipated per unit volume (in W/m^3). In general, power dissipation is not evenly distributed in a device, but assuming that it is in lasers, surface-normal photodetectors, and modulators yields reasonable results. In that case, Q is just I*V/volume. Numbers on the order of 1e15 are reasonable here.
For boundary conditions, unless you are going to air-cool your device, most boundaries will be insulating, except the bottom of the chip, which can be held at constant temperature by the stage.
Here is an example: File:ComsolThermal.rar. The purpose was to estimate crosstalk between adjacent devices on the LASOR buffer, so the heat source is not very carefully placed within each laser.