rhdodds / warp3d

Open source code for nonlinear finite element analysis of 3D solids and structures
Other
97 stars 38 forks source link

Chapter 1 examples 3 and 4 on Windows don't match manual #7

Open rudyverderber opened 4 years ago

rudyverderber commented 4 years ago

I am running v 18.2.0 on windows(Cygwin).

Example 4 strain plot does not match the manual. image

If I compare the end of output with the output provided, then some of the data matches (reactions, syy) while other data is quite different (sxx, szz,...). Windows v 18.2.0 (4 threads) structure vessel page no. 1

    step no.      52                        loading press_te
    stresses                      
  elem  cent         sigma_xx            sigma_yy            sigma_zz
                     sigma_xy            sigma_yz            sigma_xz
                     eng_dens            mises               c1      
                     c2                  c3      

   4482      1      506.594039          -17.741709          286.431419
                     -2.553535           -0.022078            1.921170
                      0.715885          456.062444            0.000191
                    456.351623            1.000000

   4474      1      480.513163          -14.610743          283.216122
                     -9.351400           -0.081717            1.721647
                      0.572980          432.041989            0.000000
                    456.375580            3.000000

   4386      1      442.158376          -14.902190          271.616722
                     -9.310997           -0.081349            1.488040
                      0.494760          400.386261            0.000000
                    456.410385            3.000000

   4378      1      407.080909          -14.749421          261.135993
                     -7.569651           -0.066097            1.273996
                      0.427794          371.288015            0.000000
                    456.445213            3.000000

   4356      1      392.513550          -14.742283          256.767078
                     -6.472893           -0.056543            1.184288
                      0.401544          359.349361            0.000000
                    456.462631            3.000000

    output reactions totals only 'react nodes'
  elem  cent         sigma_xx            sigma_yy            sigma_zz
                     sigma_xy            sigma_yz            sigma_xz
                     eng_dens            mises               c1      
                     c2                  c3      

  4482       1      -39.714525          -15.523197          427.182573
                     -2.784839           -0.016338           -4.090779
                      0.532257          455.366465            0.000106
                    456.347299            1.000000

  4474       1      -54.500370          -14.905684          419.867807
                     -1.687214           -0.005847           -4.155487
                      0.536134          455.930570            0.000123
                    456.383119            1.000000

  4386       1      -61.520359          -15.062703          416.017625
                     -0.641290            0.004245           -4.181395
                      0.539251          456.148139            0.000134
                    456.418586            1.000000

  4378       1      -64.532751          -15.126680          414.374298
                     -0.145754            0.009050           -4.192618
                      0.541439          456.274807            0.000140
                    456.453797            1.000000

  4356       1      -65.199477          -15.145125          414.025162
                      0.011333            0.010312           -4.192903
                      0.542307          456.321216            0.000142
                    456.471345            1.000000

output reactions totals only 'react nodes'

 Totals:        -0.67329E+07        -0.19639E+07        -0.17632E+06

 Totals:     -0.67329387E+07     -0.19638856E+07     -0.17632312E+06

provided output_temp_dependent Mac OS X 17.5.4

  elem  cent         sigma_xx            sigma_yy            sigma_zz
                     sigma_xy            sigma_yz            sigma_xz
                     eng_dens            mises               c1      
                     c2                  c3      

  4482       1      -39.714525          -15.523197          427.182573
                     -2.784839           -0.016338           -4.090779
                      0.532257          455.366465            0.000106
                    456.347299            1.000000

  4474       1      -54.500370          -14.905684          419.867807
                     -1.687214           -0.005847           -4.155487
                      0.536134          455.930570            0.000123
                    456.383119            1.000000

  4386       1      -61.520359          -15.062703          416.017625
                     -0.641290            0.004245           -4.181395
                      0.539251          456.148139            0.000134
                    456.418586            1.000000

  4378       1      -64.532751          -15.126680          414.374298
                     -0.145754            0.009050           -4.192618
                      0.541439          456.274807            0.000140
                    456.453797            1.000000

  4356       1      -65.199477          -15.145125          414.025162
                      0.011333            0.010312           -4.192903
                      0.542307          456.321216            0.000142
                    456.471345            1.000000

output reactions totals only 'react nodes'

 Totals:        -0.67329E+07        -0.19639E+07        -0.17632E+06

For example 3, I get the general cylinder stresses, 1 of 6 T stresses, and the reaction nodes. I cannot get the K quantities and 5 of 6 T stresses. What am I doing wrong?

ex3

Thank you! Rudy  

rhdodds commented 4 years ago

Hi Rudy,

Thanks for the info.

I'll start looking at this ...

Would you please run the verification suites on your setup ?

Please get newest version from www.warp3d.net. This version uses Python 3 to drive execution of the verification suites in .../verification/run....py This change was made because most users never install Cygwin (so they have no Bash shell). I installed Python 3 into Cygwin a few weeks ago. The run..py codes execute ok.

Thanks,

Bob

rudyverderber commented 4 years ago

Hi Bob,

I ran the run_tests and run_J_tests verification suites on 18.2.0 on Cygwin. The check values are correct to 6 or 7 places. ( I thought one test didn’t run due to MPI, but I couldn’t find it.)

I downloaded version 18.2.1.

  1. It is not quite clear to me if “Windows” is DOS style or Cygwin. I guess I got Cygwin to work, so I kept with it. Do you recommend DOS style or Cygwin?

  2. Run_windows/warp3d.exe simply returns in 18.2.1 on DOS, while it works on 18.2.0.

  3. The verifications scripts didn’t work the first time. I’ll let you know the results tomorrow.

Thanks

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Saturday, July 25, 2020 3:23 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

Thanks for the info.

I'll start looking at this ...

Would you please run the verification suites on your setup ?

Please get newest version from www.warp3d.nethttp://www.warp3d.net. This version uses Python 3 to drive execution of the verification suites in .../verification/run....py This change was made because most users never install Cygwin (so they have no Bash shell). I installed Python 3 into Cygwin a few weeks ago. The run..py codes execute ok.

Thanks,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-663891580, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVDCCCE7MPU4WGS4NA3R5MWLXANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Rudy,

====== On Jul 25, 2020, at 8:12 PM, rudyverderber notifications@github.com wrote:

Hi Bob,

I ran the run_tests and run_J_tests verification suites on 18.2.0 on Cygwin. The check values are correct to 6 or 7 places. ( I thought one test didn’t run due to MPI, but I couldn’t find it.)

