93
1 SolariaPCB Manual Version 3.0 Contents 1 The Overall Process ............................................................................................................................... 3 2 The Project File...................................................................................................................................... 4 2.1 Changing Projects ............................................................................................................................ 4 2.2 Removing PCBs from the Project file ............................................................................................... 5 2.3 Project path...................................................................................................................................... 5 3 SolariaPCB flow path ............................................................................................................................. 6 4 Importing an ODB++ file........................................................................................................................ 7 5 Board Outline ........................................................................................................................................ 9 6 Defining layers in the board ................................................................................................................ 10 6.1 Simplifying Layer in the PCB .......................................................................................................... 12 6.2 Simplifying PCB planes ................................................................................................................... 13 7 Defining what is viewed on the screen ............................................................................................... 16 8 Adding Thermal Contact ..................................................................................................................... 16 9 Add Simple Flow.................................................................................................................................. 18 10 Add Natural Convection ................................................................................................................. 18 11 Adding Vias .................................................................................................................................... 20 12 Adding Stiffeners............................................................................................................................ 21 13 Adding a surface heat load to the board ....................................................................................... 22 14 Adding a Layer Plate ...................................................................................................................... 24 15 Adding Wedgelock Edge Contact ................................................................................................... 25 16 Adding Cutouts .............................................................................................................................. 26 17 Deleting items on the PCB ............................................................................................................. 28 18 Editing Vias..................................................................................................................................... 29 19 Editing Cutouts............................................................................................................................... 29 20 PCB default settings ....................................................................................................................... 30 21 Getting information on a particular feature .................................................................................. 33 22 Electronic components .................................................................................................................. 34

SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

1

SolariaPCB Manual Version 3.0

Contents 1 The Overall Process ............................................................................................................................... 3

2 The Project File...................................................................................................................................... 4

2.1 Changing Projects ............................................................................................................................ 4

2.2 Removing PCBs from the Project file ............................................................................................... 5

2.3 Project path ...................................................................................................................................... 5

3 SolariaPCB flow path ............................................................................................................................. 6

4 Importing an ODB++ file........................................................................................................................ 7

5 Board Outline ........................................................................................................................................ 9

6 Defining layers in the board ................................................................................................................ 10

6.1 Simplifying Layer in the PCB .......................................................................................................... 12

6.2 Simplifying PCB planes ................................................................................................................... 13

7 Defining what is viewed on the screen ............................................................................................... 16

8 Adding Thermal Contact ..................................................................................................................... 16

9 Add Simple Flow .................................................................................................................................. 18

10 Add Natural Convection ................................................................................................................. 18

11 Adding Vias .................................................................................................................................... 20

12 Adding Stiffeners ............................................................................................................................ 21

13 Adding a surface heat load to the board ....................................................................................... 22

14 Adding a Layer Plate ...................................................................................................................... 24

15 Adding Wedgelock Edge Contact ................................................................................................... 25

16 Adding Cutouts .............................................................................................................................. 26

17 Deleting items on the PCB ............................................................................................................. 28

18 Editing Vias ..................................................................................................................................... 29

19 Editing Cutouts ............................................................................................................................... 29

20 PCB default settings ....................................................................................................................... 30

21 Getting information on a particular feature .................................................................................. 33

22 Electronic components .................................................................................................................. 34

Page 2: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

2

22.1 Mapping Components................................................................................................................. 34

22.2 Adding components to the library .............................................................................................. 35

22.3 The Component Library .............................................................................................................. 36

22.4 Component Geometry ................................................................................................................ 37

22.5 Component Thermal Properties ................................................................................................. 38

22.5.1 Guidelines for creating the component thermal representation ....................................... 38

22.5.2 DELPHI thermal model ........................................................................................................ 40

23 Placing a component on the board ................................................................................................ 42

23.1 Adding to the Working Set .......................................................................................................... 42

23.2 Placing the Component on the Board ......................................................................................... 43

23.3 Import component data .............................................................................................................. 44

24 Defining Active components .......................................................................................................... 45

25 Creating a Solaria model ................................................................................................................ 47

25.1 Solving the board ........................................................................................................................ 48

25.2 Viewing component temperatures in a table ............................................................................. 48

25.3 Viewing component temperatures graphically .......................................................................... 49

26 Deleting a PCB from a Solaria model ............................................................................................. 50

27 Calculate PCB effective thermal conductivity ................................................................................ 51

28 Inserting a PCB into a chassis model .............................................................................................. 53

28.1 Auto Move Object feature in Solaria .......................................................................................... 53

29 Details of the Solaria Thermal model ............................................................................................ 65

29.1 Representing the board .............................................................................................................. 65

29.2 Representing Traces .................................................................................................................... 66

29.2.1 Algorithms validation .......................................................................................................... 68

29.3 Representing Vias ....................................................................................................................... 70

29.4 Modeling components ................................................................................................................ 71

29.4.1 Attaching the component to the board .............................................................................. 71

29.5 Modeling the Wedgelock Edge ................................................................................................... 72

30 Joule Heating.................................................................................................................................. 73

31 Representing Simple Air Flow ........................................................................................................ 88

32 Representing natural Convection .................................................................................................. 90

Page 3: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

3

Introduction

SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment.

When is SolariaPCB mode, you work at the single board level, defining its shape and layers, placing

components and defining thermal boundary conditions. You can easily switch between multiple boards

that are going to go into a single chassis level Solaria model. A board can be manually defined or an

ECAD database can be imported. Once the definition of the board is complete, a ready to solve Solaria

thermal model is automatically generated. At that point you are working within the Solaria

environment. So now you are working with elements and nodes. But the roots of the board definition

are not lost. You can merge the board with other boards into a chassis and solve the entire system. You

still get clear tables for each board in the chassis summarizing component temperatures.

There are two operating modes for Solaria. The first and initial is Solaria. In this mode you are working

with the elements of the model. The second is PCB mode. In this mode you are looking at a PCB,

components, traces and all features that make up a printed circuit board. In Solaria mode, the PCB top

menu is grayed out, not accessible. All other menus are accessible. To switch from Solaria mode to PCB

mode, hit the toolbar button. If you dwell your mouse over the button it will tell you what mode

you are in, or .

The picture below shows the PCB menu. All features in PCB mode are in this single menu. You can work

on multiple boards at a time. When you save a PCB file, the name of the file will be added to the PCBs

sub-menu. To switch to a different board simply select PCB>PCBs then select the board name. If

changes have been made to the current board, these changes are automatically saved.

1 The Overall Process In Solaria Mode the electronic chassis or enclosure model would be generated. In this environment you

are building models with Nodes and elements, importing DXF geometry or solids geometry through

Netgen or Gmsh. You also solve models for temperatures and view the results. In PCB Mode, you are

building printed circuit boards (PCBs). You import an ODB++ file to start with or generate the board

from scratch. In this environment you are building the PCB by defining its outline, defining the layers in

the board, placing components, stiffeners, Layer Plates, thermal interfaces, Wedgelock Edges and

Surface Heat. Once the PCB is completed you hit a menu item to create a complete, ready-to-solve

Solaria model. The model is generated in the Solaria Mode environment. If there is already a model in

the Solaria Mode environment, then the new PCB is merged with it. You are given the opportunity to

offset the PCB in the X, Y and Z directions. When the model is initially generated, the lower left corner

of the PCB is 0, 0, 0. When the Solaria model is generated, it is placed into its own Group. So later in the

Solaria Model environment, you can easily look at each board individually. During the model generation

process, the Solaria Nodes that represent the components Junction, Case and local board surface

Page 4: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

4

temperatures are saved. After the model is solved, you can view component temperature is a tabular

form. When you create a color temperature contour of the PCB, the Junction and Case temperatures

are also represented by color plates at their location on the board.

When you create a PCB you can add Flow/Convection boundary conditions or Thermal Contact

boundary conditions and solve the PCB for temperatures by itself. On the other hand, you can create

Thermal Contacts that have IntelliMesh on the surface. This allows you to merge it into a chassis level

model that has its own thermal boundary conditions. IntelliMesh allows you to thermally connect the

chassis and PCB model even though they have very different meshes at their interface.

2 The Project File A list of boards you are working on are saved in a Project File. As time goes on, more information will be

saved in this file. The user never needs to look at this or manually edit this file.

2.1 Changing Projects

Solaria saves the last four Project Folders you have worked on. This makes it easy for you to work on

multiple projects at the same time. This also ensures that files from one project don’t get into another

projects folder. When you change to a different folder, the current Solaria and SolariaPCB data is saved

and cleared, the Project Folder is changed and the Project file, if it exists, is opened and the first PCB is

opened.

Page 5: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

5

2.2 Removing PCBs from the Project file

To remove a PCB from the Project, select PCB>Remove PCB from Project. Select the PCB then hit the

