Presentation is loading. Please wait.

Presentation is loading. Please wait.

SINDA Training Notes For Thermal Desktop Class

Similar presentations


Presentation on theme: "SINDA Training Notes For Thermal Desktop Class"— Presentation transcript:

1 SINDA Training Notes For Thermal Desktop Class
SINDA/FLUINT SINDA Training Notes For Thermal Desktop Class

2 Thermal Analysis and Simulation Tools
CONDUCTION/RADIATION SIMULATION (SINDA) Steady or transient energy storage and flow in a “thermal circuit” model FLUID SYSTEM SIMULATION (FLUINT) Steady or transient energy/mass storage and flow in a “fluid circuit” model GEOMETRIC (CAD/FEM/FDM) CALCULATIONS (Thermal Desktop®) Capacitances, conductances, etc. using geometric description. Interfaces to CAD/structural codes. RadCAD®: Radiation conductors (FA) between surfaces, and heat fluxes from direct or reflected orbital sources. FloCAD®: Heat transfer to surfaces and solids, especially suited for avionics/electronics packaging, heat pipes, and loops Dedicated XY plotter for all C&R analysis tools (EZ-XY®)

3 The Bigger Picture Thermal Desktop RadCAD FloCAD
Geometric Modeling Temps Finite Element CAD/Structural CATIA, ProE, NASTRAN, ANSYS, FEMAP … FEM, STEP, IGES, etc. Results Networks, logic SINDA/FLUINT Network Solutions, Advanced Design Drivers Results Analysis Integration Excel, Matlab, iSIGHT, ModelCenter … SinAPS Nongeometric Network Networks, logic

4 Capabilities Summary - Thermal
Analysis capabilities Steady-state and transient analyses Conduction, radiation, convection, thermal capacitance Time- and temperature-varying properties and parameters Parametric run and restart capability Built-in self-resolving spreadsheet Extensive analysis support library Advanced Design Design optimization, goal seeking, worst case scenario seeking Automated test data correlation (model calibration) Reliability engineering (statistical treatment of uncertainties) Concurrently executed user-supplied logic Simulate control systems and complex components Customize numerical solutions, inputs/outputs Interface with other programs, pre- and post-processors

5 Thermal Networks Thermal networks are mathematical representations (models) of real systems Thermal networks are built exclusively from two types of elements: Nodes: energy storage Conductors: energy transport A single system can be modeled in an infinite number of ways according to engineering approximations. The engineer can vary: spatial resolution (number of elements used) temporal resolution (type of elements used) the discretization method (lumped parameter, FDM, FEM) Modeling decisions can only be made knowing what design questions must be answered A model built to answer one question may be inappropriate for a new question A model built to answer all possible questions answers none of them

6 Nodes A node is any portion of a system that can be characterized by a single temperature There are three basic types of nodes: DIFFUSION: Resists temperature change. Characterized by a finite capacitance or ability to store and release energy with time. (Used to model “chunks” of material.) ARITHMETIC: Cannot resist temperature change. Reacts instantly since it has zero capacitance: energy in equals energy out at all times. (Used to model chunks of negligible capacitance or nodes that do not correspond to real chunks, such as surfaces of solids.) BOUNDARY: Constant temperature; Infinite capacitance. (Used to represent boundary conditions, ideal heaters.) All “boundary” nodes in Thermal Desktop are HEATER nodes. HEATER nodes keep track of the energy required to maintain a temperature.

7 Conductors Conductors describe the energy transport between nodes.
There are two basic types of conductors: LINEAR: Rate of energy transport is proportional to the difference between nodal temperatures. (Used for conduction kA/L, contact conductance and convection hA, and fluid transport mCp.) RADIATION: Rate of energy transport is proportional to the difference in the fourth power of absolute nodal temperatures. (Used for radiative exchange sFA, where F includes shape factor and emissivity effects. Normally calculated by RadCAD®) Note: In Thermal Desktop, a single “conductor” between surfaces and nodes generates many S/F “conductors” that are autonumbered by default Conductors normally operate identically in both directions. They can alternatively be designated ONE-WAY. This is not the same as a diode, and has advanced modeling applications not covered in this class.

