Author Topic: The problem when using BLOC in POLAr frame to define a contact surface  (Read 8804 times)

Ziyu

  • Jr. Member
  • **
  • Posts: 27
Dear FAEP developers,

Attached are a schematic figure for my model and the input file I made. Basically, the smaller block has a surface which is part of a cylinder and should be defined as contact slave surface. But when I applied BLOC SEGM in polar coordinate system, only 4 out of 16 quads in this surface are defined. However, BLEN SEGM can give a successful definition (all 16 quads are defined). Both BLOC definition and BLEN definition are listed in the attached input file with BLEN one commented by "!". Currently I cannot find any violation of FEAP input grammar in my input file... Please could you help?

Ziyu
« Last Edit: February 16, 2013, 08:24:56 PM by Ziyu »

Ziyu

  • Jr. Member
  • **
  • Posts: 27
Re: The problem when using BLOC in POLAr frame to define a contact surface
« Reply #1 on: February 17, 2013, 08:08:30 PM »
Now I am pretty sure that there are some bugs in the subroutine crblok3.f. If you look at the code:

        if(polfl) then
          cn = cos(z0(2)/th)
          sn = sin(z0(2)/th)
        endif

and
       r2    = atan2(dy,dx)*th + z0(2)

it looks like you take Z0(2) as the angle coordinate in a polar frame. But it is NOT true after you project XL into the local frame e1, e2, and e3 to obtain ZL and further obtain Z0 based on ZL. After the projection, Z0(1) may become the angle, and Z0(2) may be the height instead. Here you should have used an angle which is based on XL (or Xmin, Xmax, NOT Zmin, Zmax), just like what you did in prj3dl.f.

I am using FEAP8.3.19. Maybe you already have a fix for this subroutine?

Ziyu

« Last Edit: February 17, 2013, 08:15:38 PM by Ziyu »

Ziyu

  • Jr. Member
  • **
  • Posts: 27
Re: The problem when using BLOC in POLAr frame to define a contact surface
« Reply #2 on: February 18, 2013, 06:47:22 PM »
I added some code to fix this bug in crblok3.f myself. And now the results of contact definition is correct. Hope it helps

FEAP_Admin

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 993
Re: The problem when using BLOC in POLAr frame to define a contact surface
« Reply #3 on: February 25, 2013, 09:41:04 AM »
Thanks.  We will take a look.

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2649
Re: The problem when using BLOC in POLAr frame to define a contact surface
« Reply #4 on: February 26, 2013, 08:04:52 AM »
Try the attached file to fix the bug you cite.  Place it in /contact/main -- be sure there are no differences in include files or argument list between this file and the one currently in your version of FEAP.  If your version does not have 'ctface3 comment the lines around the call.

Ziyu

  • Jr. Member
  • **
  • Posts: 27
Re: The problem when using BLOC in POLAr frame to define a contact surface
« Reply #5 on: February 26, 2013, 09:52:29 AM »
Thank you Professor. I have ctface3.f because ctface3 was actually added under my request :)

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2649
Re: The problem when using BLOC in POLAr frame to define a contact surface
« Reply #6 on: February 26, 2013, 10:15:31 PM »
I am sorry but I left a couple of extra prints in the file -- remove the extra iprint and mprint calls.

rlt