Radiosity Solver and RSURF
Radiosity Solver and RSURF
(OP)
Hi - I'm having problems using the radiosity solver.
I am trying to model a thin plate. Heat is generated on the plate and then there is radiative cooling. For a single plate I think I have the model working correctly.
However, I also require to simulate a double plate scenario, where the plates radiate between themselves, as well as the surroundings.
flash3780 kindly sent this useful link: http ://www.ans ys.com/sta ticassets/ ANSYS/stat icassets/r esourcelib rary/artic le/AA-V1-I 1-View-Fac toring-Rad iation.pdf
But I am still having trouble in getting radiation between the plates. Presently I am only heating one plate, to see if I can see any heat transfer to the other - but I see nothing :(
I have attached my macro file in case anyone can see anything that I'm doing obviously wrong? Or can give me any tips for succeeding?
http: //files.en gineering. com/getfil e.aspx?fol der=987140 87-98c8-42 80-9bd0-b9 f4994997b8 &file= KEKRAD.mac
Thanks for any help you are able to offer, all very much appreciated.
HVSmith
I am trying to model a thin plate. Heat is generated on the plate and then there is radiative cooling. For a single plate I think I have the model working correctly.
However, I also require to simulate a double plate scenario, where the plates radiate between themselves, as well as the surroundings.
flash3780 kindly sent this useful link: http
But I am still having trouble in getting radiation between the plates. Presently I am only heating one plate, to see if I can see any heat transfer to the other - but I see nothing :(
I have attached my macro file in case anyone can see anything that I'm doing obviously wrong? Or can give me any tips for succeeding?
http:
Thanks for any help you are able to offer, all very much appreciated.
HVSmith





RE: Radiosity Solver and RSURF
Also, if you're radiating between infinite(?) plates, you may want to issue the VFSM command to prevent your model from radiating into space. But, I've found that even when scaling the view-factor sum to zero, I still need to define a SPCTEMP for the enclosure... not sure why.
You may want to start with a static problem before jumping into a transient problem... just for easier debugging.
RE: Radiosity Solver and RSURF
http://ans
Basically, you need to apply your boundary condition to a frictionless, symmetric contact pair (CONTA172) in near-contact (i.e. within the pinball region) using the SFE command. Here's an example that I've used recently in one of my Workbench models (input as a command snippet inserted under a contact pair):
CODE
! The type number for the contact type is equal to the parameter "cid".
! The type number for the target type is equal to the parameter "tid".
! The real and mat number for the asymmetric contact pair is equal to the parameter "cid".
! The real and mat number for the symmetric contact pair(if it exists) is equal to the parameter "tid".
! Active UNIT system in Workbench when this object was created: Metric (m, kg, N, s, V, A)
nropt,full
a = cid ! Store the contact ID in some variable
!*********ENTER EMISSIVITY HERE*********!
e1 = 0.950 ! Microsil Insulation (http://www.zircarceramics.com/pages/microporusinsulation/microporous.htm)
e2 = 0.950 ! Microsil Insulation (http://www.zircarceramics.com/pages/microporusinsulation/microporous.htm)
e12= e1*e2/(e1 + e2 - e1*e2)
MP, emis, a, e12, ! Define the emissivity as a material property to the material used for contact elements whose ID is 'a'
!*********ENTER CONVECTION HERE*********!
mptemp, 1, 0, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000
mpdata, hf, a, 1, 5.77, 7.56, 9.26, 10.79, 12.14, 13.34, 14.25, 15.57, 16.72, 17.86, 19.09 ! Define Gap Convection (4.20mm)
keyopt, a, 1, 2
rmodif, a, 14, 0.00e00
rmodif, a, 16, 5.67e-8 ! Modify real constant number 16 for contact id 'a' to input steffan boltzman constant
!*********ENTER VIEW FACTOR HERE*********!
R1=38.55e-3
R2=42.75e-3
VF=R1/R2
rmodif, a, 17,VF ! Modify real constant number 17 for contact id 'a' to input radiation viewing factor
esel,s,type,,a
esel,r,ename,,conta174
sfe,all,1,conv,1,-a
sfe,all,1,conv,2,100
allsel
RE: Radiosity Solver and RSURF
RE: Radiosity Solver and RSURF
I am also trying to model a single plate case where it is heated and then radiates to ambient.
Initially I was using RDSF to do this, but the viewfactors were all zero (can't decide if this is a problem or not, in radiating to ambient) so I tried using RAD but keep getting the warning:
"RAD option on SF/SFE command is only supported by FLOTRAN elements (Fluid141, Fluid142). Elements Surf151 and Surf152 with Keyopy(9)>0 without the SF/SFE command should be used for further analyses."
Now, I'm using Shell131 and then the RSURF command to generate Surf252's - am I better sticking with RDSF (even though there are no other surfaces) or change what I'm doing with RAD?
Thanks again for your continued help.
HVSmith
RE: Radiosity Solver and RSURF
Convective coefficients can also be applied, but that does, in fact, require the SF/SFE command (also discussed in the aforementioned thread).
RE: Radiosity Solver and RSURF
Here's a small section of the code, relating to the radiation:
!----------------------------
!DEFINE ELEMENT TYPES
!----------------------------
ET,1,SHELL131 !THERMAL SHELL
KEYOPT,1,3,2
KEYOPT,1,4,1
R,1 !REAL CONSTANT
SECTYPE,1,SHELL
SECDATA,1E-6,1
!----------------------------
!GEOMETRY AND MESH
!----------------------------
BLC4,-L/2,-L/2,L,L !FOIL GEOMETRY
AESIZE,ALL,L/20 !MESS FOIL GRID 20X20
AMESH,ALL
ASEL,S,AREA,,1
ESLA,S
NSLA,S,1
CM,FOIL,NODE
CM,FOIL_E,ELEM
IC,FOIL,ALL,300
ALLSEL
!----------------------------
!RADIATION EFFECTS
!----------------------------
ET,2,SURF152 !CREATE SURFACE ELEMENT FOR RADIATION TO AMBIENT
KEYOPT,2,5,1 !KEYOPT TO HAVE ONE EXTRA NODE (SPACE NODE)
KEYOPT,2,9,1 !KEYOPT TO USE DEFAULT (1) FORM FACTOR
R,2,1,5.67E-8 !REAL CONSTANTS FOR ET 2
ESURF !APPLY SURF152 TO SELECTED AREAS OF SHELL131
N,5000,1000,1000,1000 !CREATE AN EXTRA NODE FAR AWAY
NSEL,S,NODE,,5000,5000 !SELECT NODE
ESURF,5000 !CREATE SURFACE ELEMENTS FOR EXTRA NODE
D,5000,TEMP,300 !SET TEMPERATURE OF EXTRA NODE
(I attach a macro file to this post too, incase that is easier).
I keep getting the error "The active element type cannot use and extra node. The ESURF command is ignored".
I have searched for a solution to this for a long time - do you know what the problem may be?
In many ANSYS documents regarding this subject it says "simply overlay the surface effect elements" - this hasn't been this simple for me - I think this is where I'm going wrong?
Is this all that is required for radiation to ambient then? This is quite surprising to me - my last efforts (looking at surface-surface radiation) seemed more intuitive to me (using the radiosity solver) - maybe I'm missing something?
And ideally I'd like to have radiation from both sides of my thin plate - but from extra reading it seems this is only possible on one side if using a shell? Is there anyway to get around this (like reversing normals?)?
Thanks again for any help/advice you are able to give - it really is very much appreciated.
HVSmith
PS,
I was unable to open the .wbpz file attached to your post in the other thread.
RE: Radiosity Solver and RSURF
I'm also not seeing where you're selecting the nodes that you'd like to apply the surface effect elements to... or your emissivity. I'd think that you'd want that last part to look something like this:
CODE
!RADIATION EFFECTS
!----------------------------
ET, 2,SURF152 !CREATE SURFACE ELEMENT FOR RADIATION TO AMBIENT
MP,EMIS,2,0.15 !SET EMISSIVITY
KEYOPT, 2,5,1 !KEYOPT TO HAVE ONE EXTRA NODE (SPACE NODE)
KEYOPT, 2,9,1 !KEYOPT TO USE DEFAULT (1) FORM FACTOR
R, 2,1,5.67E-8 !REAL CONSTANTS FOR ET 2
N,5000,1000,1000,1000 !CREATE AN EXTRA NODE FAR AWAY
NSEL, S,NODE,,5000,5000 !SELECT NODE
CMSEL,A,FOIL !SELECT DESIRED SURFACE (NODES)
TYPE,2 !SET ELEMENT TYPE
REAL,2 !SET REAL CONSTANT SET
MAT, 2 !SET MATERIAL
ESURF,5000 !CREATE SURF152's ATTACHED TO SPACE NODE (5000)
D,5000,TEMP,300 !SET TEMPERATURE OF EXTRA NODE
Warning: I didn't test any of the above code; no substitutions, exchanges or refunds.
RE: Radiosity Solver and RSURF
This has now been corrected in the code.
With only the latter ESURF command I see that it is indeed creating the extra element. However, this then throws up errors such as:
*** ERROR *** CP = 33.828 TIME= 16:04:22
Radiation element 401 has zero or negative absolute temperature. The
offset temperature (TOFFST) and/or the uniform temperature (TUNIF)
must be positive.
The same message is also displayed about radiation element 421.
This is odd. I'm not really sure what the problem is? I thought I had already defined initial temperatures and the temperature of the space node...
None the less, I tried to fix this with
ESEL,ALL
IC,ALL,TEMP,300
after giving the ESURF command and setting the temperature of the space node, but this still doesn't help - I then get errors of "The value of TEMP at node 261 is 90168629.7 which is greater than the current limit of 1000000. This generally indicates rigid body motion as a result of an unconstrained model. Verify that your model is properly constrained."
I'm working in Kelvin, so the temperature offset is not required, as far as I am aware.
So something is going very wrong somewhere...
Is the problem obvious/trivial?
Do I actively have to allow radiation in /SOLU or is this implicit from the creation of surf152's?
Thanks again for any help, it's very much appreciated, this is definitely a steep learning curve for me...
HVSmith
RE: Radiosity Solver and RSURF
RE: Radiosity Solver and RSURF
RE: Radiosity Solver and RSURF
I apply pulsed heating and then cool by radiation.
There is conduction in the plane.
I set an initial condition of 300K for everything.
(The pulsed heating is described by a Gaussian function).
Is this what you mean by boundary conditions? Or should I be applying other constraints since this is a radiation dominated cooling effect?
Thanks
HVSmith
PS, macro file attached in case what I've said isn't clear
RE: Radiosity Solver and RSURF
I've tried implementing radiation from both sides of the plate before in many ways, using RDSF seems to work, but I can't help but feeling it's not true, since there is no other surface to radiate towards. But the results are roughly similar to a numerical solution I have.
Hopefully I'll be able get this SURF152 working and it should be a more accurate representation and closer match to the numerical model.
RE: Radiosity Solver and RSURF
I apologize, I'm not able to run your script at the moment because I've got a few things in the cue. I am a bit suspicious of the volumetric heat input...
RE: Radiosity Solver and RSURF
I've included a TOFFST,0 as you suggested, for completeness, it can't harm as you say.
The volumetric heat input was calculated at the very beginning of the project. I've been through it again since you remarked upon it and all the numbers seem fine to me and give reasonable temperature results (at least in the expected ball-park).
However, the results obtained using SURF152 are somewhat different to those when I use the radiosity solver method to apply RSURF's to either or both sides of my shell element, results summarised as follows:
SURF152:
Time 0.9805s, Temp 2597K
Time 1s, Temp 771K
RDSF (2 sides):
Time 0.9805s, Temp 2490K
Time 1s, Temp 613K
RDSF (1 side):
Time 0.9805s, Temp 2618K
Time 1s, Temp 785K
All of these numbers are in the right ball-park (I have a separate numerical solver that I'm benchmarking against which has T~2350K at 0.9805s and T~800K at 1s).
I'm still confused as to which method (RDSF or SURF152) to actually use.
I also need to convince myself that the SURF152 is actually working correctly. Do you have to do anything to "call" the radiation into action, or is it just going to happen given the prescence of the SURF152?
The numerical analysis I have assumes heat radiating from both sides - from what I understand SURF152 can only be applied to one load-key of a shell, is this correct? I've tried moving the space-node around (+/- in the z direction) seeing if this makes any difference but as far as I can see it does not. Do you have any suggestion for a way to implement radiation from both sides via the SURF152 route, or similar?
Thanks again for your help - really useful to get feedback from folks on this :)
HVSmith
PS, most current macro attached if required
RE: Radiosity Solver and RSURF
I tried to check that the SURF152 radiation implementation was working by doing a test without any radiation defined at all, and, as expected the temperature just continued to rise.
However, I am still struggling to decide why the results of the SURF152 and Radiosity Solver method are inconsistent. I attach some .jpeg images of the final results so you can see. My gut instinct says that SURF152 is the way forward.
I've also still been struggling to find a way to implement SURF15s on both sides of my 3D shell - do you happen to know if there are any work-arounds for this?
Thanks again for your recommendations/suggestions
HVSmith
RE: Radiosity Solver and RSURF
RE: Radiosity Solver and RSURF
Thanks once again for any insight you can lend!
RE: Radiosity Solver and RSURF
I'd imagine that your SURF152s will solve much faster, since the Radiosity solver is trying to calculate view factors.
To complicate things further, there is a third radiation solver, the AUX12 radiation matrix method (which is supposed to be more accurate than the Radiosity solver, though more computationally expensive). I think that SURF152 elements are probably most appropriate for your problem as well, since you're only radiating to space.
I believe the RADOPT command adjusts the convergence criteria for the Radiosity solver, whereas (I think) the CNVTOL command sets the convergence tolerance for SURF152 elements.
Also... a quick tip: When comparing results it's a good idea to match scales to get a better idea of what's going on.
RE: Radiosity Solver and RSURF
Are you able to add any comment/suggestion as to how I can extend the SURF152 elements to look at radiation from both load-keys of the underlying 3D shell?
From what I've read they can only be applied to one load-key, but in reality radiation will occur from both, so is there a way to model this? Or is it a limitation that I should just be aware of?
Thanks again
HVSmith
RE: Radiosity Solver and RSURF
I think that there is a section of the thermal analysis guide that discusses doing just that, actually (though I haven't tried using through-thickness temperature variations in shell elements). Check section 2.4.1 of the thermal analysis guide. I think you'll want to create two sets of SURF152 elements (one for each side). I believe that you can set KEYOPT(11)=1 to tie the SURF152 elements to the TTOP DOF or KEYOPT(11) to tie them to the TBOT DOF. So... you should be able to set different (space node) temperatures on opposite sides of your foil, if desired... I think.
Here's a link to the documentation: http://w
RE: Radiosity Solver and RSURF
HVSmith
RE: Radiosity Solver and RSURF
I worked my way through them and now only have one (stubborn one) remaining:
*** ERROR *** CP = 838.766 TIME= 16:56:51
Radiation element 401 has zero or negative absolute temperature. The
offset temperature (TOFFST) and/or the uniform temperature (TUNIF)
must be positive.
*** ERROR *** CP = 838.766 TIME= 16:56:51
Radiation element 801 has zero or negative absolute temperature. The
offset temperature (TOFFST) and/or the uniform temperature (TUNIF)
must be positive.
This is similar to an error I posted above that miraculously went away with an ESEL,ALL followed by IC,ALL,TEMP,300 but unfortunately this didn't seem to solve the problem this time.
I tried to see what the radiation element 401 and 801 were and from going through line by line and analysing the output I think they are the surf152 on the extra nodes.
I've tried swapping TBOT/TTOP and +/- z for the extra node but nothing seems to do the trick.
If I set TOFFST,300 then the solution works and the numbers seem reasonable. But everything else I'm doing is in K, so TOFFST should be 0, right? This has massively confused me. I don't want to start adding in TOFFST,300 in when it is already in K and TOFFST,0 works fine when I use KEYOPT(3)=2 on SHELL131, so no through thickness.
Is there something obvious I'm missing?!
CODE
MP,EMIS,2,0.8
KEYOPT,2,5,1
KEYOPT,2,9,1
KEYOPT,2,11,2
R,2,1,5.678e-8
N,10000,0,0,-0.1
NSEL,S,NODE,,10000,10000
CMSEL,A,FOIL
TYPE,2
REAL,2
MAT,2
TOFFST,0
ESURF,10000
D,10000,TEMP,300
ESEL,ALL
IC,ALL,TEMP,300
ET,3,SURF152
MP,EMIS,3,0.8
KEYOPT,3,5,1
KEYOPT,3,9,1
KEYOPT,3,11,1
R,3,1,5.678e-8
N,20000,0,0,0.1
NSEL,S,NODE,,20000,20000
CMSEL,A,FOIL
TYPE,3
REAL,3
MAT,3
TOFFST,0
ESURF,20000
D,20000,TEMP,300
ESEL,ALL
IC,ALL,TEMP,300
So, as far as I can tell, the TOFFST,0 is OK (in my opinion) and the TUNIF is >0 since I have the IC,ALL,TEMO,300, no?
Thanks again!
HVSmith
RE: Radiosity Solver and RSURF
RE: Radiosity Solver and RSURF
It's only when I try to make two SURF152's (one for the top and one for the bottom) that I encounter the problem described in my post on the 10th of August.
I have still not found a method in which I can successfully apply SURF152 to the top layer and a separate SURF152 to the bottom layer without seeing the error.
Thanks for any ideas you may have!
HVSmith
RE: Radiosity Solver and RSURF
KEYOPT(11) = 2 ----> and apply a single SURF152 works OK
KEYOPT(11) = 1 ----> and apply a single SURF152 does not work...
Errors are present for radiation elements 421 and 401 (error as described in post from 10th August)
And the errors are still present when I try to apply SURF152 to both sides.
I'm really confused.
I must be doing something really wrong. I think it might be to do with the way I'm defining the amount of layers now?
I used to make a SHELL131 act as a SHELL57, but now to get the TTOP and TBOT as you suggest I must change they KEYOPTS to allow temperature variation through the layer.
CODE
KEYOPT,1,3,1 !LINEAR TEMPERATURE VARIATION THROUGH LAYER
I used to define KEYOPT(4) to be equal to the amount of layers, which is equal to those in SECDATA, this is what I used to have:
CODE
R,1 !REAL CONSTANT
SECTYPE,1,SHELL
SECDATA,1E-6,1
So now, because I don't just want one layer, I'd have to change these keyopts to reflect this, in some way? I have tried KEYOPT,1,4,2 to try and give me a top and a bottom layer? But then I'm not sure what to put in SECDATA, do I have to define the thickness of the further sections?
I've tried very many things over the past days, but nothing is working.
Any further insight appreciated, many thanks, most recent macro file attached (with many lines commented out) if it's more useful to view this way...
HVSmith
RE: Radiosity Solver and RSURF
Worst case, you can always put in a ticket with ANSYS.
RE: Radiosity Solver and RSURF
RE: Radiosity Solver and RSURF
I'll give this another go and see if anything different happens this time...
Thanks again for all of your input - hope these discussions may shed some light for others out there too...!
RE: Radiosity Solver and RSURF
Instead of applying SURF152 to TTOP and TBOT, the same result can be obtained by using 2xSURF152's on the TEMP DOF - I'm not sure if this is just because I have such a thin thickness or also true in the general case. But they assure me this is fine for the above purpose, and is effectively radiation twice, so once from each surface. The answer it gives is also reasonable.
The other point I should make is that TOFFST should always be > 0. I guess this depends on how you define 0 as being +ve/-ve etc. I was under the impression TOFFST,0 would allow me to work in absolute temperature units (K). Apparently not. A value > 0 is required. I could have changed all my values to work with TOFFST,273 and work in degC, but instead I chose to use TOFFST,0.00001 so it is > 0 but only slightly (!), so the effect on the results is negligible...
Hopefully these tips will help someone else out there in the future!
RE: Radiosity Solver and RSURF
That's an interesting limitation on the TOFFST command (must be greater than zero); I'll file that away in my brain.
Glad to hear that your model seems to be working for you. Best of luck.
//signed//
Christopher K. Hubley
Mechanical Engineer
Sunpower Incorporated
Athens, Ohio
RE: Radiosity Solver and RSURF
I am quite new to the this radiation method(s) in Ansys and hence have some question to you guys...
1) In one of the post earlier, HVSmith mentioned that results of surf152 and different from Radiosity solver method. I could not understand what is the different in these methods.
Please correct me if I am wrong in my understanding about these methods-
Surf152 method: Here you solve radiation between surf152 element (pasted over other surface of a component) and an ambient nodal point such that the view-factor is always 1. Hence no separate calculation is required to calculate view-factor. Here do we need to assign RAD or RDSF tag on these surf152 elements using SFE command?
Radiosiy Method: Used to compute radiation between two surfaces. Here again, I think we need to create surf152 (or surf252? What is the difference?) over these surfaces, specify RDSF tag using SFE, specify TOFFSET, HEMIOPT setting. Now Ansys computes the viewfactor between these surfaces. Also, if the total viewfactor from a surface is less than 1, the remaining viewfactor is assigned to ambient with the ambient temperature specified (Thats why Ansys Mechanical - R13 GUI panel requires ambient temperature in the radiation command even if surface to surface radiation is selected).
Please confirm if my understanding is correct.
Also some additional queries -
1) When we can create surf152 using ESURF and use RAD or RDSF flage on Surf152 using SFE, why do we also have RSURF to create SURF252?
2) What is different between RAD and RDSF? I believe former is only for ambient radiation (Viewfactor always = 1), while latter is for surface-to-surface ( and ambient if Viewfactor < 1)
3) When surf-to-surf radiation for closed chamber is modeled through APDL commands, do we need to use SPCNOD and SPCTEMP? Also are surf152 enough to model this radiation using SFE,..RDSF flag?
And is this how the Radiation object (inserted in GUI panel of Ansys MEchanical 13 for surface-to-surface radiation) works?
Excuse me for sooo many questions, but I am stuck in radiation and any help will be highly appreciated.
Regards,
Shreesh