8 Basic Variables NODES CONDUCTORS T temperature degree
Q applied heat source (positive in) energy per time (power) C capacitance (diffusion only) energy per degree CONDUCTORS G conductance Linear: energy per time per degree Radiation: energy per time per degree4 HR heat rate energy per time (power)

9 Nodal Energy Equations
Diffusion Nodes (in Transients) Arithmetic Nodes* storage imposed net linear transport net radiative transport * And diffusion nodes in steady state solutions

10 Node Responses (TD Demo 01)

11 Resolution (TD Demo 02) A bar is heated on one end, radiates to space on the other end (1D problem) How long until the middle of the bar reaches T degrees? What resolution is needed? Which type of node?

12 More Node Options Temperature-varying C by interpolation
The material Cp can be a function of temperature A diffusion node’s capacitance (energy/degree: rVCp = mCp) can therefore be a function of temperature Most common method: interpolation (table of temperatures and specific heats) as input in a Thermal Desktop material property Thermal Desktop will generate a SINDA “array” and will use SIV type nodes (TD Demo 03) Other capacitance options include: Ablative (invokes SINDA ABLATE routine) Phase change (invokes SINDA FUSION routine)

13 More Conductor Options
Temperature-varying G by interpolation The material K can be a function of temperature A linear conductor’s conductance (power/degree: “KA/L” for example) can therefore be a function of temperature Most common method: interpolation (table of temperatures and conductivities) as input in a Thermal Desktop material property Thermal Desktop will generate a SINDA “array” and will use SIV type conductors (TD Demo 03) Other conductance options include: Radiation conductances (“RADKs”) generated by RadCAD®, perhaps time-varying if geometry is time-varying Pressure-varying (pressure as an input) Anisotropic One-way for modeling flow or movement of material

14 Sources Time-varying Q by interpolation Other source options include:
The flux (or absolute power) can be applied as a constant or as a function of temperature (again, table to be interpolated) Thermal Desktop will generate an array if needed, and generates logic (TD Demo 03) Nodal Q’s are zeroed and reconstructed each time step or steady state iteration: sum instead of replace in logic! Q10 = Q10 + power NOT: Q10 = power Other source options include: Orbital direct, reflected, and planetary as generated by RadCAD in the Orbit module, or as converted from another radiation source (e.g., lamp, furnace)

15 Submodels Each node and conductor is assigned to a SINDA/FLUINT thermal submodel All network elements can be in one submodel, or each element could be in its own submodel Helps organize a model (e.g., distinct nodes with same ID) Enables top-level browsing, control Facilitates merging models Advanced operations possible (turn on/off submodels, make them boundary conditions, etc. while executing) Not to be confused with Analysis Groups (sets of surfaces that are solved separately for radiation)

16 SINDA/FLUINT Input Files
SINDA/FLUINT can be run stand-alone (traditional text input) Thermal Desktop can generate node, conductor, source blocks (transition mode) Thermal Desktop can generate blocks, run and postprocess SINDA/FLUINT (modern Case Set Manager mode) Advanced users can still create or customize SINDA/FLUINT blocks within the Case Set Manager

17 Quick Overview of Input File (TD demo)
Subdivided into “HEADER” sections Some HEADER blocks are global (apply to whole model) Some HEADER blocks are per submodel Some inputs can be fetched from other files, perhaps recursively (“INSERT” commands) Some inputs are data Input formats vary per block Others are pre-Fortran logic which will be “translated” Certain rules apply, such as Fortran column usage