I downloaded version 18.2.1.

  1. It is not quite clear to me if “Windows” is DOS style or Cygwin. I guess I got Cygwin to work, so I kept with it. Do you recommend DOS style or Cygwin?

  2. Run_windows/warp3d.exe simply returns in 18.2.1 on DOS, while it works on 18.2.0.

=> There is one Windows .exe as you have seen. Can be run under DOS or Cygwin environment. I use mostly Cygwin since development work is done on Linux and macOS.

Prior to this release, the verification problems required Cygwin + Bash + Perl to run. Many Windows users did not want to install Cygwin.

I rewrote the “driver” system to use only Python (3) last month. Windows users w/o Cygwin can readily install Python 3 right from the Python web site. Run the verification suites in a DOS command shell.

I installed Python3 from the Cygwin site and run the same run..py codes under the Bash shell.

=> Did you see the Quickstart Windows document ?

Bob

rudyverderber commented 4 years ago

Hi Bob,

I’ll stick with Cygwin. Thanks.

I reread the quickstart doc. I forgot to change the .dll name, and that got the executable to run. I also tried the OMP and MKL NUM_threads variables. I don’t think I need it without a cluster. Is that correct?

I have run the run_tests and run_J_tests verification scripts using version 18.1.2. Like 18.2.0, the answers are as expected, except one problem didn’t match as shown below.

I reran the chapter 1 example 4 problem in 18.2.1. Similar to 18.2.0, the output at the end in 18.2.1 is different from the output file included in the directory.

Thanks,

Rudy

... Check results: test72_out

... output file opened ...

... comparison value: 853

... value from output file: 853

... comparison value: 21

... value from output file: 21

... comparison value: 821

... value from output file: 821

... comparison value: 1

... value from output file: list: **** difference in solution

... comparison value: 821

... value from output file: list: **** difference in solution

... comparison value: 2053

... value from output file: list: **** difference in solution

... comparison value: 51

... value from output file: list: **** difference in solution

... comparison value: 1

... value from output file: list: **** difference in solution

... done

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Saturday, July 25, 2020 9:16 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Rudy,

====== On Jul 25, 2020, at 8:12 PM, rudyverderber notifications@github.commailto:notifications@github.com wrote:

Hi Bob,

I ran the run_tests and run_J_tests verification suites on 18.2.0 on Cygwin. The check values are correct to 6 or 7 places. ( I thought one test didn’t run due to MPI, but I couldn’t find it.)

I downloaded version 18.2.1.

  1. It is not quite clear to me if “Windows” is DOS style or Cygwin. I guess I got Cygwin to work, so I kept with it. Do you recommend DOS style or Cygwin?
  2. Run_windows/warp3d.exe simply returns in 18.2.1 on DOS, while it works on 18.2.0.

=> There is one Windows .exe as you have seen. Can be run under DOS or Cygwin environment. I use mostly Cygwin since development work is done on Linux and macOS.

Prior to this release, the verification problems required Cygwin + Bash + Perl to run. Many Windows users did not want to install Cygwin.

I rewrote the “driver” system to use only Python (3) last month. Windows users w/o Cygwin can readily install Python 3 right from the Python web site. Run the verification suites in a DOS command shell.

I installed Python3 from the Cygwin site and run the same run..py codes under the Bash shell.

=> Did you see the Quickstart Windows document ?

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-663923467, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVGQPKXGNMELA3Q2UNTR5N7VJANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

A set of fixes in directory verification/test72 apparently got omitted.

Please get them from GitHub source this site or: https://www.dropbox.com/s/ule9thtpk6awepc/test72.zip?dl=0

Bob

rudyverderber commented 4 years ago

Hi Bob,

I downloaded test72 link from the link. (It did not contain check_72.perl) The problem was not resolved. I checked the run output. It is correct. The problem is in check_72.perl. Following is the fix in 5 locations.

Was: $partno = 7 ^ “list:”

Should be: $partno = 8; ^ integer of interest

Regards,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Sunday, July 26, 2020 9:11 AM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

A set of fixes in directory verification/test72 apparently got omitted.

Please get them from GitHub source this site or: https://www.dropbox.com/s/ule9thtpk6awepc/test72.zip?dl=0

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-663986334, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVGJWOTB5S34HD4JLXTR5QTRXANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

  1. By default, WARP3D runs Windows jobs in shared-memory parallel using the available number of threads on the processor. For a typical I7, this will be 4 "real" threads = 4 "physical cores" + 4 "hyperthreads". I normally run WARP3D jobs with the number of threads set = # physical cores -1 to leave one core for the (hundreds) of Windows OS processes.

  2. Please check your WARP3D distribution. In the verification directory (and sub directories), the only .perl files should be in directories hybrid_*** for checking MPI runs on Linux. All other .perl files were removed at 18.2.1.

Working on the examples 3 and 4 in chpt 1 now.

Bob

rudyverderber commented 4 years ago

Hi Bob,

(see below)

Regards,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Sunday, July 26, 2020 1:33 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

  1. By default, WARP3D runs Windows jobs in shared-memory parallel using the available number of threads on the processor. For a typical I7, this will be 4 "real" threads = 4 "physical cores" + 4 "hyperthreads". I normally run WARP3D jobs with the number of threads set = # physical cores -1 to leave one core for the (hundreds) of Windows OS processes.

(I have an I7-8700 6 cores and 12 logical cores. When I run I specify 4 (prior to redirected input) in the command line.)

  1. Please check your WARP3D distribution. In the verification directory (and sub directories), the only .perl files should be in directories hybrid_*** for checking MPI runs on Linux. All other .perl files were removed at 18.2.1.

(The scripts did not run on Cygwin. So I copied all missing files from 18.2.0 into 18.2.1. Ooops. I started over with a clean directory. Then per pptx I ran the regular and J verifications in Windows (DOS). The results are pretty close. K_2 was not accurate (1% error) as shown below. Would you expect this script to run in Cygwin? If yes, I copied my error messages.)

Working on the examples 3 and 4 in chpt 1 now.

(I am interested in mastering these approaches.)

Bob

... Checking results: testK_2_out

.... comparison value: 0.3565E+00

.... value from output: 0.3595E+00 **** difference in solution

$ python3 run_tests.py

Output from running python script on Cygwin….

Running with Python version: 3.6

Number of threads to use: 4

Traceback (most recent call last):

File "run_tests.py", line 725, in