Remove button.

2.3 Project path

It is important to define a project path. This defines the location for your PCB files and Solaria models

created. Select PCB>Path Control. Hit the Project path button and select the folder where you want all

the project files to reside.

You can also select File>Change Project Path or PCB>Path Control.

Page 6: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

6

3 SolariaPCB flow path

PCB>Add Menu

Stiffeners

Thermal Contact

Surface Heat

Layer Plate

Vias

Air flow

Wedgelock Edge

Define board outline PCB>PCB Outline

Add components to the Working Library PCB>Add Components to Lib

Place components on the board Add>Component Import ECAD data PCB>Import ODB++

Import ECAD data

Manually define board

Settings>Properties

Define mesh constraints

Define solution constraints

Define/Edit layers to define dielectric

PCB>PCB Layers

Import power dissipation file or manually define

Solve the model Solve>Steady State

Create Solaria Model PCB>Build board model

Define Active components

PCB>Define Active Components

Page 7: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

7

4 Importing an ODB++ file Most ECAD systems can export an ODB++ file. This is a compressed file that contains the complete

board definition. There is no need to import Gerber, drill or IDF files. The single file contains

components, layers, vias, traces and planes. An ODB++ file should have the tgz extension. The name of

the file should not be changed as it is the name of the folder that is created when the file is

uncompressed by SolariaPCB.

Select PCB>Import ODB++. First select the units you are using in the Select Units drop down. Next

define the Number of segments in a circle from the drop down. This defines how circles and arcs are

represented when imported. This has a slight effect on model build time. A smaller number will build

faster. Typically 4 or 6 are fine. If you plan to do Joule Heating simulation where the exact definition of

the trace or plane is meshed into the model, 4 segments in a circle should be used. Larger values can

make model generation time exceedingly long and the model unnecessarily large.

If the file has not been imported (or expanded) yet, hit the Browse button under the Compressed ODB++

File and select the tgz file. If it had been expanded, then you will receive a message to that effect. In

this case you will select the second option.

If the ODB++ had already been open, or expanded, then hit the Browse button under the Root folder for

ODB++ files then select the folder.

Page 8: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

8

The folders containing the board data will be read and the dialog filled as shown below. Next hit the

Import button. The status will be given at the top of the dialog. In this case there are 122 different

components in the library and 1269 placed components. The library contains the component type,

geometry and lead/pad/solder ball locations, material and geometry. The placed components reference

a component in the library, defines its location, the side of the board it is on, the power dissipation if

different in the library, the component rotation and if the component is bonded to the PCB surface.

When it is Done, hit the Cancel button.

The Map Component dialog will come up next. This dialog is discussed in more detail later.

Components in the SolariaPCB Master Component Library are shown in the left column and the

Page 9: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

9

components in the current board library are shown on the right. The ODB++ file includes a component

outline, its location on the board, the side of the board it is on and the location of all leads/pads/solder

balls. It does not contain lead geometry or thermal information. This information is needed to perform

a thermal simulation of the component. If you had defined this information for a component, you can

add that component to the Master Component Library. Now in the Map Component dialog, SolariaPCB

will look for a match between those components just imported and the components in the Master

Component Library. If one is found, as shown below, you can hit Yes to map. In this case, the complete

information in the library component will be used for the component just imported.

5 Board Outline Select PCB>PCB Outline. The shape or outline of the board is defined by a series of X-Y data points. It is

assumed that the first and last points are connected. You can open a file that has space delimited data

points that define the board outline by hitting the Import button. When you import an ODB++ file, this

data is included.

Page 10: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

10

6 Defining layers in the board The PCB layers dialog is used to add, remove or modify layers in the board. If an ECAD database is

imported then all layers, metal and dielectric, are imported. The thickness of each is also imported. If a

board is being built from scratch, then layers can be manually added.

Select PCB>PCB Layers to edit or define the layers in the board.

Update Materials

To redefine all of the Conducting and Dielectric layers materials to those defined in the Default Layer

Material area, hit the Update Materials button.

Simplify Layers

This is explained in the next section.

Page 11: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

11

Add Layer

Hit the Add Layer button to add a layer. The initial information used is defined in the Default Layer

Material area of the dialog.

Delete Layer

To delete a layer, select any item on that layer then hit the Delete Layer button.

Insert Layer

To insert a layer, select any tem on the line just after the line you want to insert then hit the Insert Layer

button.

Name

This is the name given to the layer. It is defined by the user.

Thickness

Enter the thickness of the layer. Units must be consistent throughout the board definition.

Type

There are four types of layers, Conducting, Dielectric, 2D and 3D. A conducting layer has metal traces or

power or ground planes on it. A Dielectric layer is an electrical insulation layer. A 2D layer is just a layer

that is represented with 2D Plate type elements in the model. A 3D layer is just a layer that is

represented by 3D Brick type elements in the model. In the figure below, an aluminum heat sink or

conducting plate is bonded to the backside of the board. The bond layer would be represented with a

3D layer. A 3D layer accounted for the temperature rise through its thickness. The heat sink could be

represented by either a 2D or 3D layer. If you are going to use the Wedgelock Edge feature to extend

the edges of the heatsink then the layer must be a 3D type.

Material

This is the material the layer is made of. For Conducting layers, only Metal type materials will be shown

in the list. For Dielectric layers, only Dielectric type materials will be shown in the list.

Page 12: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

12

Coverage

This defines how the Conducting layers are represented. If there is a check then the thickness of the

layer is multiplied by the Percentage and divided by 100. If traces are imported from an ODB++ file,

then this should NOT be checked. In this case the traces on the layer will be used to more accurately

create elements in the Solaria model. This is explained in Section 29.2.

Color

This defines the color of the traces as shown on the screen.

6.1 Simplifying Layer in the PCB

When performing Joule Heating, the mesh can get large. If there are many layers in the board, the

Solaria model can get very large since every layer is explicitly represented. There is an option in the

PCB>PCB Layers dialog to simplify layer in the board. This will combine metal layers together and add

dielectric layers. Layers with Joule Heating defined are left untouched.

NOTE: There is no Undo for this operation. It is recommended that the board file be saved with a

different name prior to doing this operation.

Below shows a cross section of a PCB. This function merges metal layers together and adds dielectric

layers. Layer that have Joule heating defined are not changed.

Page 13: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

13

Below shows how the Layer dialog shown above with 12 metal layers is changed to 3 metal layers.

6.2 Simplifying PCB planes

For some reason, a filled area on a layer may be very complex. This can result in a very fine mesh when

the board model is created. When calculating voltage drop or temperatures, this complexity is not

necessary to give accurate results.

Select PCB>Simplify Layer. Select the layers that you want this operation performed on by checking the

metal layer.

NOTE: There is no Undo for this operation. It is recommended that the board file be saved with a

different name prior to doing this operation.

Page 14: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

14

Below shows an area of a power plane in a PCB.

When the plane is defined as Joule heating, below shows the mesh created.

In the PCB>Simplify Layer dialog, if the layer is selected, it can be simplified. In the Maximum

Dimension edit box, enter a linear dimension of the maximum dimension you want. It is suggested to

start large. If when you hit the Process button, nothing happens, reduce the value and try again. In the

Number of vertices edit box, enter the smallest number of vertices defining a filled area you want to

have processed. Hit the Process button.

Page 15: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

15

Below shows an example of simplifying a group of features in a power plane.

Below shows how the mesh is simplified.

Page 16: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

16

7 Defining what is viewed on the screen Select PCB>View Entities to define what is drawn to the screen. Color boxes can be clicked on to change

their color. All settings are saved when Solaria is closed. The screen is updated as each item is changed.

Remember, if you add, for instance, a Surface Heat and it is not checked, after creating it, it will not be

drawn to the screen.

Set/Clear Buttons – Check and uncheck all checkboxes.

8 Adding Thermal Contact Thermal contacts are to represent an area of the surface of the board in contact with a heat sink. This

contacting surface can be defined by a defined temperature. If a temperature is not defined then

IntelliMesh Slave surfaces are created at the mating surface. In this way the Thermal Contact area can

mate to a chassis or other model that provides a heat transfer path. IntelliMesh allows the contact to be

made with different meshes on the mating surfaces.

Page 17: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

17

Select PCB>Add Thermal Contact.

Side

This defines the side the thermal contact is on. In the Solaria model that is generated, Interface

elements are created on this side of the board.

Rectangular or Circular

The contact area can be rectangular or circular.

Width

This is the X or horizontal dimension of the contact if set at Rectangular.

Length

This is the Y or vertical dimension of the contact if set at Rectangular.

Diameter

The diameter of a circular area.

Resistance

This is the thermal resistance of the contact between the board surface and the heat sink. The units

should be in C/W, or those appropriate to the units you are using.

X-Y