18 Sample Input File _______________ HEADER OPTIONS DATA | I/O Options DATA TITLE HEATED BAR SAMPLE PROBLEM | OUTPUT = TEST.OUT _________ | HEADER REGISTER DATA | Speadsheet data DATA DENSCP = 0.3*0.2 | CON = 0.5/12.0 | AREA = 0.1*1.0 | LONG = 3.0 _________ | HEADER NODE DATA, SUB1 | Network descr. DATA 10, 70.0, DENSCP*AREA*LONG/3 | 15, 70.0, DENSCP*AREA*LONG/3 | 20, 70.0, DENSCP*AREA*LONG/3 | -99, -460., _________ | HEADER SOURCE DATA, SUB1 | Network descr. DATA 10, 10.0/ (btuhrwa*hr2min) | HEADER CONDUCTOR DATA, SUB1 | Network descr. DATA , 10, 15, CON*AREA/(LONG/3) | , 15, 20, CON*AREA/(LONG/3) | , 20, 99, 0.1*AREA*sbcon/(60*144) | HEADER CONTROL DATA, SUB1 _________ | TIMEND = | Control param. DATA OUTPUT = _________ | HEADER OPERATIONS | Analysis seq. LOGIC BUILD ALL | CALL TRANSIENT _________ | HEADER OUTPUT CALLS, SUB1 | Output oper. LOGIC IF(T15 .GT ) THEN | CALL TPRINT(’SUB1’) | TIMEND = TIMEN | ENDIF _________ | END OF DATA

19 Basic Data Flow

20 Thermal Desktop Symbols (TD Demo 04)