if __name__ == "__main__": main()

File "run_tests.py", line 652, in main

initialize()

File "run_tests.py", line 512, in initialize

'set MKL_NUM_THREADS='+str_threads

UnboundLocalError: local variable 'continuation' referenced before assignment

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-664017838, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVCK42L7OZU5QX6D7QDR5RSGDANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

  1. testK_2 continues to be a challenge. The solutions vary about 1% between runs and across platforms. I have looked for the bug off and on for about a year. Shows up with by Intel fortran and gfortran. I've used Valgrind and memcheck w/o success in locating the problem.

  2. I just ran (again) the run_tests.py and run_J_tests.py on W10, cygwin. Ran fine. The repository has the same versions I'm running. I note that your Cygwin Python is 3.6. My Cygwin Python is 3.8.3.
    Would you please (1) get the repository versions of the two run...py codes, (2) update your Cygwin Python to current version (3.8.3) ?

The issues you found for manual Chpt 1 example 3. I should provide 3 separate input files. (1) for internal pressure loading, (2) for crack face pressure loading, (3) for just thermal loading. Then also 3 corresponding output files for comparison. The computed results are fine and agree with those in the Tables in Chpt 1. Will get that straightened out and update example_3 files.

Bob

rudyverderber commented 4 years ago

Hi Bob,

(see below)

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Sunday, July 26, 2020 9:58 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

  1. testK_2 continues to be a challenge. The solutions vary about 1% between runs and across platforms. I have looked for the bug off and on for about a year. Shows up with by Intel fortran and gfortran. I've used Valgrind and memcheck w/o success in locating the problem.
  2. I just ran (again) the run_tests.py and run_J_tests.py on W10, cygwin. Ran fine. The repository has the same versions I'm running. I note that your Cygwin Python is 3.6. My Cygwin Python is 3.8.3. Would you please (1) get the repository versions of the two run...py codes, (2) update your Cygwin Python to current version (3.8.3) ?

(Using python3.8.3 (updated today) on my machine produces the same error messages. On my end, I am fine running the windows DOS command shell.)

The issues you found for manual Chpt 1 example 3. I should provide 3 separate input files. (1) for internal pressure loading, (2) for crack face pressure loading, (3) for just thermal loading. Then also 3 corresponding output files for comparison. The computed results are fine and agree with those in the Tables in Chpt 1. Will get that straightened out and update example_3 files. (I gathered that the 3 loads had to be commented. For the crack face pressure, I suspected “ crack face tractions ty 15.2,” also needs to be uncommented. User changes to the input file may be a source of the problem.

I am a paraview user. I assume the internal pressure (ch3 ex 3&4) is on the inside surfaces (minus the flaw) and the crack face pressure is on the inside of the flaw. I oddly suspect that the face doesn’t include the tip. I am somewhat tempted to write the bc surfaces and points to an exodus (vtk) file. For preprocessing, I noticed that quest provided a commercial product. Is there a recommended open source preprocessing package?)

Bob

$ python3.8 -V

Python 3.8.3

$ python3.8 run_tests.py

Running with Python version: 3.8

Number of threads to use: 4

Traceback (most recent call last):

File "run_tests.py", line 725, in

if __name__ == "__main__": main()

File "run_tests.py", line 652, in main

initialize()

File "run_tests.py", line 511, in initialize

threads = 'set OMP_NUM_THREADS='+str_threads + continuation + \

UnboundLocalError: local variable 'continuation' referenced before assignment

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-664079118, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVAJZI3TN45EMLHHXK3R5TNKNANCNFSM4PHSBNGQ.

rudyverderber commented 4 years ago

In addition to comments below, I found the source of the script issue.

Platform.system does not return programmed option.

… os_name = platform.system() print (" os_name 1 ", os_name, "\n") windows = os_name == 'Windows' linux = os_name == 'Linux' osx = os_name == 'Darwin' print (" os_name 2 ", os_name, "\n") if "WARP3D_HOME" in os.environ:

$ python3.8 run_tests.py

Running with Python version: 3.8 os_name 1 CYGWIN_NT-10.0-18363 os_name 2 CYGWIN_NT-10.0-18363 Number of threads to use:

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Sunday, July 26, 2020 9:58 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

  1. testK_2 continues to be a challenge. The solutions vary about 1% between runs and across platforms. I have looked for the bug off and on for about a year. Shows up with by Intel fortran and gfortran. I've used Valgrind and memcheck w/o success in locating the problem.
  2. I just ran (again) the run_tests.py and run_J_tests.py on W10, cygwin. Ran fine. The repository has the same versions I'm running. I note that your Cygwin Python is 3.6. My Cygwin Python is 3.8.3. Would you please (1) get the repository versions of the two run...py codes, (2) update your Cygwin Python to current version (3.8.3) ?

The issues you found for manual Chpt 1 example 3. I should provide 3 separate input files. (1) for internal pressure loading, (2) for crack face pressure loading, (3) for just thermal loading. Then also 3 corresponding output files for comparison. The computed results are fine and agree with those in the Tables in Chpt 1. Will get that straightened out and update example_3 files.

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-664079118, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVAJZI3TN45EMLHHXK3R5TNKNANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

  1. The code run_tests.py in verification directory on GitHub does recognize Cygwin. That code has stms: # ver = sys.version_info print("\n\n>>> Running with Python version: " \

    • str(ver.major)+'.'+str(ver.minor)) if ver.major == 3 and ver.minor <= 4: print('\n\n >>>>>>>>>>>>> Please upgrade to Python 3.5 or newer') print(' Execution terminated\n\n') exit(0) # os_name = platform.system() windows = os_name == 'Windows' linux = os_name == 'Linux' osx = os_name == 'Darwin' cygwin = False if 'CYGWIN' in os_name: cygwin = True <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< .... ....

    if cygwin : continuation = ';' print(">>> Platform: Cygwin (Windows). Only Intel Fortran version supported\n" ) warp_name = '$WARP3D_HOME"/run_windows/warp3d.exe" ' #

  2. Example 3 in Chpt 1. Crack face loading. You are correct. I don't believe the elements incident on the front have the traction applied. However, that omission will not impact the solution more that a tiny fraction of a percent given the vanishing small area of those elements.

  3. Pre-processors. Post-processing of WARP3D results using the open-source ParaView code is our default go to solution and has been for 5+ years.

    For mesh generation, there does not exist (to my knowledge) an open-source code of the same extensive capabilities, runs on all 3 platforms, ....

    We use Patran and many other users adopt FEMAP. Both are commercial and have very wide use. FEMAP outputs Patran neutral files which the patwarp program in our distribution processes. These codes build complete models: geometry, meshing, loadings and boundary conditions of all types. For specialized crack models, we use FEACrack which offers WARP3D as one solution option (we have no financial relationship with the FEACrack folks).

    The open source code GMSH may provide some users with an adequate solution. We have a beta Python program which converts the Abaqus style *.inp file output by GMSH into a WARP3D input file. The code handles tet4, tet10, hex8 and hex20 elements. We're developing some experience with GMSH but are not sure yet that it will impose many types of loading and boundary conditions. But at least the nodal coordinates, element types, and connectivities are translated. This may be sufficient for many users.