This defines the X and Y location of the center of the contact area. If the contact is on the back of the

board, this is the X and Y location as looking from the FRONT of the board.

Select Diagonal

An additional way to define the location and size of the Thermal Contact is to select the Select Diagonal

button. As instructed on the button, select the diagonal points. The X and Y location as well as the

Width and Length will automatically be entered in the dialog.

Add

There are two ways to place the Thermal Contact. One is to enter the X and Y location of the center of

the area then hit the Add button. Note that when you are on the X-Y plane, the X and Y location of the

mouse is given on the bottom of the Solaria window. The second way is to check “Place with mouse”

then select the center of the contact area with the mouse. You can change the significant figures in the

X and Y location by going to Settings>OpenGL>Display. In the Text Display area, change the number of

decimal places displayed.

Page 18: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

18

9 Add Simple Flow Fluid flow can be simulated by creating convection elements from the exposed board surfaces, stiffener

surfaces and component surfaces to a local air node. These local fluid nodes are connected using Solaria

Flow elements to account for the temperature rise of the fluid. Solaria Convection elements are

generated between the board surfaces and the local fluid nodes. A heat transfer coefficient is calculated

but should be verified so it accurately represents your configuration.

In the PCB>Settings dialog, in the Model tab, the number of flow nodes can be defined.

10 Add Natural Convection Natural convection is defined as heat transfer from a surface to a fluid where the fluid

movement is buoyancy induced. As the surface of a PCB heats up, it heats the surrounding air.

As the air heats, its density reduces which causes it to rise. This air movement induces better

heat transfer from the surface to the fluid. As the surface heats, the air movement increases,

which intern enhances the heat transfer. This phenomenon is simulated by calculating a heat

transfer coefficient that is a function of the temperature difference between the surface and

the fluid.

Natural convection is relatively inefficient. Therefore, radiation heat transfer from the board to

the surroundings can be significant.

Page 19: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

19

Therefore when defining natural convection, you also have the option to define radiation heat

transfer as well.

Important note:

As explained above, natural convection is a function of the board temperature. It is also

effected by obstacles near the board which can hinder air flow. If this happens then higher

temperatures can result. On the other hand, pure natural convection is actually difficult to

achieve. Any slight forced air movement near the board can create more air movement than

that induced by the buoyancy. This can result in lower temperatures than those predicted. The

equations used in the calculation of the temperature difference heat transfer coefficient are

empirically formulated.

This can be simulated in SolariaPCB by selecting PCB>Add>Define Nat Convection.

The efficiency of natural convection depends on the orientation of the board. First define if the

board is horizontal or vertical. If it is vertical, then appropriate factors are used. If the board is

Page 20: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

20

horizontal, then the side that is facing up must be defined. Heat transfer from the top side of

the board is more efficient than the side facing down and appropriate factors are used.

You can define natural convection from the front and/or back of the board. Select Front Side

then define the conditions, including the ambient temperature. Next check Cooling Exists then

hit the Add button. Do the same if there is similar heat transfer from the other side by selecting

the Back Side radio button.

Often, the surrounding surfaces are at a different temperature than the ambient air. So when

defining radiation heat transfer the surrounding temperature is defined.

11 Adding Vias If an ODB++ file is imported then vias will automatically be imported and thermally represented in the

thermal model. An array of vias can also be created manually. Select PCB>Add Vias. The settings in the

dialog shown below created the via array shown below the dialog.

Page 21: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

21

Defining the layers the via is connected to

When the via drill hole is plated, it is electrically and thermally connected to the traces that cut through

the hole. SolariaPCB connects thermal resistors between these layers. These layers should be checked

in the dialog. Note that only metal layers are displayed.

Via location

Define the X and Y location of the lower left corner of the area of the vias. You can enter the X and Y

location or after all information is defined, check “Place component with mouse” then select the lower

left corner with the mouse. You will notice that the location of the mouse will appear in the X and Y edit

boxes. An array of vias will be created depending on the via pitch and the Length and Width of the area.

12 Adding Stiffeners

A stiffener is a three-dimensional material that is bonded to the board surface.

Side

This is the side of the board the stiffener is on.

Width

This is the X or horizontal dimension of the stiffener.

Length

This is the Y or vertical dimension of the stiffener.

X-Y

This defines the X and Y location of the center of the stiffener. If the stiffener is on the back of the

board, this is the X and Y location as looking from the FRONT of the board.

Page 22: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

22

Material

This is the material the stiffener is made of.

Attach Properties

Define the Thickness and Material of the attach material.

Select Diagonal

An additional way to define the location and size of the Stiffener is to select the Select Diagonal button.

As instructed on the button, select the diagonal points. The X and Y location as well as the Width and

Length will automatically be entered in the dialog.

Add

There are two ways to place the Stiffener. One is to enter the X and Y location of the center of the area

then hit the Add button. Note that when you are on the X-Y plane, the X and Y location of the mouse is

given on the bottom of the Solaria window. The second way is to check “Place with mouse” then select

the center of the contact area with the mouse. You can change the significant figures in the X and Y

location by going to Settings>OpenGL>Display. In the Text Display area, change the number of decimal

places displayed.

13 Adding a surface heat load to the board

Location of the heat load

If the area of the heat load is rectangular, then the X-Y location is the center of the area. If the area is

circular then the X-Y location is the center of the circle. If defined heat load areas overlap, they will be

additive in the overlapping areas.

Page 23: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

23

Heat load

This is the power to be defined over the area. In the Solaria model surface heat load elements are

created with a value in the property table of Heat Load divided by the applied area.

Layer

The surface heat load can be applied to the top or bottom surfaces of the board or any internal

Conducting layer. Simply select the layer you want the heat load applied. The last layer in the drop

down list will be the back surface of the board.

Width

If Rectangle is selected, enter the X or horizontal dimension of the heat load area.

Length

If Rectangle is selected, enter Y or vertical dimension of the heat load area.

Diameter

If Circular is selected, enter the diameter of the heat load area.

Select Diagonal

An additional way to define the location and size of the Surface Heat is to select the Select Diagonal

button. As instructed on the button, select the diagonal points. The X and Y location as well as the

Width and Length will automatically be entered in the dialog.

Add

There are two ways to place the Surface Heat Load. One is to enter the X and Y location of the center of

the area then hit the Add button. Note that when you are on the X-Y plane, the X and Y location of the

mouse is given on the bottom of the Solaria window. The second way is to check “Place with mouse”

then select the center of the contact area with the mouse. You can change the significant figures in the

X and Y location by going to Settings>OpenGL>Display. In the Text Display area, change the number of

decimal places displayed.

Page 24: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

24

14 Adding a Layer Plate A Layer Plate is an area on a metal layer of the board where more metal is added by the user. The area

can be rectangular or circular. The material and thickness will be that defined for the layer selected.

Location of the Layer Plate

If the area of the Layer Plate is rectangular, then the X-Y location is the center of the area. If the area is

circular then the X-Y location is the center of the circle. If defined Layer Plates areas overlap, they will

be additive in the overlapping areas.

% Coverage

This is the percent coverage of the metal to be defined over the area. Typically this is 100 percent. But

if the metal is perforated for RF reasons, the value should be the metal area over the total area times

100.

Layer

The Layer Plate can be applied to the top or bottom surfaces of the board or any internal Conducting

layer. Simply select the layer you want the Layer Plate. The last layer in the drop down list will be the

back surface of the board.

Width

If Rectangle is selected, enter the X or horizontal dimension of the Layer Plate area.

Length

If Rectangle is selected, enter Y or vertical dimension of the Layer Plate area.

Page 25: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

25

Diameter

If Circular is selected, enter the diameter of the Layer Plate area.

Select Diagonal

An additional way to define the location and size of the Layer Plate is to select the Select Diagonal

button. As instructed on the button, select the diagonal points. The X and Y location as well as the

Width and Length will automatically be entered in the dialog.

Add

There are two ways to place the Layer Plate. One is to enter the X and Y location of the center of the

area then hit the Add button. Note that when you are on the X-Y plane, the X and Y location of the

mouse is given on the bottom of the Solaria window. The second way is to check “Place with mouse”

then select the center of the contact area with the mouse. You can change the significant figures in the

X and Y location by going to Settings>OpenGL>Display. In the Text Display area, change the number of

decimal places displayed.

15 Adding Wedgelock Edge Contact A Thermal Contact can be defined from the board surface. But heatsinks typically extend beyond the

edges of the board. This feature will extend the heatsink layer of the board to accommodate a

Wedgelock. A 3D Layer much previously exist in the PCB. How the Wedgelock Edge Contact is

represented in the Solaria model is described in Section 29.5.

Board Edge

The selected 3D layer of the board can be extended on the four sides of the board.

Page 26: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

26

3D Layer

Existing 3D layers are listed in the drop down. Select the one that extends.

