zhuminjie / OpenSeesPyDoc

OpenSeesPy Documentation
http://openseespydoc.readthedocs.io
Other
141 stars 105 forks source link

thermal Steel differences? #133

Open mcoar opened 4 years ago

mcoar commented 4 years ago

Hello,

I am attempting to validate some results for thermal steels. I am using OpenSees TCL 2.5.0 and python 3.7.

Among other examples, I am looking at the "thermal bowing of pinned beam" example from the opensees for fire site: http://openseesforfire.github.io/Subpages/Examples/pinnedbeam.html

I have downloaded and run the TCL example, and plotted the vertical displacements of nodes 2 and 6 in excel, as is done on the page I linked above. I receive identical results to the webpage. TCLpinnedbeam pinned.txt

I attempted to translate this to openseespy, but I am receiving similar results. My results and code are below: PYpinnedbeam pinnedPY.txt

I also get dissimilarities when I attempt to use Steel01Thermal instead of Steel02Thermal. I'm not sure if I made an error in how I translated the code to OSP, if I messed up the plotting, or if there's an actual difference in how the materials or load patterns are coded. Any help would be appreciated.

Thank you for your time.

mcoar commented 4 years ago

I am posting an update to this question. Using the same base codes as above, I have found results for deflection in a pinned-pinned steel beam for a range of avg. temperature increases (\Delta T) and thermal gradients (T_,y), using both the .tcl version and .py version. I have posted my results below. There are significant differences between the opensees .tcl package and opensees .py for this example, as seen in the excel sheet I've posted below.

However, when I release one of the sides, so that it becomes a pinned-pinned roller connection, the two versions of the software give identical results, subject to a 20 degree difference that corresponds to the difference between the reference temperature for each version (tcl uses 20degC and python uses 0degC). This is shown in the second sheet of the excel file I've attached.

Simple figures of the models are posted within each sheet. Comparison.xlsx

I'm confused why there is a difference in these results. Any help in understanding the difference would be appreciated.

mhscott commented 4 years ago

Are you using Steel01Thermal?

From: mcoar notifications@github.com Sent: Monday, March 9, 2020 10:54 AM To: zhuminjie/OpenSeesPyDoc OpenSeesPyDoc@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: Re: [zhuminjie/OpenSeesPyDoc] thermal Steel differences? (#133)

I am posting an update to this question. Using the same base codes as above, I have found results for deflection in a pinned-pinned steel beam for a range of avg. temperature increases (\Delta T) and thermal gradients (T_,y), using both the .tcl version and .py version. I have posted my results below. There are significant differences between the opensees .tcl package and opensees .py for this example, as seen in the excel sheet I've posted below.

However, when I release one of the sides, so that it becomes a pinned-pinned roller connection, the two versions of the software give identical results, subject to a 20 degree difference that corresponds to the difference between the reference temperature for each version (tcl uses 20degC and python uses 0degC). This is shown in the second sheet of the excel file I've attached.

Simple figures of the models are posted within each sheet. Comparison.xlsxhttps://github.com/zhuminjie/OpenSeesPyDoc/files/4308196/Comparison.xlsx

I'm confused why there is a difference in these results. Any help in understanding the difference would be appreciated.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/zhuminjie/OpenSeesPyDoc/issues/133?email_source=notifications&email_token=ADEIU7ENTYON47Z6QN4SBOLRGU3NFA5CNFSM4KWXCR32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEOIKTDQ#issuecomment-596683150, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADEIU7BQEGV3I5C4WUMNPDTRGU3NFANCNFSM4KWXCR3Q.

mhscott commented 4 years ago

When you say there is a 20degC difference in reference temperature between Tcl and Python, do you mean this is in your input or in how OpenSees somehow interprets the temperatures differently? There should not be a difference and I just want to be sure. I’m not too familiar with all the details of the thermal implementations in OpenSees.

From: mcoar notifications@github.com Sent: Monday, March 9, 2020 10:54 AM To: zhuminjie/OpenSeesPyDoc OpenSeesPyDoc@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: Re: [zhuminjie/OpenSeesPyDoc] thermal Steel differences? (#133)

I am posting an update to this question. Using the same base codes as above, I have found results for deflection in a pinned-pinned steel beam for a range of avg. temperature increases (\Delta T) and thermal gradients (T_,y), using both the .tcl version and .py version. I have posted my results below. There are significant differences between the opensees .tcl package and opensees .py for this example, as seen in the excel sheet I've posted below.

However, when I release one of the sides, so that it becomes a pinned-pinned roller connection, the two versions of the software give identical results, subject to a 20 degree difference that corresponds to the difference between the reference temperature for each version (tcl uses 20degC and python uses 0degC). This is shown in the second sheet of the excel file I've attached.

Simple figures of the models are posted within each sheet. Comparison.xlsxhttps://github.com/zhuminjie/OpenSeesPyDoc/files/4308196/Comparison.xlsx

I'm confused why there is a difference in these results. Any help in understanding the difference would be appreciated.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/zhuminjie/OpenSeesPyDoc/issues/133?email_source=notifications&email_token=ADEIU7ENTYON47Z6QN4SBOLRGU3NFA5CNFSM4KWXCR32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEOIKTDQ#issuecomment-596683150, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADEIU7BQEGV3I5C4WUMNPDTRGU3NFANCNFSM4KWXCR3Q.

mcoar commented 4 years ago

Good evening,

In the results I have shown above, I am using Steel01Thermal, although I have noticed similar results for Steel02Thermal - I just haven't documented them. My understanding is that the difference is in the shape of the hysteresis model, so there shouldn't be a big difference between their behavior in this example.

As for the 20 degree difference, the Tcl and Python packages interpret temperature inputs differently. Tcl takes the input max temperature and interprets it as a change from ambient temperature (20degC), while python takes the input and treats it as a change from 0degC.

Here is the Steel01Thermal documentation page, which is a little ambiguous about what the reference is: https://www.wiki.ed.ac.uk/display/opensees/Steel01Thermal

I was confused because I was getting different results for Tcl and Python at the same reference temperature for this example, the "half-heated beam", which is given in both the python and tcl example documentation. https://openseespydoc.readthedocs.io/en/latest/src/beamThermal.html http://openseesforfire.github.io/Subpages/Examples/restrainedbeam.html

By comparing both of them to the analytical solution, posted here: analytical solution.pdf I found that the two versions of the software give similar results, just at a 20 degree offset. My results for the analytical solution, opensees tcl, and opensees python are compared here: HalfHeatedBeam_comparisonSheet.xlsx This can be tested simply when an unrestrained beam does not expand from 0-20degC input temperature, but does expand for tcl.

My input files are here: thermalBeamTcl.txt beamThermalPy.txt

The python version has some extra lines from where I've been experimenting with the parameter questions I've been asking about in a different thread. They were not in use when I found these results.

Thanks again for your time and help.