Bob

rudyverderber commented 4 years ago

Hi Bob,

I downloaded the verification script files from GitHub. They run correctly on Cygwin (py3.6) as you indicated.

I am mostly interested in matching the examples 3 and 4 in chapter 1. (What am I doing wrong?)

Thanks

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Monday, July 27, 2020 11:28 AM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

  1. The code run_tests.py in verification directory on GitHub does recognize Cygwin. That code has stms:

ver = sys.version_info print("\n\n>>> Running with Python version: "

os_name = platform.system() windows = os_name == 'Windows' linux = os_name == 'Linux' osx = os_name == 'Darwin' cygwin = False if 'CYGWIN' in os_name: cygwin = True <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< .... ....

if cygwin : continuation = ';' print(">>> Platform: Cygwin (Windows). Only Intel Fortran version supported\n" ) warp_name = '$WARP3D_HOME"/run_windows/warp3d.exe" '

  1. Example 3 in Chpt 1. Crack face loading. You are correct. I don't believe the elements incident on the front have the traction applied. However, that omission will not impact the solution more that a tiny fraction of a percent given the vanishing small area of those elements.
  2. Pre-processors. Post-processing of WARP3D results using the open-source ParaView code is our default go to solution and has been for 5+ years.

For mesh generation, there does not exist (to my knowledge) an open-source code of the same extensive capabilities, runs on all 3 platforms, ....

We use Patran and many other users adopt FEMAP. Both are commercial and have very wide use. FEMAP outputs Patran neutral files which the patwarp program in our distribution processes. These codes build complete models: geometry, meshing, loadings and boundary conditions of all types. For specialized crack models, we use FEACrack which offers WARP3D as one solution option (we have no financial relationship with the FEACrack folks).

The open source code GMSH may provide some users with an adequate solution. We have a beta Python program which converts the Abaqus style *.inp file output by GMSH into a WARP3D input file. The code handles tet4, tet10, hex8 and hex20 elements. We're developing some experience with GMSH but are not sure yet that it will impose many types of loading and boundary conditions. But at least the nodal coordinates, element types, and connectivities are translated. This may be sufficient for many users.

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-664465694, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVCALMEWC4CARSRBYFLR5WMLHANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

Update: manual_examples_chpt1/example_3_linear

This directory has been substantially updated. Please download this entire subdirectory. The RPV has 3 loadings: (1) internal pressure w/o crack face, (2) crack face pressure, (3) quadratic temperature field over wall thickness.

There are now 3 input files to solve each loading separately: warp3d_internal_pressure.inp, warp3d_crack_face_pressure.inp, warp3d_temperarure_gradient.inp.

The domain-integration integral input is now also in 3 separate files: domain_define_internal_pressure.inp, domain_define_face_pressure.inp, domain_define_temperature_gradient.inp

Output files of results: woutput_internal_pressure, woutput_crack_face_pressure, woutput_temperature_gradient

The J, K, T-stress results for (1) internal pressure loading, (2) crack face pressure loading agree with those included in Manual Section 1.3 tables.

The J, K, T values for temperature gradient do not agree. After a day of investigation, to include running WARP3D versions back for 5 years, it seems the Section 1.3 values listed for the temperature gradient were entered incorrectly. Code from years ago gives same J-values as current version.

I'm updating Section 1.3 for this issue and to cleanup some text/tables than can be better.

Best,

Bob

rudyverderber commented 4 years ago

Hi Bob,

I downloaded the new input decks from GitHub. I ran 1 and 2. These models match, for the variables checked, the original models.

For 1) internal pressure only. From woutput_internal_pressure line 545

average: minimum: maximum: -0.5293E+02 -0.5299E+02 -0.5286E+02 0.1264E+03 0.1264E+03 0.1264E+03 …. T11 = -52.9 T33 = 126.4

For 2 face crack pressure only, From woutput_crack_face_pressure

average:      minimum:      maximum:

0.8515E+01 0.8510E+01 0.8521E+01 0.2425E+01 0.2424E+01 0.2427E+01

T11=8.52 T33=2.43

From manual table 1.3.2,

-stress values: 15.2 MPa face pressure from I, displacement 8.5, -0.9 MPa 15.2 MPa internal pressure from I, displacement -53, -43 MPa

T† from displacement -80 to -90 MPa

The first values match T11 for both cases.

The second value does not match T33 in either case. (They seem close.)

What am I missing?

Per Rudy 7/26 (…I assume the internal pressure (ch3 ex 3&4) is on the inside surfaces (minus the flaw) and the crack face pressure is on the inside of the flaw. . I oddly suspect that the face doesn’t include the tip. ...?)

Per Bob 7/27

  1. Example 3 in Chpt 1. Crack face loading. You are correct. I don't believe the elements incident on the front have the traction applied. However, that omission will not impact the solution more that a tiny fraction of a percent given the vanishing small area of those elements.

    • Using the nodal radial location

The full area is 139468 sq units

The applied area is 139145 sq units

The difference is 0.23%

 *   I noticed the crack face domain command.  Manual section 4.5.7.1

domain theta_0 … crack face tractions ty 15.2

I gathered it corrects the entire integrals domain for axial load.

The pressure is applied to 1/3 the domain. The crack shape has a ball end.

  1. If the correction is applied uniformly, then the region without the load would be incorrect. Is that correct? If yes, then is that a reason why the T33 values don’t match?
  2. In order to do pressure on curved surfaced, would you need a command like, “crack face pressure {p}?

Thanks,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Tuesday, July 28, 2020 9:41 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

Update: manual_examples_chpt1/example_3_linear