Wedgelock Exists

To disable the Wedgelock Edge, uncheck Wedgelock Exists.

Define edge temperature

If the board is going to be solve stand-alone, then check Define edge temperature and enter its value in

the Edge temperature edit box. If this is left unchecked then IntelliMesh elements will be created on the

Interface elements where you can attach the PCB to a chassis.

Resistance

This defines the thermal resistance of the contact between the 3D layer contacting surface and the

chassis. This value is typically defined by the wedgelock manufacturer.

PCB Side

This defines the side that is in thermal contact with the chassis.

16 Adding Cutouts A Cutout is a hole in the board. The hole can pass through the entire board or just go from the board

surface down to a defined layer of the board. The partial hole can start on the front or the back side of

the board. If a component, or the leads of a component, lie within a Cutout, the thermal resistors that

represent the components contact with the board surface will automatically be attached to the upper

most exposed layer of the board.

The shape of a Cutout is defined by a set of three or more points. Four methods are provided to define

the points. If the Cutout area is rectangular then two methods are provided. The first, selecting

Rectangular, is done by defining the Width (horizontal direction) and the Length (vertical direction).

Next define the position on the board by entering the X and Y center location then hitting the Add

button or selecting the location with the mouse by checking Place with mouse. The second way is to

select Diagonal points then hit the Select points button. Next, select two diagonal points with the

mouse that define the corners. Next hit the Add button.

Page 27: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

27

To define a circular Cutout, select Circular, define the diameter then define the location as described for

a Rectangular area. To define an arbitrary shape, select Multiple points, hit select points then select

locations on the board that define the shape. The Select points button will be redefined to DONE. Hit

the DONE when you are finished selecting points. Next hit the Add button.

When using the Multiple points option, the points cannot create an inclusion as shown on the left in the

figure below.

Defining the Terminating Layer

The possible layers the Cutout can go to are in the drop down list. These are locations of Nodes in the

thermal model generated.

Bad Good

Page 28: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

28

The figure below shows a Cutout from the Front and one from the Back to Node layer 4.

17 Deleting items on the PCB Select PCB>Edit>Delete Items.

Item selection

Hit the Select button then select the center of the item. If the item isn’t deleted or Confirm is checked

and you don’t get a confirmation, then the item wasn’t properly selected. Hit the Select button again

and this time box in the center of the item. You can box in many items at once.

Confirmation prior to deleting

Check “Confirm Deletion” if you want to get a confirmation prior to deleting the item.

Filtering

If there are multiple item types close together then you can check only the item type you want to delete

and only those types can be selected. Alternatively, you can define what is drawn to the screen by

selecting PCB>View Entities. Only items that are visible on the screen can be selected.

Page 29: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

29

18 Editing Vias Vias that were imported and created manually can be modified. To modify a group of vias that were

created manually, select PCB>Edit>Edit Vias. Hit the Select button then select the center of the

manually created vias. To modify vias that were imported from an ODB++ file, first check Select

imported vias, the hit the Select button and box in all the vias you want to modify. They will be

highlighted. If you select the wrong ones then hit the Select button again and reselect the vias. The

only value that can be changed is their drill diameter. Enter a new diameter then hit the Edit button.

19 Editing Cutouts To make a change to an existing Cutout, select PCB>Edit>Edit Cutout. Hit the Select button then select

the center of the Cutout, at the beginning of the Cutout name. If there are multiple cutouts at the same

location, hit the Next button to cycle through the ones found in the area selected. The three buttons

below the number list are used to make changes to the X-Y data. To change a value, select the line then

hit the Edit button below the list. To delete a line, select the line then hit the Del button. To add a row,

hit the Add button.

Once the changes are made, hit the large Edit button.

Page 30: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

30

20 PCB default settings In the General tab, you can define how components are viewed on the screen, either as a rectangle or

as the geometry was defined in the ODB++ file, a Polyline.

These settings are saved when Solaria is closed. In the Via tab shown above, the settings are the default

values when the Add Via dialog is opened. They are also used for vias imported from an ECAD file. The

Model tab has settings defining how the Solaria model is generated.

In the Thermal tab, whether Typical or Maximum power is used is defined. You can also define a Power

factor. This is a multiplier for the component power applied to all components in the board. Checking

Space environment will assume that there is no gaseous conduction between the underside of the

component and the board surface.

Page 31: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

31

In the Geometry tab, you define what values are used when calculating the conduction down the

leads/pads/solder balls. When Worst Case is selected, values leading to the highest thermal resistance

will be used. For a leaded component this would be Maximum length and Minimum Width and Height.

These values are defined in the Component Library Geometry dialogs.

𝑅 = 𝐿𝑒𝑛𝑔𝑡ℎ/(𝐾 ∗ 𝑊𝑖𝑑𝑡ℎ ∗ 𝐻𝑒𝑖𝑔ℎ𝑡)

In the Model tab, the number of flow nodes created in the Solaria model for Simple Air Flow is defined.

For the PCB meshing, the Maximum edge length for the meshed triangles is defined. A smaller number

will create a finer mesh for the board.

Page 32: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

32

The Mesh Geometry tolerance can simplify the mesh of the board by removing small unneccesary

details.

There is a small jog in a trace segment which is 0.002” long

With the Mesh Geometry Tolerance set to 0.001 you get the mesh shown below. You can see small

elements capturing this detail.

With the Mesh Geometry Tolerance set to 0.01, prior to meshing the small jog is removed because it is

smaller than 0.01. You can see the board mesh is much better.

Page 33: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

33

21 Getting information on a particular feature Select Information>Element. Hit the Select button then select the feature. In Solaria, you can click a

spot on the screen or drag a box over an area. For each selection, only the first feature found will be

displayed.

Page 34: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

34

22 Electronic components SolariaPCB includes a large component library. This is defined as the Master Component Library.

22.1 Mapping Components

SolariaPCB comes with a component library which contains over 400 components. The data for each

component was derived from JEDEC documents. It includes component geometry including

lead/pad/solder ball information. In most cases it includes thermal information. Because there is no

such thing as accurate thermal resistance data for a specific package type (due to the many construction

and die variables) this data should be reviewed.

When an ODB++ file is imported, component outline, lead/pad/solder ball locations and at times,

component height are imported. To make a thermal connection to the board, lead/pad/solder ball

geometry and material are needed.

After importing an ODB++ file, the Map Component dialog automatically comes up. On the left side of

the dialog, the components on the board are listed. On the right side of the dialog, the components in

the library are listed. If you select a component in the left side list, that component will be drawn below

and specific information for that component is given. SolariaPCB then looks for a match to that

component from the library. If one is found, then it is highlighted in the right-side list and drawn

below. You can then hit the Map button to map the two components and have the data in the library is

assigned to the component on the board. The component name remains the same. The name of the

library component is assigned to the component type.

Instead of selecting one component at a time, you can hit the Auto Search button. SolariaPCB will then

go through the entire list of components on the board and search for a match in the library. If one is

found then you are given the opportunity to Map the components, as shown in the picture below.

Page 35: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

35

22.2 Adding components to the library

One of the most tedious parts of PCB thermal simulation is getting component thermal information. So,

after spending the time to get accurate information, it is a good idea to now add that component to the

Master Component Library. The advantage to doing this is because when you do your next board and

go to the Map Components dialog, if that device is on the new board it will be found, and you can map

it.

Go to PCB>Add Component to Lib. Select the component on the right side, those on the board, then hit

the << button to add that component to the Master Component Library.

Page 36: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

36

The more you use SolariaPCB and add components to the library, the less time you will have to spend

looking for component data.

22.3 The Component Library

To view the Master Component Library data, select PCB>Component Library. Select a component then

hit the Edit button.

In this dialog the type of component is defined, IC, Capacitor, Resistor, Connector, Diode, Transistor,

Test point, Transformer, Inductor, Regulator, Other. These values are only used when defining the type

of components to be drawn to the screen.

You also define whether the component is leadless, leaded or BGA construction. This setting defines

which Geometry dialog comes up and how that component will be thermally represented in the Solaria

model.

Hit the Geometry or Thermal Properties buttons to view the data.

Page 37: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

37

22.4 Component Geometry

If the component is a BGA type, then this dialog will come up.

If the component is a leaded type, then this dialog will come up.

If the component is a leadless type, then this dialog will come up.

Page 38: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

38

22.5 Component Thermal Properties

If you hit the Thermal Properties button, the following dialog will come up. Note at this time, Max Temp

and Emissivity values are not used. Maximum and Typical power dissipation values can be entered. If

values are defined when placing a component, then these values are not used.

The selects in the Type area only provide suggestions on different ways to defined the component

thermal resistance.

22.5.1 Guidelines for creating the component thermal representation

There are two parts to defining the component thermal representation, Nodes and Resistors. Nodes are