21 Expressions Built-in functions and constants available
Math operators, parentheses, etc. Exponentiation is either “**” or “^” 2.0*pi*Con*Length/ln(Rout/Rin) Advanced expressions available Conditional (if/then/else equivalent) Dereferencing (e.g., “#this” to mean “this element ID”) Built-in constant Built-in function Register/Symbol

22 Uses of Symbols Parametric Modeling Parameter Sweeps
Rapid, consistent model changes Makes models more self-documenting Parameter Sweeps Series of analyses varying one parameter (symbol) Sizing and Optimization Let program choose values according to rules Uncertainties Calibrate values to available test data Perform sensitivity and statistical design studies Find worst-case design scenarios

23 SINDA/FLUINT Registers
Registers are user-defined variables that can be used almost anywhere within the input file that values are required, perhaps as part of an expression Changes to a register’s value or defining expression are propagated throughout the model, even during a solution Registers be defined using other registers, built-in functions, constants, “processor variables” (such as “sub.t22”, “timen”, etc. to be defined later) Example: HEADER REGISTER DATA WHEEL18 = TRUCK + TRAILER TRUCK = 0.25*PI*(LN(5./2.))^2 TRAILER = SIN(TRUCK) E4 INT:DRIVER = 1 $ DRIVER WILL BE INTEGER IN LOGIC

24 S/F Registers vs. TD Symbols
Registers may contain references to “processor variables” (time, temperatures, etc.). Symbols cannot since those are not known until SINDA/FLUINT begins solving Symbols may refer to arrays for interpolation; registers cannot. Symbols may be passed to SINDA/FLUINT as registers (TD Demo 04) If update of those registers requires a new TD solution, an advanced option called “the dynamic mode” is available … example later SINDA/FLUINT doesn’t need to know about all symbols (they won’t affect its solutions) Example: length of a plate (just used to generate G’s, C’s) Thermal Desktop doesn’t need to know about all registers (they can be added just to SINDA/FLUINT) Example: number of times a heater switches on/off

25 S/F Concurrent User Logic and Spreadsheet Expressions
User-supplied Fortran and Fortran-like subroutines are called every solution interval (per transient time step or per steady-state iteration) The analysis operation sequence and output control are also in the form of user-supplied subroutines Using spreadsheet-like expressions, inputs can be related to outputs or other inputs Unlike logic blocks, any interrelationships defined using registers and expressions are continually updated Translations: Access to and Control over SINDA/FLUINT Variables The user has access to almost all important variables (T, C, Q, G, and control constants) in all logic blocks and expressions Example: “T100” means the temperature of node 100 “smn.T100” means the temperature of node 100 in submodel smn If encountered in user logic blocks, this string will be translated into an internal Fortran array before compiling. A sample "pseudo-Fortran" line is: IF (T22 .GT ) Q22 = FACTOR*G101*SQRT(T22 - T43) Even registers and expressions can be changed in logic blocks

26 Logic and Expressions TYPICAL USES OF LOGIC
Modeling feedback control systems Initializing or varying properties and boundary conditions Dynamically changing the network Performing auxiliary solutions (phase change, ablation, etc.) Modeling advanced, system-specific components (heat pipes, TECs, etc.) Customizing analysis sequences and output Embedding or interfacing with other programs TYPICAL USES OF REGISTER- AND SYMBOL-BASED SPREADSHEET RELATIONSHIPS Self-documenting and self-consistent inputs Centralized changes and control of different cases Easy parametric sweep, sensitivity, what-if analysis Access to design optimization, automated test data correlation, and worst-case design seeking options Access to reliability engineering (statistical design) features Reduce or eliminate the need for user logic

27 Solution Types Steady-state Transient Parametric Sweep
Diffusion nodes are treated as arithmetic nodes: capacitance terms are ignored Transient Usually preceded by a steady state for initial conditions: SINDA results (temperatures etc.) are cumulative unless specifically restored to an early state Parametric Sweep Repeated steady state or transient runs varying one symbol/register Advanced Design Solutions Sizing, statistical design, calibration to data, etc. using multiple symbols and/or registers

28 Analysis Sequence (TD Demo 03)
The sequence of analysis operations can be simple: A single steady state A single steady state followed by a single transient Or it can be arbitrarily complex, as defined in OPERATIONS: Find worst-case conditions, then size a radiator using steady-states, run a transient verification, then estimate the likelihood that the size is statistically adequate based on additional uncertainties Simple OPERATIONS are built by the TD Case Set Manager. Advanced sequences can be scripted by the user

29 Steady States (TD Demo 03)
Find a time-independent state (at the current time, if time-varying properties are used) User chooses convergence criteria (“S/F Calculations” tab in Case Set Manager) Maximum temperature change since last iteration Maximum percent imbalance in energy flow in/out Maximum number of iterations to attempt Advanced Control (“SINDA” tab, “CONTROL”) Simultaneous or iterative Damping and acceleration options

30 Transient (TD Demo 03) Integrate* from current time to a user-specified event duration (TIMEND) Can choose a large value then terminate when a given criteria is met: HEADER VARIABLES 2, mymod if( t100 .GT. 100 ) timend = timen By default, chooses its own time step based on accuracy criteria (DRLXCA) Can cap the step based on temperature (DTMPCA) or time (DTIMEH) limits (“SINDA” tab, “CONTROL”) * Uses second order implicit method by default

31 Parametric Sweep (TD Demo 05)
Single symbol varied from lower to upper limit, steady or transient (“PSWEEP” in S/F) What’s the Dynamic Mode? TD starts S/F, then S/F sends back new values of registers (as symbols) and requests new TD calculations. Normally part of optimization and statistical design. S/F logic blocks can be used as a “script” for running multiple cases

32 Advanced Design Solutions (overview, covered in later class)
Optimization Find the values of one or more symbols/registers such that: Some goal is met, minimized, or maximized Zero or more constraints are obeyed Applications include sizing, calibration to test data, worst-case seeking, etc. Statistical Sampling Find the chances that one or more limits are exceeded given one or more symbols/registers are uncertain Design space scanning Multiple variable parametric sweep Somewhat like a mixture of optimization and sampling These options always require the user to invoke the Dynamic Mode if a TD symbol is varied

33 Logic Blocks OPERATIONS is a logic block called once per SINDA run. When it returns, SINDA is done. Output operations (“OUTPUT CALLS”) are also in the form of a logic block, one per submodel. They are invoked by default once at the end of a steady-state call, once every OUTPUT interval in a transient (OUTPUT defaults to 0.01*TIMEND) Others are called each time step, each steady state relaxation step (again, one per submodel VARIABLES 0 start of steady state start of time step Time-dependent updates VARIABLES 1 once each iteration once* each time step Temperature-dependent updates VARIABLES 2 after steady state end of time step Wrap up Almost any operation is legal in almost any logic block: output can be requested anywhere, for example. * May be optionally called once per implicit relaxation (NVARB1)

34 Logic Translations SINDA/FLUINT must find user references such as “mymod.T100” and translate them into program variables Translatable variables include T, C, G, Q, HR, and also submodel-specific constants such as DRLXCA Example: User Logic in OUTPUT CALLS As translated by SINDA/FLUINT IF(T15 .GT )THEN IF ( T( 2) .GT ) THEN EBALSA = EBALSA ( 1) = E-02 TIMEND = TIMEN TIMEND = TIMEN ENDIF ENDIF Cautions with TD-based SINDA/FLUINT Node resequencing in TD can render logic translations invalid Deselect the “auto number” feature in conductors, or use individual conductors, if logic-based adjustments are required

35 Translation Control Translations can be performed “dynamically” using routines. Example: loop on user ID: Do itest = 100, 1100, $ 100, 110, … 1100 f ttest = t( intnod(’mymod’,itest) ) $ translate itest write(nuser1,*) ’Temp of node ’,itest,’ is ’,ttest enddo Different routines and functions are available for each type of network element F in column 1 disables translation in logic Otherwise S/F will err off trying to translate “T(intnod …” Sections can be blocked off using FSTART/FSTOP This also turns off the spell checker!

36 Output and Postprocessing
Some routines callable from OUTPUT CALLS blocks: NODTAB Tabulate nodal quantities TEXT TPRINT Print nodal temperatures TEXT SORTPR Print sorted temperatures TEXT TMNMX Print min/max temperatures TEXT QMAP Print map of network TEXT SAVE for postprocessing or restarts BINARY Also related: RESAVE (RSO file) BINARY SAVEDB (REDB file) BINARY Example: HEADER OUTPUT CALLS, SUB1 CALL NODMAP(’SUB1’) $ Goes to text OUTPUT file CALL SAVE(’ALL’,0) $ Goes to binary SAVE file Binary post-processing files (SAVE, RESAVE, etc.) Can be used for TD viewing, EZ-XY or Excel plots Can also be used for restarting from previous runs

37 Units Thermal Desktop SINDA (if thermal only)
Various unit sets can be defined under Preferences SINDA (if thermal only) Doesn’t enforce units as long as they are consistent. Identified only via selection of ABSZRO: value of absolute zero in user units (0, , or ) SIGMA: S-B constant applied to all RADKs in model (defaults to 1.0!) FLUINT (if fluid networks active) User must identify and use one of two unit sets, per UID (ENG or SI)! FloCAD allows many units, but they will be converted to SI or ENG Upshot: The Thermal Desktop flexibility of units often terminates when the model reaches SINDA/FLUINT. The user won’t notice except in logic blocks, which cannot contain TD conversions. Any extra instructions added to SINDA/FLUINT logic blocks must be consistent with its units requirements, whatever the TD preferences!

38 Common and Helpful Auxiliary Routines
Math routines: 70+ interpolation methods array and matrix manipulations PID controllers co-solved ODEs (e.g., mechanical motions), etc. Simulations: HEATER, PHEATER: Thermostatic and proportional heater controllers FUSION, ABLATE: Phase change simulation, ablation simulation HEATPIPE(2): 1D or 2D FCHP/CCHP or VCHP simulation TEC(2): 1D or 2D Thermoelectric/Peltier simulation and sizing utilities Heat transfer convection library (natural convection, jets, heat sinks, etc.) Utilities: BDYNOD/HTRNOD/RELNOD: Turn any node into a temporary boundary node ARITNOD: Turn a diffusion node into a temporary arithmetic (massless) node QFLOW: Track heat flows between groups of nodes TSINK, TSINK1: Calculate/output sink temperatures for model reduction etc.

39 Quick Lab (TD Demo 06 starting point)
A 1m x 0.3m x 1mm aluminum plate is initially at 100K in space It is coated with e=0.8 paint The model is set up with 5 nodes, runs for 30 min. with 100W applied to one end

40 Quick Lab Start by running the model “as is”
Select the nodes and call for an XY plot (leave it there, it can be refreshed later by editing the “data set”) Some things to try as time (and C&R help!) allows: Change some of the symbols and re-run Change some of the control parameters and/or the model resolution or nodalization method, and see how much difference there is Change the material properties to be temperature-varying (or at least swap them with another existing material, “alumtoo”) Call for a steady state instead More advanced: Call for a steady state after the transient Add logic to terminate the run when heated node reaches 300K


Download ppt "SINDA Training Notes For Thermal Desktop Class"

Similar presentations


Ads by Google