This directory has been substantially updated. Please download this entire subdirectory. The RPV has 3 loadings: (1) internal pressure w/o crack face, (2) crack face pressure, (3) quadratic temperature field over wall thickness.

There are now 3 input files to solve each loading separately: warp3d_internal_pressure.inp, warp3d_crack_face_pressure.inp, warp3d_temperarure_gradient.inp.

The domain-integration integral input is now also in 3 separate files: domain_define_internal_pressure.inp, domain_define_face_pressure.inp, domain_define_temperature_gradient.inp

Output files of results: woutput_internal_pressure, woutput_crack_face_pressure, woutput_temperature_gradient

The J, K, T-stress results for (1) internal pressure loading, (2) crack face pressure loading agree with those included in Manual Section 1.3 tables.

The J, K, T values for temperature gradient do not agree. After a day of investigation, to include running WARP3D versions back for 5 years, it seems the Section 1.3 values listed for the temperature gradient were entered incorrectly. Code from years ago gives same J-values as current version.

I'm updating Section 1.3 for this issue and to cleanup some text/tables than can be better.

Best,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-665381103, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVEPH7VCBW5QV7UCCTDR5542VANCNFSM4PHSBNGQ.

rudyverderber commented 4 years ago

Hi Bob,

In addition to discussion below, I can’t match report KI values. Am I looking at the wrong value?

From woutput_internal_pressure line 511

average:  0.4254E+03   minimum:  0.4254E+03   maximum: 0.4254E+03

0.4254E+03 0.4254E+03 0.4254E+03

KI =425.4 average: 0.9580E+02 minimum: 0.9580E+02 maximum: 0.9580E+02 0.9580E+02 0.9580E+02 0.9580E+02

KI = 95.8

From the manual table 1.3.2 KI values: 15.2 MPa face pressure from J, I‡, displacement 3.02, 3.03, 3.14 MPapm 15.2 MPa internal pressure from J, I, displacement 13.5, 13.5, 13.6 MPapm From woutput_crack_face_pressure line 523

In stead of 3.02 and 13.5, the values are 95.8 and 425.4.

Regards

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Tuesday, July 28, 2020 9:41 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

Update: manual_examples_chpt1/example_3_linear

This directory has been substantially updated. Please download this entire subdirectory. The RPV has 3 loadings: (1) internal pressure w/o crack face, (2) crack face pressure, (3) quadratic temperature field over wall thickness.

There are now 3 input files to solve each loading separately: warp3d_internal_pressure.inp, warp3d_crack_face_pressure.inp, warp3d_temperarure_gradient.inp.

The domain-integration integral input is now also in 3 separate files: domain_define_internal_pressure.inp, domain_define_face_pressure.inp, domain_define_temperature_gradient.inp

Output files of results: woutput_internal_pressure, woutput_crack_face_pressure, woutput_temperature_gradient

The J, K, T-stress results for (1) internal pressure loading, (2) crack face pressure loading agree with those included in Manual Section 1.3 tables.

The J, K, T values for temperature gradient do not agree. After a day of investigation, to include running WARP3D versions back for 5 years, it seems the Section 1.3 values listed for the temperature gradient were entered incorrectly. Code from years ago gives same J-values as current version.

I'm updating Section 1.3 for this issue and to cleanup some text/tables than can be better.

Best,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-665381103, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVEPH7VCBW5QV7UCCTDR5542VANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

  1. Glad you got the new input files for Example 3 and have run them successfully.

  2. The output files have T33 values computed. But, no T33 values are included in Table 1.3.2. Only T11 values which are the so-called T-stress described in fracture mechanics papers. Computed using interaction integral and displacements.

  3. Don't forget also that the output file results have units J: kJ/m**2 (N/mm) and to get K in MPa sqrt(m), divide the output K values by sqrt(1000) since length units are mm in input.

    See pg. 1.2-20 of Manual, with paragraph starting: Physical units employed ....

    This is for your second email today re K values of 425.4 and 95.8. Divide each by sqrt(1000) to get 3.02 and 13.5 MPa sqrt(m).

  4. In the domain definition to compute Interaction Integral (II) values, not J values, we implemented a capability to define uniform pressure over the full crack face. This increases significantly the K and T values from the II since an analytic
    integration is used rather than working from equivalent nodal loads of the crack trace pressures. This is a "special case" since the pressure is uniform. Some folks have wanted additional, analytic forms of pressure to facilitate the computation of weight function values (i.e. quadratic, cubic, ... pressures).

    The domain integral to compute J for the face pressure uses an approximate integration based on the equivalent nodal forces from the face pressure -- which can vary how everything the user wants. The accuracy is ok and gets better with a more refined near front mesh.

Best,

Bob

rudyverderber commented 4 years ago

Bob,

Using the conversions, I now show cases 1 and 2 correct. And case 3 has an incorrect KI. (You commented that J is correct.)

The mismatch for the plastic strain in example 4 is still an open question.

The Quest presentation “FEACrack_Validation.pdf” is interesting. I tried to find the input decks with the many provided samples on the WARP3D distribution and the Quest web site. Are those inputs available?

Thank You,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Wednesday, July 29, 2020 9:40 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

  1. Glad you got the new input files for Example 3 and have run them successfully.
  2. The output files have T33 values computed. But, no T33 values are included in Table 1.3.2. Only T11 values which are the so-called T-stress described in fracture mechanics papers. Computed using interaction integral and displacements.
  3. Don't forget also that the output file results have units J: kJ/m**2 (N/mm) and to get K in MPa sqrt(m), divide the output K values by sqrt(1000) since length units are mm in input.

See pg. 1.2-20 of Manual, with paragraph starting: Physical units employed ....

This is for your second email today re K values of 425.4 and 95.8. Divide each by sqrt(1000) to get 3.02 and 13.5 MPa sqrt(m).

  1. In the domain definition to compute Interaction Integral (II) values, not J values, we implemented a capability to define uniform pressure over the full crack face. This increases significantly the K and T values from the II since an analytic integration is used rather than working from equivalent nodal loads of the crack trace pressures. This is a "special case" since the pressure is uniform. Some folks have wanted additional, analytic forms of pressure to facilitate the computation of weight function values (i.e. quadratic, cubic, ... pressures).

The domain integral to compute J for the face pressure uses an approximate integration based on the equivalent nodal forces from the face pressure -- which can vary how everything the user wants. The accuracy is ok and gets better with a more refined near front mesh.

Best,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-666027783, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVGNZBJRB6YCVCLEGT3R6DFP3ANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