places where temperatures are calculated and are connected to each other, the board surface and

possibly the local air, by Resistors. To define a Compact Thermal Model, see Section 22.5.2.

To add a node, hit the Add button. From the drop down list, select a name for the node. A name can

only be used once. To remove a node select the column then hit the Cut button. If areas are not

defined then they will automatically be calculated from the geometry of the component.

Page 39: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

39

Nodes

Nodes are assigned specific names that define what they represent. It is important to follow the

definitions provided because they define how they are used in the solution. In addition to a specific

name, a node can have an area and a percent heat load. If the node is a CASE, TOP, SIDE, TOP INNER or

TOP OUTER node, then this area defines the convective surface area. If the node is a BOTTOM, BOTTOM

INNER or BOTTOM OUTER node, then this area defines the possible area that can be bonded to the

board. The percent heat load of a node defines what percentage of the total component power

dissipation is associated with the node. Any node can dissipate heat. The total percent power for all

nodes must add up to 100. Remember, the value is a percent so they should add up to 100, not 1.

Resistors

Resistors are thermal resistive links between nodes. The nodes must be defined in the Nodes area of

the dialog. To add a resistor, hit the Add button. Select the two nodes and enter its value. The order of

the nodes does not matter. To remove a resistor select the column and hit the Cut button.

Below are several ways to define the component thermal resistance. Red Nodes are where the

component heat is applied. Blue resistors are calculated by SolariaPCB.

The convective surface area of the component top and sides can be defined by defining a TOP and a

SIDE node and defining their area. If Simple Air Flow has been defined then the CASE node will be

connected to the local fluid node. This is signified by the small blue arrows in the figures above.

1) Only a CASE node, no resistors

The resistance from the case to the board surface will be

calculated based on gap or bond and leads as detailed here. The

CASE area can be defined or it can be calculated based on

Page 40: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

40

geometry.

2) JUNCTION to CASE resistor

JUNCTION to CASE resistor defined. TOP and SIDE areas defined.

If TOP or SIDE areas are not defined then they are calculated

from geometry. If the BOTTOM area is not defined then TOP the

area is used. The resistance from the case to the board surface

will be calculated based on gap or bond and leads as detailed

here.

3) CASE to BOARD resistor

Resistors are generated to the board surface based on the value

defined. The component cannot be bonded to the board since

the resistance to the board is defined. CASE area can be defined

or it can be calculated based on geometry.

4) JUNCTION to CASE, JUNCTION to BOARD

Resistors are generated to the board surface based on the value

defined. The component cannot be bonded to the board since the

resistance to the board is defined. CASE area can be defined or it

can be calculated based on geometry.

5) JUNCTION to CASE, JUNCTION to BOTTOM

The resistance from the case to the board surface will be

calculated based on gap or bond and leads as detailed here.

6) JUNCTION to CASE, CASE to BOARD

22.5.2 DELPHI thermal model

The table below shows and example of a DELPHI representation of a component provided by

the component manufacturer.

Junction Bo Bi To Ti

Junction 6.27 0.7 0.75 0.001

Bo 15.57 8.33

Bi 4.58 2.74

Page 41: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

41

Five Nodes are created in the Nodes section of the dialog. Area under the die must be defined. If not,

defaults to 0.5 of the package area. Enter 100% for the JUNCTION Node. Create eight resistors in the

Resistor section between the Nodes per the table above.

The figure below to the right shows a side view of the Solaria model generated. Convection elements

are created from the two bottom nodes to the inner and outer areas of the board.

Page 42: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

42

Below shows a top view of the Solaria model as well as the Nodes and Resistors.

23 Placing a component on the board

23.1 Adding to the Working Set

Before a component can be placed on the board, components from the library must be copied to the

Working Library. Select PCB>Add Components to Lib. Select a component on the left side, the

component library, then hit the >> button. This will copy it to the right side, the Working Library. If you

want to see data for the component in the Working Library, select the component then hit the Edit

button. If a component is imported from an ECAD file and it is completely defined, you can hit the <<

button to add it to the Master Library.

Page 43: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

43

Active Only

Check Active Only to display only the Active components on the current board.

23.2 Placing the Component on the Board

To place a component on the board, select PCB>Add Component to PCB.

Working Set drop down

Select the component you want to place on the board from the Working Set drop down list.

Working Set button

If you want to view the details of the component, hit the Working Set button.

Reference Designator

Enter a reference designator you want to assign to the component. If one is not defined, a unique one

will automatically assigned.

Dissipation

The component power dissipation can be defined in the library or when it is placed. To define the

dissipation, check Define in the Dissipation area of the dialog. Enter a Typical and a Maximum value.

Orientation

A component is defined in a specific orientation in the library. It can be rotated to any arbitrary

orientation.

Side

This defines the side of the board the component is on.

Page 44: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

44

Placing the component

The component can be placed two ways. You can enter the X-Y location of the center of the component

then hit the Add button. Or, check the Place component with mouse checkbox then select the location

of the center of the component on the board. You do not need to hit the Add button in this case.

Bonding to PCB

If the component is bonded or soldered to the board surface, check Bonded. Enter the percentage of

the component underside area that is bonded. Next select the material.

23.3 Import component data

The Import Component File option is used to define specific component data by importing it from a text file. Select PCB>Import Component File. The following dialog will come up.

If you select Yes then the component power dissipation, maximum and typical, will be set to zero prior to reading the file. If you select No, then only components defined in the file will be updated. All others will remain at their current values. The following defines the format and capability. The file can be comma, space or tab delimited. The data can be in any order. Let us know if there is more data you would like to import. PD, RefDes, Typical power, Maximum power PD defines adding power dissipation to a component JC, RefDes, 2.3 JC defines adding a Junction to Case resistance to a component JB, RefDes, 1.8 JB defines adding a Junction to Board resistance to a component The next option is to define all component data. If a value entered is zero then it is not assigned. It is highly recommended that the data be defined using Excel as if a single value is missing then the rest on the line will be assigned to the incorrect data. The Excel file ComponentData.xlsx is provided in your SolariaPCB folder. The first four lines in the file start with # and are ignored. They define the format of the four options. After importing the file, it is recommended that you verify that the data was imported correctly within SolariaPCB. AL, RefDes Typical power Maximum power J-C Resistance J-Board Resistance Component Min height Component Max height Component Min clearance

Page 45: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

45

Component Max clearance Component Min lead width Component Max lead width Component Min lead thickness Component Max lead thickness Component Min lead length Component Max lead length Component Min pad width Component Max pad width Component Min pad length Component Max pad length example file: PD, U1, 2.3, 3.4 PD, U3, 0.8, 1.2 JC, U1, 5.6 JB, U3, 12.3 AL,U7, 1.2, 1.5, 12.3, 0.0, 0.12, 0.14, 0.002, 0.004, 0.008, 0.01,0.008, 0.01, 0.12, 0.16, 0.02, 0.025, 0.02, 0.025 JC, U6, 1.32 PD, U6, 3.4, 4.5

24 Defining Active components It is very important to only define as Active those components you want to find the component Junction

temperatures for. If a component has a power dissipation defined, that power dissipation will always be

part of the Solaria model, whether it is Active or not. If it is not active, it will be applied to the side of

the board where the component lies and at the location of the component. If the component is active

and the components thermal resistance is defined, then it will be added to the Junction node.

The rectangular shape of Active components will be meshed into the board. Therefore, components like

resistors and capacitors should not be active. If they are then the board mesh will be unnecessarily large

and the time to build the Solaria model will be long.

Select PCB>Define Active Components.

Page 46: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

46

When you select a row, that component will be highlighted as shown above. Direct access to the

components Geometry and Thermal information is done by hitting the button in the Geometry and

Thermal columns, as shown above in the Thermal column for component I2.

Active area

To set active components of a certain type, check the types in the Active area then hit the Set Active

button.

Set Pdiss Active

If you hit the Set Pdiss Active button, only components that have a dissipation defined will be set as

Active.

Color coding

In PCB>Define Active Components, the Geometry and Thermal cells are color coded based on the information defined for that specific component. If enough data has been defined such that the component can be accurately represented, then the cell in green. If there is missing information but enough for the model, the cell is yellow. If there isn't enough data defined to thermally represent that component, then the cell is red. When you click on the cell twice it tells you what is missing then launches the appropriate dialog to define the data.

Page 47: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

47

25 Creating a Solaria model To create a Solaria model, select PCB>Build board model. Next hit the Build button. The progress

dialog will give the status of the build. From this dialog you can get an idea of the mesh density of the

model. Below the status gives 130/542. This means that Layer 5 traces are being processed and mesh

triangle number 130 of the total of 542 is being processed. A board mesh of 542 is extremely small. For

a typical board with a dozen components and other items, the total will be between 2000 and 10,000. If

