Author Topic: Meaning of 'ID'  (Read 4611 times)

Shilmin

  • Jr. Member
  • **
  • Posts: 40
Meaning of 'ID'
« on: July 31, 2014, 07:09:04 PM »
Dear Sir/Madam,

I asked a question before, and Prof. Taylor gave me a very inspiring advice. I am very grateful. The following is the link: Setting active equations,set 'ix' for the isw=1 'http://feap.berkeley.edu/forum/index.php?topic=638.0' . And one of replies is also copied here:

"You will have to write a user module (umacr*.f) to modify the equation structure as you proceed.

Assume you are doing a 2-d problem which normally hass 2-dof's/node (u, v) but you want to have additional dof's for the XFEM.  You set the maximum number of dof's on the control record that you need.  Feap will automatically delete the unused dof's (> 2) during set up.   When you do a solution step and decide what dof's to activate you need to reset the id(ndf,numnp,2) array for the "2" at the dof/node you want active (set it to zero).  Then call pnewpr() and a new profile will be created in which the added dof is considered. "

I looked into the 'id', it seems that it can be very easy to get the id(:,:,2) from the id(:,:,1). So, what is the difference between these two? Can you give me more specific explaination to show me how to write this user module.

Thank you! Have a very good day!

Shilmin

Attach parts of the input file and the 'id'

FEAP * * 4-Element Patch Test (Ex. 1)
  9,4,1,2,12,4
 
!MATErial,1
!  SOLId
!    PLANe STRAin
!    ELAStic ISOTropic 1000.0 0.25
                  ! Blank termination record
             
MATErial 1
  USER  1
   EEmu 2000 0.2
             
COORdinates
  1 0  0.0  0.0
  2 0  4.0  0.0
  3 0 10.0  0.0
  4 0  0.0  4.5
  5 0  5.5  5.5
  6 0 10.0  5.0
  7 0  0.0 10.0
  8 0  4.2 10.0
  9 0 10.0 10.0
                  ! Blank termination record
ELEMents
  1 1 1 1 2 5 4
  2 1 1 2 3 6 5
  3 1 1 4 5 8 7
  4 1 1 5 6 9 8
                  ! Blank termination record
BOUNdary restraints
  1 0 1 1
  4 0 1 0
  7 0 1 0
                  ! Blank termination record
FORCes
  3 0 2.5 0.0
  6 0 5.0 0.0
  9 0 2.5 0.0
                  ! Blank termination record
END

batch
 show,ID
end

stop


    Matrix: ID                           
    row/col         1         2         3         4         5         6
       1           -1        11        23        -3        46        58
       2           -2        12        24        35        47        59
       3            1        13        25        36        48        60
       4            2        14        26        37        49        61
       5            3        15        27        38        50        62
       6            4        16        28        39        51        63
       7            5        17        29        40        52        64
       8            6        18        30        41        53        65
       9            7        19        31        42        54        66
      10            8        20        32        43        55        67
      11            9        21        33        44        56        68
      12           10        22        34        45        57        69

    Matrix: ID                           
    row/col         7         8         9
       1           -4        81        93
       2           70        82        94
       3           71        83        95
       4           72        84        96
       5           73        85        97
       6           74        86        98
       7           75        87        99
       8           76        88       100
       9           77        89       101
      10           78        90       102
      11           79        91       103
      12           80        92       104

    Matrix: ID                           
    row/col         1         2         3         4         5         6
       1            1         0         0         1         0         0
       2            1         0         0         0         0         0
       3            0         0         0         0         0         0
       4            0         0         0         0         0         0
       5            0         0         0         0         0         0
       6            0         0         0         0         0         0
       7            0         0         0         0         0         0
       8            0         0         0         0         0         0
       9            0         0         0         0         0         0
      10            0         0         0         0         0         0
      11            0         0         0         0         0         0
      12            0         0         0         0         0         0

    Matrix: ID                           
    row/col         7         8         9
       1            1         0         0
       2            0         0         0
       3            0         0         0
       4            0         0         0
       5            0         0         0
       6            0         0         0
       7            0         0         0
       8            0         0         0
       9            0         0         0
      10            0         0         0
      11            0         0         0
      12            0         0         0

« Last Edit: July 31, 2014, 07:21:38 PM by Shilmin »

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2649
Re: Meaning of 'ID'
« Reply #1 on: August 01, 2014, 06:32:03 AM »
The ID(:,:,2) shows which equation as are active -0 values.  The ID(:,:,1) are the equation numbers ( positive values - negative ones not used currently).  So, you will need to activate equations by removing non zeros from ID(:,:,2) and ensuring you know how to use the new equation numbers to add your contributions. 

Shilmin

  • Jr. Member
  • **
  • Posts: 40
Re: Meaning of 'ID'
« Reply #2 on: August 02, 2014, 01:32:10 AM »
Dear Prof. Taylor,

Thank you for your timely reply and it builds up my confidence again.

Based on the Matrix ID as shown in my question, it seems I should change some zeros to non zeros to deactivate equations.

Thank you again!

Shilmin