Example 3. Linear analyses. Temperature loading.

The J-value of 5.25 kJ/m**2 is output on the \theta_g=0 and 3^o planes for domains 15-20. Complete agreement at the 2 crack front locations and full path independence (you can check by computing domains 2-20).

The KI (plane-strain) value output is computed from this J-value. Printed value converted to MPa sqrt(m) is 1055/sqrt(1000) = 33.4 MPa sqrt(m). I'm right now correcting Section 1.2.3 in Manual and will look at the nonlinear problem next week.

Best,

Bob

rhdodds commented 4 years ago

Hi Rudy,

Re: FEACrack verification document (.pdf)

I do not have the input files for the models described in this document. You may be able to secure one or more of them from Dr. Greg Thorwald at Quest Integrity Group (boulder, CO). Greg developed all the models in FEACrack and compared the computed fracture mechanics parameters from several FE codes, including WARP3D.

Best,

Bob

rhdodds commented 4 years ago

Hi Rudy,

Updates....

  1. Updated manual pages for chapter 1, example 3 linear RPV analyses: https://www.dropbox.com/s/844nvao8d77e1vk/text.pdf?dl=0

2 See updated input/output files for the temperature only analyses. I had a left over clad CTE = 0 from a study on CTE mismatch effects.

Best,

Bob

rudyverderber commented 4 years ago

Hi Bob,

I am using the output file to create VTK legacy files. It is a preprocessor viewer. (I could not find a fixed format file that can echo with all input data. Did I miss something?)

For your chapter 3 file, “ warp3d_internal_pressure.inp.” added the following output requests.

…. *input "domain_define_internal_pressure.inp" output eformat displacements 'clad' output eformat displacements 'base' output eformat displacements '3-degrees' output eformat displacements 'inside_bottom' output eformat displacements 'ring_4_theta=0' output eformat displacements 'reaction_nodes' output eformat displacements 'nodes_to_compute_T' ! Here is the problem. The "printed” file prints all nodes ONLY for “nodes_to_compute_T.”

    output eformat displacements 'nodes_to_compute_T'^M

^L^M ^M ^M structure vessel page no. 1^M step no. 1 loading test ^M ^M nodal displacements ^M ^M ^M ^M node u v w ^M 1 0.10792E+01 0.40637E+00 0.00000E+00^M 2 0.10826E+01 0.39629E+00 0.00000E+00^M

The first node should be 3609.

I tried 3 things.

  1. Reduced the length of name from 10.
  2. Moved the request to the top
  3. Removed the clad and base commands as they are really element lists

These 3 changes did not provide the correct list. Did I do something wrong?

Regards,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Saturday, August 1, 2020 10:34 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

Updates....

  1. Updated manual pages for chapter 1, example 3 linear RPV analyses: https://www.dropbox.com/s/844nvao8d77e1vk/text.pdf?dl=0

2 See updated input/output files for the temperature only analyses. I had a left over clad CTE = 0 from a study on CTE mismatch effects.

Best,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-667615550, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVD4ZYIEB4PVYGLOI4LR6TGFDANCNFSM4PHSBNGQ.

rudyverderber commented 4 years ago

Hello,

This set of commands gives the correct output. I added “nodes” or “elements” and switched the order.

output eformat displacements nodes '3-degrees' output eformat displacements nodes 'inside_bottom' output eformat displacements nodes 'ring_4_theta=0' output eformat displacements nodes 'reaction_nodes' output eformat displacements nodes 'nodes_to_compute_T' output eformat displacements elements 'clad' output eformat displacements elements 'base'

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Rudy Verderbermailto:rudyverderber@outlook.com Sent: Wednesday, August 5, 2020 6:31 AM To: rhdodds/warp3dmailto:reply@reply.github.com; rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: Authormailto:author@noreply.github.com Subject: warp3d_internal_pressure.inp incorrect output

Hi Bob,

I am using the output file to create VTK legacy files. It is a preprocessor viewer. (I could not find a fixed format file that can echo with all input data. Did I miss something?)

For your chapter 3 file, “ warp3d_internal_pressure.inp.” added the following output requests.

…. *input "domain_define_internal_pressure.inp" output eformat displacements 'clad' output eformat displacements 'base' output eformat displacements '3-degrees' output eformat displacements 'inside_bottom' output eformat displacements 'ring_4_theta=0' output eformat displacements 'reaction_nodes' output eformat displacements 'nodes_to_compute_T' ! Here is the problem. The "printed” file prints all nodes ONLY for “nodes_to_compute_T.”

    output eformat displacements 'nodes_to_compute_T'^M

^L^M ^M ^M structure vessel page no. 1^M step no. 1 loading test ^M ^M nodal displacements ^M ^M ^M ^M node u v w ^M 1 0.10792E+01 0.40637E+00 0.00000E+00^M 2 0.10826E+01 0.39629E+00 0.00000E+00^M

The first node should be 3609.

I tried 3 things.

  1. Reduced the length of name from 10.
  2. Moved the request to the top
  3. Removed the clad and base commands as they are really element lists

These 3 changes did not provide the correct list. Did I do something wrong?

Regards,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Saturday, August 1, 2020 10:34 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

Updates....

  1. Updated manual pages for chapter 1, example 3 linear RPV analyses: https://www.dropbox.com/s/844nvao8d77e1vk/text.pdf?dl=0

2 See updated input/output files for the temperature only analyses. I had a left over clad CTE = 0 from a study on CTE mismatch effects.

Best,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-667615550, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVD4ZYIEB4PVYGLOI4LR6TGFDANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

Suggestions for getting model and results in a simple to read format.

Model:

Manual Section 2.12.6 on Flat Model Description Files. Writes an ASCII or stream, fixed format file for the model. Very simple, easy to read, fast in compiled code and Python, tastes great-less filling, ....

Results:

Manual Section 2.12.4. Flat Text & Stream (Binary) Result Files.

Fixed format files (ASCII, stream) designed for simple reading into spreadsheets, by Python, fortran, C++, ...

These files contain all nodes or elements.

I thought you were using ParaView ? Our code warp3d2exii works quite well to create an Exodus II (*.exo) file for the model+results from our Flat Model Description and Flat Results Files. The .exo should also be readable Visit.

Bob

rudyverderber commented 4 years ago

Thank you Bob,

The model.text file contains nodes and elements. The element card only has the element type.