it is well beyond 10,000 then you should check to make sure only thermally important components are

defined as Active. Or in PCB>PCB Settings in the Model tab, make sure that Maximum edge length is not

too small as compared to the PCB with the dimensions you are using. For a 6” by 9” board, a value of

0.25” is good. That means the largest triangle edge will be 0.25 inches. For a 6” by 9” board when you

are using cm, the value should be 0.6. If it is significantly larger, hit the Cancel button and check these

values.

After the model is created, the following dialog will come up. The lower left corner of the board is at X =

0.0, Y = 0.0 and Z = 0.0. You can offset the board by entering and X, Y and Z offset. Next, hit Apply. The

Solaria model will be created in the Solaria window. Hit the toolbar button to view the model.

The board that is generated is automatically equivalence and compacted so it is ready to solve.

Page 48: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

48

Hit the Cancel button when the dialog status says Done.

25.1 Solving the board

Hit the toolbar button to change to Solaria Mode. Select Solve>Steady State>Finite Diff or hit the

toolbar button. In the Solve Steady State dialog, hit the Solve button.

Select Results>PCB Results or from within PCB Mode, PCB>PCB Results. The Display temperatures

checkbox defines whether component temperatures are displayed for that PCB.

25.2 Viewing component temperatures in a table

If you have created multiple boards, select the other boards in the drop down to the right.

Page 49: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

49

If you hit the Save Data button, the data for all boards will be written to a file.

25.3 Viewing component temperatures graphically

Page 50: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

50

26 Deleting a PCB from a Solaria model If a single PCB is imported into Solaria for solving by itself, then if you want to make changes to the

board and resolve, then just select Edit>Clear the Current Model or the toolbar. But, if the model

was merged with other PCBs generated by Solaria or was merged into a chassis model, then it must not

be deleted manually within Solaria. If it is, then the Results Data files which includes the mapping

between Solaria and SolariaPCB will be out of sync. The only way to delete a PCB properly is to select

Edit>Delete PCB. It can be done within either environment but if done within Solaria Mode then you will

see the selected PCB disappear when the Delete button is hit. All Materials, Properties, Nodes and

Elements will be deleted. The Results Data file will also be automatically updated removing the PCB.

Junction temperature

Case temperature

Page 51: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

51

27 Calculate PCB effective thermal conductivity PCB>Add>Add Grid Lines. Start by entering a X and Y increment values then hit the Process button.

To add more Grid Lines at specific locations, select the direction, enter the location then hit Add Grid.

Note that the location of your mouse as you move it is given at the bottom of the window. This can be

used to get the Location value.

The Build model option will create a Solaria model with each cell represented by a single Brick element

that references a Material that will have anisotropic thermal conductivity. An example is shown below.

Hit the Calc Effective Properties button when you are done creating Grid Lines. You can hit the Clear

Grids to remove all Grid Lines and redo them.

The Solaria model of the PCB will be generated accounting for all traces, planes, layers and vias in the

PCB.

Page 52: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

52

Nodes at the vertical Grid Lines will be assigned as Boundary Nodes and the model solved for

temperatures. When done, the heat flux horizontally for each cell is calculated based on the results and

the thermal conductivity for each cell is calculated. Similarly, this is done for the Y and Z directions.

As notified, a file is written with the results. If the Build model option is selected then a Solaria model is

created.

Page 53: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

53

28 Inserting a PCB into a chassis model When SolariaPCB creates a Solaria model, the lower left corner of the board is at X = 0.0 and Y = 0.0.

The 0.0 Z location is at the front surface of the board. So the board is built in the negative Z direction.

The thickness of the board in the model is the sum of the dielectric layers plus the sum of the 3D layers.

Conducting and 2D layers are represented by 2D elements and have no actual thickness in the model.

Just it is viewed in SolariaPCB, the Solaria model is built on the X-Y plane. Therefore, when building the

chassis model it is easiest if it was built such that the board lies on the X-Y plane. The model can be

rotated in Solaria but it is just one added step.

After the Solaria model is built within SolariaPCB you are given the opportunity to enter an X, Y and/or Z

offset. Unless you make some notes and do some calculations, it’s difficult to determine exactly what

offset will put the board exactly where it should go. It is easiest to enter an offset that will put the

board well away from the chassis model. In the Edit>Copy and Move dialog there is a Delta option.

Using this you can select a Node on the board then a Node on the chassis where that Node should go

and the distance in the X, Y and Z direction is entered in the dialog. Then the PCB can be boxed and

moved by that displacement.

28.1 Auto Move Object feature in Solaria

The chassis shown below was imported into NETGEN and 3D automeshed with Tetrahedron elements.

It was then imported into Solaria. In Solaria, IntelliMesh Master surfaces were added along the card

guides, where the PCBs make thermal contact. A thermal interface was added to the bottom of the

chassis to a coldplate.

Page 54: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

54

The PCB below was generated by SolariaPCB by importing an ODB++ file. In SolariaPCB Thermal

Contacts were added along the top and bottom surfaces where the PCB makes contact with the chassis.

The chassis and the PCB models were merged. The chassis and PCB are put into their own Groups.

Notes:

1) The IntelliMesh surfaces are moved into place based on the center of the area of the IntelliMesh

Slave and Master surfaces. In the above example, the red area in the chassis is the IntelliMesh

area and extends the entire length of the surface. But the contact surface on the PCB does not

extend the entire width. If the board is to be centered in the chassis, the contact area on the

board should be extended.

2) If the move that was automatically performed was not as desired, then either hit the Cancel

button in the dialog or hit the Undo button a couple times to undo the rotations and try it again.

Page 55: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

55

Now the PCB needs to be rotated then moved into place in the chassis. A gap is needed between the

Master and Slave IntelliMesh surfaces, less than the IntelliMesh tolerance.

To access the new feature, select Modify>Auto Move Objects. The dialog shown below will come up.

First select the Group that is fixed, in this case the chassis, then select the Group that will move, in this

case the PCB. Once they are selected, hit the Create Groups button.

Page 56: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

56

Each group of IntelliMesh surfaces will automatically be shown with their given names. If the name

starts with F, then it is a Fixed IntelliMesh group. If the name starts with M, then it is a Moving

IntelliMesh group. Next, from the Moving and Fixed drop down, select which Moving IntelliMesh

surface should match up with the Fixed IntelliMesh surface. In this example we are selecting two pairs.

Next hit the Move Object button. First the moving object, in this case the PCB, is rotated so it is on the

same plane as the chassis IntelliMesh surfaces. I’ve stopped the process at this step to show the PCB

first rotation.

Page 57: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

57

It does this by:

1) The centers and overall dimensions of the IntelliMesh Groups are calculated.

2) It determines what planes the Fixed and Moving IntelliMesh surfaces are on by determining

what dimension is zero. For instance, if it is on the XY plane then the Z dimension or thickness

of the nodes defining the IntelliMesh surfaces must be zero.

3) Next, the normal direction is determined for each InteliiMesh Group. This is based on the

element face the IntelliMesh surfaces lies on. When the Master and Slave surfaces are aligned,

the normal must be pointing towards each other. This therefore goes into determining the

rotation, positive or negative.

4) The geometric center of the moving object is calculated

5) The Moving Group is then rotated onto the correct plane.

Next, if necessary, the PCB is rotated on plane to align the Master and Slave surfaces. Again, I have

stopped the process to show the PCB second rotation.

Page 58: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

58

This is done by:

1) The centers and overall dimensions of the IntelliMesh Groups are recalculated because they

have changed because of the first rotation.

2) The geometric center of the moving object is recalculated

3) If two pairs of IntelliMesh Groups were selected, then:

a. A line connecting the centers of the Fixed pair is compared to a line connecting the

centers of the Moving pair. If they are both horizontal or both vertical then which end

the first pair is on is used to determine if the Moving Group needs to be rotated 180

degrees.

b. If the lines are normal to each other, the Moving Group is rotated 90 degrees. Which

end the first pair is on is used to determine if the rotation is positive or negative.

4) If one pair of IntelliMesh Groups were selected, then:

a. A check is made to see if the long and short dimensions of the Fixed and Moving

IntelliMesh groups are aligned. If they are not, then the Moving group is rotated 90

degrees.

b. If a 90 degree rotation is needed, then the distance between the center and left and

right edges of the Moving and Fixed IntelliMesh groups are compared to determine if

the rotation should be negative or positive. Note that if there is symmetry in the

IntelliMesh groups and there is not symmetry in the Moving object then it may be

necessary to rotate the Moving object manually.

5) The Moving Group is rotated on the plane to the correct orientation.

The Moving Group is next moved into place. This is done by:

1. The centers and overall dimensions of the IntelliMesh Groups are recalculated because they

have changed because of the first rotation.

2. The geometric center of the moving object is recalculated

3. The centers of the first pair are used to get the X, Y and Z displacement.

