Author Topic: Parallel simulation with user element and many (15) degrees of freedom per node.  (Read 10057 times)

Mari

  • Jr. Member
  • **
  • Posts: 11
Hello!

I would like to use parfeap with a user element with 15 degrees of freedom (per node) and encounter problems. I guess it's because of the input files, which are generated with parfeap/metis.
Note: With the serial version of Feap the simulation runs.

Below you will find some examples.

The Input-File Iexample with:

Code: [Select]
MATErial,45
  USER,10, 45,1,2,3,4,5,6,7,8,9,10,11,12     ! Continued in next line
              13,14,15
[... some constants...]

[...]

batch
  OPTI
  INITial,disp
end
[...]
  XXX 0 0.0 0.0 300 0.6 0 0 0 0 0 0 0 0 0 0    ! Continued in next line
0
[...]

gives the Input-File Iexample_0001 with:

Code: [Select]
    13,14,15
MATErial      45
  user              10  13  14  15   0   0   0   0   0   0   0   0   0   0   0
   0   0
[... some constants...]

[...]

BATCh  ! Initial conditions
  INITial DISPlacement
END BATCH   ! Initial conditions
[...]
      XXX 0  0.00000000E+00  0.00000000E+00  3.00000000E+02  6.00000000E-01  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
        0 0  0.00000000E+00  0.00000000E+00  0.00000000E+00
[...]

If I manually change the commands into the form of Iexample the parallel simulation works fine.

Is it correct that for a proper parallel simulation the number of degrees of freedom per node is limited?

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1164
This is something that we did not imagine when writing parfeap.  If you want to do problems with this many dofs then you will have to edit the routine that generates the parallel input files.  You will find it in parfeap/pmacr7.F.  The subroutine is called uoutdom.  Look for each write statement that has an implicit loop over ndf.  Each one of these will need to be changed so that they do not write too many (16 total) items per output line; if they will do so, then you will need to wrap the output line.
« Last Edit: June 26, 2019, 02:32:42 PM by Prof. S. Govindjee »

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1164
I had a look at uoutdom( ), it seems to be programmed correctly already for most of the outputs.  It looks like just a few of them are incorrect.  Let me see if I can fix them.

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1164
Look for subroutine uinitld( ) in parfeap/pmacr7.F and  change format statement 2001 to
Code: [Select]
2001  format( i9,i2,1p,14e16.8/(1p,16e16.8))

Look for subroutine uoutdom( ) in parfeap/pmacr7.F and change the format statements 2001 and 2008 to
Code: [Select]
2001  format( i9,i2,1p,14e16.8/(1p,16e16.8))
2008  format( a:,1p,15e14.6/(1p,16e14.6))

These changes should fix some of the problems.  I still have to track down the USER one.

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1164
The remaining changes are in parfeap/uldout.f change format 2002 to
Code: [Select]
2002  format(i9,i2,1p,14e14.6/(1p,16e14.6))

But this does not explain your problem with the USER material cards.    Can you post the format statements that you find at the end of your program/pmatin.f file?

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1164
Also what version of FEAP are you using?

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1164
Attached is patched version of program/pmatin.f that you can use with version 8.5 to fix the problem with the material cards.
I did the corrections on our development version of 8.6 and tested it there.  I then back ported it to version 8.5 but have not tested
it with 8.5.  So please do that carefully.

Also for the 4 earlier corrections to the format statements in parfeap/pmacr7.F and parfeap/uldout.f, before the / in  the format statements, please insert a :.  So for example use
Code: [Select]
2002  format(i9,i2,1p,14e14.6:/(1p,16e14.6))instead of
Code: [Select]
2002  format(i9,i2,1p,14e14.6/(1p,16e14.6))

Mari

  • Jr. Member
  • **
  • Posts: 11
Dear Professor,

please excuse my late reply.

I have incorporated the changes and they work very well. Thank you very much!
Only the material card doesn't seem to work yet.

The following input of a material works well.
Code: [Select]
MATErial,25
  USER,16, 25,1,2,3,4,5,6,7,8,9,10,11,12
              13,14,15
    [some Parameters]


With the new patch I get:
Code: [Select]
MATErial      25
  user              16  25   1   2   3   4   5   6   7   8   9  10  11  12  13
  14  15
  [some Parameters]

I think the new line should start after "12".
« Last Edit: September 26, 2019, 02:22:34 AM by Mari »

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2649
It appears there are a couple of errors in pmatin.f (in ./program)

1. The first read gets 14 values: the first is the element set so is not used unless you are assigning more than one material to an element set.  The next 13 are for the dof use of 1 to 13 so you need to change the 12 to 13 in
!     Set idl for first group of dof's

      do j = 1,min(ndf,12)
        idl(j) = nint(td(j+1))
      end do ! j

2. Similarly change the 12 to 13 in


!     For large number of dof's input additional records and set idl

      if(ndf.gt.12) then
        il = 12
       
Hopefully this will fix the read of material sets.

Mari

  • Jr. Member
  • **
  • Posts: 11
Thank you very much for the quick reply!

Unfortunately it did not work with replacing the 12 to 13.

Based on the patched pmatin.f by Prof. Govindjee I found a (seemingly) working version. You will find the corresponding file attached.

An important change was:
Code: [Select]
2008  format(2x,a15,1x,14i4:/(16i4))

Unfortunately, the actual problem has not yet become clear to me.


Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2649
Can you test with the attached file please.

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2649
Ignore the previous mail. It is not a correct solution.  Sorry.

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2649
Try this file.

Mari

  • Jr. Member
  • **
  • Posts: 11
Thank you very much for your continued answers!

The attached file led to success. It combines the patch of Prof. Govindjee and yours.

If you don't mind, we can close the topic now.