… 0.2128038940000E+03 0.4505696050000E+04 0.1115257930000E+02 8 1 2794 2795 2796 2894 5572 5569 5570 5571 0 … spots for nodes ^ # nodes on elem ^ counter for element type (l3disop)?

If there was a material identifier, then it could be translated into the exo file.

Using the input file and reading lists from the printed output file, I have enough to view the preprocess models as shown below. The image shows mesh nearest the crack. Red elements are clad, purple nodes are in the …compute_T list.

Regards,

Rudy [cid:image003.png@01D66B24.40CBA190]

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Wednesday, August 5, 2020 9:13 AM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

Suggestions for getting model and results in a simple to read format.

Model:

Manual Section 2.12.6 on Flat Model Description Files. Writes an ASCII or stream, fixed format file for the model. Very simple, easy to read, fast in compiled code and Python, tastes great-less filling, ....

Results:

Manual Section 2.12.4. Flat Text & Stream (Binary) Result Files.

Fixed format files (ASCII, stream) designed for simple reading into spreadsheets, by Python, fortran, C++, ...

These files contain all nodes or elements.

I thought you were using ParaView ? Our code warp3d2exii works quite well to create an Exodus II (*.exo) file for the model+results from our Flat Model Description and Flat Results Files. The .exo should also be readable Visit.

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-669185571, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVARO53WGRRPTN742K3R7FLHZANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

  1. Revised/updated manual Section 1.2 including both linear and nonlinear analyses of the simplified RPV model.

      https://www.dropbox.com/s/21r3xpvwd8femsu/Section_1.2.pdf?dl=0
  2. Revised, updated inout, output supporting files are here (GitHub)

  3. "Blocks" in Exodus II files. It seems that (1) all elements in a block must be the same type and (2) elements may be defined in only 1 block. We decided to assign elements to blocks using (1). If the same material is used in multiple element types, how would that be handled for block assignments? Maybe we misunderstand the requirements for block assignments.

Best,

Bob

rudyverderber commented 4 years ago

Hi Bob,

I appreciate and learned form the added information for the linear and nonlinear chapter 1 problems. Thanks.

1-3) I downloaded the new models and manual description. (Using Acrobat reader the page with figure 1.2.15, doesn’t print and Reader says there is an error. MS Edge correctly shows the image.)

  1. I replicated the 4 KI values in Figure 1.2.15.
  2. The plastic strain shown in Fig 1.2.15 is similar to all models excluding CLAD_cte_0
  3. The CLAD_cte_0 case looks like Fig 1.2.15 except the peak strain is about ½ the other cases.
  4. No model has the clad yielding as shown in Fig 1.2.16. How do you get Fig 1.2.16?

4) Paraview database

I have used programs that use exodus II (Sandia’s Adagio & Presto). I have written legacy VTK database files for Paraview. Adagio and Presto Exodus database contains the material ID in “vtkCompositeIndex.” For nodes and elements, “ID” are jumbled. (probably related to blocking) Either or both PedigreeID is the value in the input deck. For the PWR problem, you have “vtkCompositeIndex.” For all elements, it is 2. (1/2 correct ?)

When I write VTK files, I simply add a node or element result array. NodeId, MatId, ElemId, … and I have added preprocessor arrays ListId, (constraintname), (loadname), (domainname)…

I reviewed the Exodus II manual, https://gsjaardema.github.io/seacas/exodusII-new.pdf

On page 89, section 5.3.29 Write Object Property. Creating the material may be in this section although I’m not sure. If you know where the array is for vtkCompositeIndex, you can put a matID in this location. Otherwise, I don’t have any more info now.

(most codes/software. Each element would have a property ID. Then the ID would point to many chacteristics. This is more efficient space-wise. I have not found this in legacy VTK.)

5) Defining Reference temperature

I think all the chap 1 examples have constant cte so a reference temperature is not specified. If I varied secant cte then I would want to specify reference temperature. I couldn’t find it. Is it in WARP3D? If yes, where is it?

Regards,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Saturday, August 8, 2020 12:08 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

  1. Revised/updated manual Section 1.2 including both linear and nonlinear analyses of the simplified RPV model.
  1. https://www.dropbox.com/s/21r3xpvwd8femsu/Section_1.2.pdf?dl=0

    1. Revised, updated inout, output supporting files are here (GitHub)
    2. "Blocks" in Exodus II files. It seems that (1) all elements in a block must be the same type and (2) elements may be defined in only 1 block. We decided to assign elements to blocks using (1). If the same material is used in multiple element types, how would that be handled for block assignments? Maybe we misunderstand the requirements for block assignments.

Best,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-670945640, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVEDWDH3JW7N52ANPSDR7V2AHANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

  1. Fig. 1.2.16. I made that with Patran but can also use ParaView (just checked again).

    output model flat patran convention text file "model" output flat element stresses

    The "patran convention" just sets the element types in model file to those used by Patran.

    In Paraview, the results label to fringe plot is: C1_mat_val. This the accumulated, equivalent plastic strain. For the "bilinear" plasticity model, see pg. 3.5-3 and 3.5-4.

    There are 3 "slots" for material model dependent values in the usual stress output. C1, C2, C3 mat_val. This is left over from before the output of material states variables was implemented. The writeup for each material model describes the contents of C1_mat_val, C2_mat_val, C3_mat_val.

  2. We have an issue with ParaView since they changed rendering engines some versions back. I'm now using 5.8.1-RC2 on Linux and macOS. Try getting fringes for this model in the immediate crack front region. You will see very severe imaging artifacts sometimes called "stair casing". I've Googled for hours over the past few months for a solution but have drawn a blank. It must be caused by the huge difference in element sizes for crack type models.

    See: https://discourse.paraview.org/t/removing-staircase-artifacts-in-image-mesh/4494

    Patran doesn't have this issue. I simply set an appropriately small global tolerance value and artifacts are gone.

  3. ParaView database: years ago we opted for the Exodus II format since many of our analyses have 100s to 1000s of load(time) steps of results. And we like to make movies. BUT, we could never understand how to create a VTK Legacy file (just simple text or stream) without having to repeat the model definition before the results for each load(time) step. That requirement seemed unusual to us.

    The VTK legacy format would be much simpler for everyone rather than the Exodus .exo format.

  4. Initial conditions for models. See Section 2.9 Initial Conditions to set initial temperatures, stresses, .... In the RPV models, see these lines in the input files:

! initial conditions temperatures nodes all temperature 288 $ steady-state operation !

Best,

Bob