4. The direction normal to the plane is adjusted to create a gap of half the IntelliMesh tolerance

defined in the dialog.

5. The Moving Group nodes are then moved.

The PCB is then automatically moved into place. All you have to do now is solve for temperatures.

Page 59: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

59

Example 2 – Simple single pair

Below is a simple example of a PCB, green, and a device, red. The blue area on the PCB are Interface

elements with Slave IntelliMesh on their surface. The bottom side of the red area has Master

IntelliMesh on the underside surface.

Select Modify>Auto Move Objects then select the Fixed Group, the PCB, then select the Moving Group,

the Device then hit the Create Groups button. Notice that the Moving and Fixed groups are

automatically selected correctly since there is only one of each.

Page 60: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

60

Hit the Move Object button.

All you have to do now is solve for temperatures.

Page 61: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

61

Example 3 – Complex shapes

Below shows a tetrahedron meshed chassis and a PCB that was created by SolariaPCB.

Chassis PCB

The left picture below shows the chassis, red, with IntelliMesh surfaces, purple. On the underside of the

PCB on the right are IntelliMesh surfaces.

Chassis PCB

Page 62: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

62

The goal is to rotate and move the PCB into the correct place within the chassis.

Chassis and PCB merged

In the Auto Move Objects dialog, the Housing and PCB Groups were selected then the Create Groups

button was hit. Since there is only one Move IntelliMesh group, it was automatically selected.

IntelliMesh group F-S-G-2 was selected for the Fixed group. The IntelliMesh group name is located at

the geometrical center of the IntelliMesh, therefore at the center of the PCB. The Move Object button

was next hit.

Page 63: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

63

It is obvious from the picture below that the in-plane rotation based on the logic given earlier was

incorrect. But the IntelliMesh are facing each other correctly and they are the correct distance apart.

The PCB just needs to be rotated about the Y axis positive 90 degrees. This is easily done manually.

Display only the PCB Group. Now select Edit>Copy and Rotate. Select Rotate about the Y axis and

enter 90 degrees for the rotation. Be sure to check Rotate Nodes. Now check Select Rotation Axis and

then click on a node at the center of the PCB. Hit the Select button the box in the entire PCB. When you

view the entire model, you will probably see something like that below. It will be rotated differently

depending on the node selected.

Page 64: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

64

Now the PCB needs to moved very slightly. There is a little know feature in Solaria called Edit>Grab and

Pull. It is used to select Nodes and manually, using the mouse, move the nodes selected. Since we can

visually see where the PCB needs to be, it is perfect for this operation.

Put into a Group just the PCB. Select Edit>Grab and Pull. Hit the Select button and box in the PCB.

Now view the entire model by selecting Group>Echo All, while leaving the Grab & Pull dialog up. Hold

the left mouse button down and slowly and carefully drag the PCB into place, resulting in yellow around

the PCB as shown below.

Page 65: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

65

29 Details of the Solaria Thermal model

29.1 Representing the board

The exact shape of the board is represented as defined by the board Outline in SolariaPCB. The board

model is three dimensional with 3D Brick elements representing the dielectric layers. The metal layers

are represented two dimensionally. If an ODB++ file was not imported, then metal layers are

represented with 2D triangular Plate elements. Each layer references it’s own Property where a

material is reference and the layer thickness is defined. The layer thickness is the product of the defined

layer thickness and the percent coverage/100.

Example board 2D mesh

Page 66: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

66

Six metal layers represented with 2D Plate elements

The green layers are 3D Brick elements representing the dielectric material

29.2 Representing Traces

If an ODB++ file is imported, then each trace is explicitly represented. For each layer in the board,

SolariaPCB goes through each triangle in the board mesh. For each triangle, it looks to see if a trace cuts

through it. Custom algorithms are used to represent the trace or traces by three resistors going

between the corner nodes that define that triangle.

Page 67: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

67

The signal layer shown below on the left is thermally represented by the thermal resistors on the right.

Page 68: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

68

29.2.1 Algorithms validation

As imported from an ODB++ file

Meshed by Solaria

Left side held at 0C and the right at 1C then solved

Page 69: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

69

From the two Solaria models, exact mesh shown above and the SolariaPCB representation, the heat flow

from side to side was queried from Solaria. This process was repeated from top to bottom.

Explicit SolariaPCB representation Percent difference

Left to right 0.004184W 0.004376W 2.9%

Top to bottom 0.011297W 0.011765W 4.0%

Page 70: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

70

29.3 Representing Vias

Knowing the location of every via, the plating thickness and material, the fill area and material, as well

as the layers the via is attached to, for each via three thermal resistors are generated going between the

nodes on the appropriate layers. The calculated thermal resistance is

𝑅 =1

(1𝑑𝑋

𝐾 ∗ 𝑎𝑟𝑒𝑎

)

𝑝𝑙𝑎𝑡𝑖𝑛𝑔

+ (1𝑑𝑋

𝐾 ∗ 𝑎𝑟𝑒𝑎

)

𝑓𝑖𝑙𝑙

Where dX is the distance between the connected layers. The resistance is proportioned to the three

nodes that define the triangle that via lies within.

Layer 2

Layer 3

Via

Page 71: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

71

Shown above is the thermal representation of 1041 vias. The red dots are nodes and the green lines are

resistors. The view has been stretched in the Z direction to better show the resistors.

29.4 Modeling components

29.4.1 Attaching the component to the board

The attachment of the component to the board surface is calculated by SolariaPCB based on the data in

the component library. After the board is solved for temperatures, the total thermal resistance

calculated from the component case to the board accounting for all heat transfer paths is given for each

component in the Results Data summary table.

The thermal resistance down the leads is calculated by the following formula.

=

thickness)*(width*K

length LeadR

lead

leads

=

bottomair

gap

A*K

ClearanceR

=

100%coverage/*A*K

ClearanceR

bottombond

gap

Page 72: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

72

29.5 Modeling the Wedgelock Edge

Lead resistors

Gap resistors

Case Node

Conduction

plate

Interface

elements

Page 73: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

73

30 Joule Heating

The trace heating feature will calculate the heat dissipated in traces that are carrying current. When an

ODB++ file is imported, every trace in the board is imported. The electrical engineer designing the board

may have concerns on particular traces that are carrying a significant amount of current. IPC has

guidelines, but they do not account for all the local effect of complex boards. With this feature, you can

define Voltage sources and Current sources and sink on individual traces. You then define the rest of

the board as you would normally do, defining component data and dissipation, adding thermal contacts

so on. When you’re done with the board, simply select PCB>Build Board Model as you normally do. You

will notice now a few more dialogs will come up, but they are just to give you a status. When done, you

will, just as you usually do, have a ready to solve board Solaria model. But now it will include the power

dissipated by all the traces you have defined, as well as component and others you have defined.

Electrically connecting traces on different layers

When an ODB++ file is imported, all vias are imported. For each via, the layers it is electrically

connected to is imported. When calculating voltages, vias are electrically simulated. In the example

below, a trace on layer 5 and another on layer 1 is selected as being included in the voltage solution.

You can see that a Voltage of 5 Volts is defined on trace 1.

Page 74: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

74

To make sure that the traces on the different layers will be electrically connected, select

Information>Element. Make sure Vias are viewed in PCB>View Entities. Hit Select then click on the

intersection of the two traces, as shown below. In this case it shows that the via is connecting layers 1

and 5. Therefore these two traces will be electrically connected in the voltage solution.

Page 75: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

75

How to define a new trace

Make sure that the layer that the trace is on is visible. It is easiest to have only that layer visible. While

leaving the Edit Trace dialog up, select PCB>View Entities and check the layer. Hit the Select Trace

button then select the trace. You are trying to select the midpoint of any trace segment on the entire

trace. If it is easier, you can drag a box around the area. If the wrong trace is selected, then just try it

again. Next check the checkbox for “Include trace in voltage solution”.

In this example, a trace on layer 7 is also selected. You can see below that a current draw of 1.0 Amp is

defined.

Again, in Information>Element, selecting the via at the intersection of the Layer 5 and layer 7 trace

shows that there is a via connecting layers 5 and 7.

So in this case, the current applied to the trace on layer 7 will travel through the via to the trace on layer

5. It will travel down the trace on layer 5 and through the via connecting the trace on layer 1 to the

voltage at the other end of the trace on layer 1, completing the circuit.

Page 76: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

76

Defining a trace to be included in the voltage solution

Select PCB>Edit Trace.

See below for adding a current source or sink or a Voltage source. Remember to hit the Save Data

button after making any changes to the dialog.

Changing the trace width

After selecting a trace, simply change the trace width displayed in the dialog. The width of an area or

filled trace cannot be changed. If the line trace width is increased to a value larger than the smallest

trace segment length, then the automesher will have problems meshing it correctly.

Changing the percent coverage

There may be times where an area or filled trace isn’t 100 percent copper. It may be an EMI shield

created by a field of lines. If it is about 50% copper, then the % Coverage should be changed to 50.

When the model is built, the thickness of the Plate elements representing the trace will be derated by

Page 77: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

77

this value. So if the layer trace thickness is defined as 0.0014 inch, then the thickness in the Property

will be 0.0007 inches.

If traces have already been defined, select the one you want to view or edit from the Select Trace drop

down list.

The trace will be highlighted and information on the trace will be populated in the dialog. If the trace

wasn’t highlighted, then make sure that the layer the trace is on iv visible in PCB>View Settings.

Page 78: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

78

Defining a Current source or sink

The figure below shows a 30 Amp current sink located at the X and Y location on the board as shown. A

current source should have a positive value. This is one that is supplying a fixed amount of current to

the board. A current sink should have a negative value. This is one the draws a fixed amount of current.

This would be like the pin of a component.

To define a new current source or sink, first hit the Add button. If you had not already checked “Include

trace in voltage solution” then you will be asked if you want the trace to be. Next check the Selected

checkbox in that row then hit either one of the Select Location buttons to the right. Next, using the

mouse, select one of the highlighted locations on the trace. Next enter the value of the current source

or sink under the Current column.

How to remove a current source or sink

Select anyplace in the row of the current source or sink you want to remove then hit the Cut button.

Defining a Voltage source

The figure below shows a 5 Volt source at the X and Y location on the board as shown.

To define a new Voltage source, first hit the Add button. If you had not already checked “Include trace

in voltage solution” then you will be asked if you want the trace to be. Next check the Selected

Page 79: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

79

checkbox in that row then hit either one of the Select Location buttons to the right. Next, using the

mouse, select one of the highlighted locations on the trace. Next enter the value of the Voltage source

under the Voltage column.

How to remove a current source or sink

Select anyplace in the row of the Voltage source you want to remove then hit the Cut button.

How to remove a trace from the voltage solution

In the Edit Trace dialog, select the trace you want to disable. Uncheck “Include trace in voltage

solution”. Remember next to hit the Save Data button.

How traces are represented in the Solaria model

Shown is layer 5 of the PCB.

Shown below is layer 11 of the PCB.

The four traces shown above will be explicitly meshed in the board. Below are shown Solaria Line

elements that were generated from the traces selected.

Traces in voltage

solution

Trace in voltage solution

Page 80: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

80

Filled or area trace meshing

When importing an ODB++ file, one option is to define the “Number of segments in a circle”. In the

figure below, the default value of 4 was used.

In the figure below a value of 8 was used.

Page 81: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

81

Using a value of 8 will result in a much finer mesh with very little different in voltages calculated as well

as temperatures. Having a finer mesh will result in a longer Solaria model build time. But it is your

choice.

Line trace meshing

Solaria Line elements are generated along the exact perimeter of the line. The figure below shows the

line imported from the ODB++ file. It is simply a polyline connecting points with a defined width.

The figure below shows the Solaria Line elements along the perimeter of the line trace shown above.

The figure below shows the board mesh with only the board outline and the four traces included.

Page 82: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

82

When the board is meshed, each trace references its own Property. The elements generated are on the

same layer in the model the actual trace is on.

This makes it easy to put the traces into Groups. When putting elements into a Group by Property, you

can check each trace individually or check Joule Heating to select them all.

All surface heat loads generated reference the Joule Heating Property. If you select

Information>Property you can see the total heat generated by the traces. In this case, 4.45 Watts.

Page 83: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

83

Solving for voltages

After the entire Solaria model is built of the board, Boundary Nodes and Nodal Heat Loads are

generated on the traces to represent the Current sources and sinks and the Voltage sources. A Voltage

source is simply represented by a Boundary node at the defined Voltage value at the node at the

defined location. A current source or sink is simply represented with a Nodal Heat Load of the current

value defined at the node at the defined location. All traces, filled and line, are represented by 2D

triangular Plate elements. Each trace references a different Property where the thickness is defined. All

Properties reference the same Material that has the electrical conductivity of copper at 35C. Only this

part of the total Solaria model is sent to the Solaria Finite Difference solve to solve for voltages. The

“Heat Load” shown in the dialog below is actually the total current in the model.

After solving for voltages, the Boundary Nodes and the Nodal Heat Loads are deleted from the model.

All trace Properties are automatically changed to reference the material defined for the metal layers.

Next, as with any other SolariaPCB Solaria model build, the following dialog will come up. This dialog

allows you to offset the new board model. Hit Apply after changing any values.

Page 84: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

84

Voltages are saved to a file so they can be imported later.

Solving for heat load based on the voltage drop

The 2D Plate elements are then sent to the algorithm that performs a dV2/R to generate Surface heat

loads. This calculation is performed for each triangular element based on the dV2/R for each of the

three legs of the triangle. R is the electrical resistance of the triangle. The three values are summed up

and divided by the triangle area creating a surface heat load.

Where R is the electrical resistance of the meshed element and dV is the local voltage drop.

The following dialog will come up.

Just hit OK then Cancel in the Solaria Model Generation Progress Bar dialog. Switch back to Solaria

Mode by hitting the toolbar button.

Page 85: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

85

Viewing voltage drop in the traces

In Solaria, put the traces into a Group by selecting their Properties. Now you can view Voltages just as

you would view temperatures.

Solving for temperatures

The Solaria model created is ready to be solved for temperatures, assuming that you have added

boundary conditions like a Thermal Contact.

For the multi-layer trace model, the trace properties and the electrical vias were put into a group.

Page 86: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

86

Displaying temperatures shows the Voltages on the traces.

The separation in the traces shown above-right, is where the electrical vias. Below shows the elements.

The vertical lines are the Resistor elements representing the vias.

Page 87: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

87

Here are the board temperatures with power applied to one component in addition to the trace.

Page 88: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

88

To see the effect of only the Joule heating in the traces, in the property for the component, the power

was changed to zero and the model was re-solved.

31 Representing Simple Air Flow

Page 89: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

89

The convective heat transfer coefficient is calculated based on the board and entered geometry and air

flow rate using channel flow algorithms. The inlet Boundary Nodes reference the same Property

defining their temperature. The Flow Elements also reference the same Property defining the MdotCp

value. This value is calculated based on the volumetric flow rate times the air density times the air

Specific Heat. Density and Specific Heat values are at the inlet fluid temperature.

Resistor elements are created between the Case node to the local air node representing convection

from the component case. If you select Information>Element, hit the Select button then select the

center of this Resistor element, you will see that the Resistor references the same Property as the rest of

the Convection elements. So the same heat transfer coefficient (HTC) is used. The Area term in the

Property table is 1.0 and the Resistor has a factor which is the convective surface area of the

component. When solving the model, the thermal resistance of the Resistor element is calculated as

1.0/(HTC*factor*Area).

Page 90: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

90

32 Representing natural Convection

Below shows an edge view of a board that has natural convection on both sides of the board.

Boundary Nodes are created on either side of the board at the defined temperatures.

The Boundary Nodes reference a Property where the temperature is defined. The Convection

elements from each side reference the same Property. As seen, the Convection heat transfer

coefficient references an array. The calculated component surface area is the Area value in the

dialog.

Page 91: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

91

Shown below is the array that is referenced. You can see that the heat transfer coefficient is a

function of the temperature difference between the board surface and the air. During the

solution, this data is used to calculate the appropriate heat transfer coefficient based on the

board and air temperatures.

The figure below shows the Resistors that represent the components on the board. In this case

there are many components on the front of the board and one on the back of the board.

Resistor elements are automatically created from the component Case nodes to the air. This

Resistor element references a Property. In the Property dialog shown above, each component

Resistor references a new Property which has the reference designator for that component in

the name. You can see the Resistor element resistance is also a function of the temperature

Page 92: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

92

difference between the Case node and the air. The surface area of the component is calculated

using the component geometry data.

How radiation is represented in the Solaria model

Radiation from the board surfaces is represented with Node to Surface Radiation elements.

Radiation from the front and back sides of the board each reference a Property, as shown

below. The Property defines the surrounding temperatures, View Factor and reference a

Material where an emissivity value of 0.8 is defined.

Page 93: SolariaPCB Manual3 Introduction SolariaPCB is essentially a pre-processor for Solaria. SolariaPCB runs within the Solaria environment. When is SolariaPCB mode, you work at the single

93

Node to Node Radiation elements represent the radiation from component Case nodes to the

surrounding temperatures. As seen in the Property table shown above, each Radiation link to a

component Case node references a Property. The calculated component surface area is the

Area value in the dialog. A view factor of 1.0 is defined and the property references a Material

where an emissivity value of 0.8 is defined. These values can be changed if you have better

values.