rudyverderber commented 4 years ago

Hi Bob,

I replotted the plastic strains. As shown in figure 1.2.16, the clad yields in 3 models with nonzero cte for the cladding.

The Patran images appear better than the Paraview images. In addition to stair casing, the backface images are not properly removed. There is a large difference in element size, the aspect ratio is very high(> 4000).

I found some options that improve the images, although Patran seems best. (I do not have access to Patran)

For linear elements, Properties->Miscellaneous->Triangulate does some smoothing, and Filters-Tessellate looks best.

[cid:image002.png@01D66F2C.B2D95500]

For quadratic elements, Properties->Miscellaneous->Nonlinear Subdivision level=4 works really well as shown on the inclined penny model.

[cid:image005.png@01D66F2C.B2D95500]

3) VTK legacy files are easy to use. They are not efficient. Also, I think that legacy VTK format is being replaced with VTK that resembles HTML.

Exodus is best for a finished product because it is space efficient with faster access.

4) For secant thermal coefficient of the expansion, the thermal strain is as follows.

e(thermal) = alpha(T2) * (T2 – Tref) – alpha(T1) (T1 – Tref)

Tref is typically room temperature when the thermal properties are measured. T1 is the initial temperature. The definition of T1 is described in the WARP3D manual on the bottom of page 2.2-6.

When the initial temperature = Tref, then e(thermal) = alpha(T2) (T2 – T1 (=Tref) ) When alpha is constant, then e(thermal) = alpha (T2 -T1 – Tref +Tref) = alpha * (T2 – T1) Otherwise, Tref needs to be defined. It is mostly room temperature in the appropriate units.

I see the initial temperature. What am I missing?

Regards,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Sunday, August 9, 2020 5:11 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

  1. Fig. 1.2.16. I made that with Patran but can also use ParaView (just checked again).
  1. output model flat patran convention text file "model"

  2. output flat element stresses

The "patran convention" just sets the element types in model file to those used by Patran.

In Paraview, the results label to fringe plot is: C1_mat_val. This the accumulated, equivalent plastic strain. For the "bilinear" plasticity model, see pg. 3.5-3 and 3.5-4.

There are 3 "slots" for material model dependent values in the usual stress output. C1, C2, C3 mat_val. This is left over from before the output of material states variables was implemented. The writeup for each material model describes the contents of C1_mat_val, C2_mat_val, C3_mat_val.

  1. We have an issue with ParaView since they changed rendering engines some versions back. I'm now using 5.8.1-RC2 on Linux and macOS. Try getting fringes for this model in the immediate crack front region. You will see very severe imaging artifacts sometimes called "stair casing". I've Googled for hours over the past few months for a solution but have drawn a blank. It must be caused by the huge difference in element sizes for crack type models.

See: https://discourse.paraview.org/t/removing-staircase-artifacts-in-image-mesh/4494

Patran doesn't have this issue. I simply set an appropriately small global tolerance value and artifacts are gone.

  1. ParaView database: years ago we opted for the Exodus II format since many of our analyses have 100s to 1000s of load(time) steps of results. And we like to make movies. BUT, we could never understand how to create a VTK Legacy file (just simple text or stream) without having to repeat the model definition before the results for each load(time) step. That requirement seemed unusual to us.

The VTK legacy format would be much simpler for everyone rather than the Exodus .exo format.

  1. Initial conditions for models. See Section 2.9 Initial Conditions to set initial temperatures, stresses, .... In the RPV models, see these lines in the input files:

! initial conditions temperatures nodes all temperature 288 $ steady-state operation !

Best,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-671101545, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVA3GUOZO3ZX2YYZZQLR74GIDANCNFSM4PHSBNGQ.

rhdodds commented 4 years ago

Hi Rudy,

T_{ref}

I re-read your question/comment about this. I think we take your T_{ref} = 0 implicitly in WARP3D.

My question: does that impact only the scheme to input temperature dependent material properties or does it somehow limit the modeling capability ?

Best,

Bob

rudyverderber commented 4 years ago

Hi Bob,

If you have secant coefficient of thermal expansion as commonly provided in databases, then users need to do the following.

Given: e(thermal) = alpha(T2) * (T2 – Tref) – alpha(T1) (T1 – Tref) Tref=zero

  1. If alpha is constant, then the results are correct. e(thermal)=alpha*(T2-T1)

If alpha is not constant, then E(thermal) = alphaFEA(T2) (T2fea – 0) -alphaFEA(T1)(T1fea-0) = alpha(T2) * (T2 – Tref) – alpha(T1) (T1 – Tref)

  1. If T1fea is set to zero, T1 actually equals Tref (mostlyRT), T2 is dT (T2-T1), and alpha is not constant, then the results are correct by adjusting alphaFEA. e(thermal)=alphaFEA(T2)T2fea = alpha(T2)(T2-Tref)

  2. If T1fea is set to zero, T1 does not equal Tref (mostlyRT), T2 is dT (T2-T1), and alpha is not constant, then the results are correct by adjusting alphaFEA. e(thermal)=alphaFEA(T2)T2fea = alpha(T2)(T2-Tref) – alpha(T1) (T1-Tref)

  3. If T1fea is nonzero, then you have 1 equation with 2 unknowns, alphaFEA at T1 and T2.

The modeling capability is not limited if the modeler is aware of the above formula. When alpha is a function of T, the adjustments of alpha are not obvious. For alpha as a function of T, most users would enter initial temp, new temp, and non-constant table values of alpha(Ti). So, adding Tref is recommended.

Regards,

Rudy

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Robert H Dodds Jrmailto:notifications@github.com Sent: Wednesday, August 12, 2020 8:49 PM To: rhdodds/warp3dmailto:warp3d@noreply.github.com Cc: rudyverderbermailto:rudyverderber@outlook.com; Authormailto:author@noreply.github.com Subject: Re: [rhdodds/warp3d] Chapter 1 examples 3 and 4 on Windows don't match manual (#7)

Hi Rudy,

T_{ref}

I re-read your question/comment about this. I think we take your T_{ref} = 0 implicitly in WARP3D.

My question: does that impact only the scheme to input temperature dependent material properties or does it somehow limit the modeling capability ?

Best,

Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/rhdodds/warp3d/issues/7#issuecomment-673183554, or unsubscribehttps://github.com/notifications/unsubscribe-auth/API4SVALND3TGUJGLBIJE53SAM2BNANCNFSM4PHSBNGQ.