Hi Louise,
I am reading the Li's paper and the corresponding .inp file reacently.But one problem infused me.As the case loads(0-5) showed in the .inp file :
*Boundary, op=NEW
MasterNode1, 1, 1
MasterNode1, 2, 2
MasterNode1, 3, 3
*Cload
ConstraintsDriver0, 1, 0.88
*End Load Case
*Load Case, name=Load1
*Boundary, op=NEW
MasterNode1, 1, 1
MasterNode1, 2, 2
MasterNode1, 3, 3
*Cload
ConstraintsDriver1, 1, 0.88
*End Load Case
etc
I was just wondering why all constraintdrivers used in the equations are applied in x-direction (direction 1).
In the Li'paper,it defines the differernt dirctions load(Fx,Fy,Fz .ect).And I attached it in the following.
Best regards,
Back
The problem between the Li's paper and the .inp file
Moderators: Martin, Developers
The problem between the Li's paper and the .inp file
- Attachments
-
- QQ截图20150428111615.png (29.48 KiB) Viewed 9530 times
Re: The problem between the Li's paper and the .inp file
Hi, back.
I also found this "problem" in .inp file. I infer that the second parameter in *cload command denotes the coefficient of the first parameter, not the direction of force, because the "constraintsdriver"s denote strains. You can find the notation in period boundary conditions part in the .inp file, although all the constrainsdrivers nodesets are defined as individual node at the origin.
In addition, I found the results of material properties caculated by Abaqus from the .inp file generated automatically by TexGen have some problems, especially for shear moduli, which have the power of 25. That is not true for general polymer matrix composite. Do you encount the same problem?
Best regards,
Hao wang.
I also found this "problem" in .inp file. I infer that the second parameter in *cload command denotes the coefficient of the first parameter, not the direction of force, because the "constraintsdriver"s denote strains. You can find the notation in period boundary conditions part in the .inp file, although all the constrainsdrivers nodesets are defined as individual node at the origin.
In addition, I found the results of material properties caculated by Abaqus from the .inp file generated automatically by TexGen have some problems, especially for shear moduli, which have the power of 25. That is not true for general polymer matrix composite. Do you encount the same problem?
Best regards,
Hao wang.
Re: The problem between the Li's paper and the .inp file
Hi,
The loads are applied at the constraint driver nodes and are scaled as Nm per unit volume. So, according to equation 31 in Li's paper these are equivalent to the macroscopic stresses. The output from the analysis is specified to be the displacements at the constraint driver nodes. The material properties can therefore be calculated as in equation 32 of the paper (the section you have shown). This is done in the dataHandling.py script.
Hope that helps,
Louise
The loads are applied at the constraint driver nodes and are scaled as Nm per unit volume. So, according to equation 31 in Li's paper these are equivalent to the macroscopic stresses. The output from the analysis is specified to be the displacements at the constraint driver nodes. The material properties can therefore be calculated as in equation 32 of the paper (the section you have shown). This is done in the dataHandling.py script.
Hope that helps,
Louise
-
yanchen291
- Regular
- Posts: 19
- Joined: Tue Oct 06, 2015 5:20 pm
Re: The problem between the Li's paper and the .inp file
Hi Louise,
I am new to TenGen. I am trying to use TenGen generated Abaqus inp files for simulating and calculating the effective mechanical properties of a unit cell. So far, I have come to understand how the PBCs are applied in the input. However, I am still confused on how the loads are applied and the post-processing done in dataHandling.py.
1. In the inp file, constraint driver0-5 are duplicate nodes defined at origin (0,0,0). Load case 1 and load case 2 below are applied to constraint driver nodes 0 and 1 with the same magnitude. Since constraint node 1 and 2 are both at the origin, those two load cases are exactly the same. Same goes for all the other load cases unless Abaqus knows the constraint driver nodes represent different degrees of freedom. How does Abaqus know?
************************************
*Load Case, name=Load0
*Boundary, op=NEW
MasterNode1, 1, 1
MasterNode1, 2, 2
MasterNode1, 3, 3
*Cload
ConstraintsDriver0, 1, 0.117357
*End Load Case
*Load Case, name=Load1
*Boundary, op=NEW
MasterNode1, 1, 1
MasterNode1, 2, 2
MasterNode1, 3, 3
*Cload
ConstraintsDriver1, 1, 0.117357
*End Load Case
************************************
2. By using the displacement values in the calculations, is it assumed that the displacements in those nodes are equivalent to the strains?
3. Do we need to edit the dataHandling.py for different inp files, because the nodal labels for the constriantsDrivers0-5 change according to the mesh? For example, the following dataHandling.py section extracts displacement values from nodes 1-6 (value[0]-value[5]). What if constraintsDrivers0-5 have nodal labels 1000-1005?
************************************************************************************************************
Fz_eps0_x = frameFz.fieldOutputs['U'].values[0].data[0]
Fz_eps0_y = frameFz.fieldOutputs['U'].values[1].data[0]
Fz_eps0_z = frameFz.fieldOutputs['U'].values[2].data[0]
Shear_xy_gamma0_xy = frameShear_xy.fieldOutputs['U'].values[3].data[0]
Shear_yz_gamma0_yz = frameShear_yz.fieldOutputs['U'].values[5].data[0]
Shear_zx_gamma0_zx = frameShear_zx.fieldOutputs['U'].values[4].data[0]
************************************************************************************************************
Thank you,
Yan
I am new to TenGen. I am trying to use TenGen generated Abaqus inp files for simulating and calculating the effective mechanical properties of a unit cell. So far, I have come to understand how the PBCs are applied in the input. However, I am still confused on how the loads are applied and the post-processing done in dataHandling.py.
1. In the inp file, constraint driver0-5 are duplicate nodes defined at origin (0,0,0). Load case 1 and load case 2 below are applied to constraint driver nodes 0 and 1 with the same magnitude. Since constraint node 1 and 2 are both at the origin, those two load cases are exactly the same. Same goes for all the other load cases unless Abaqus knows the constraint driver nodes represent different degrees of freedom. How does Abaqus know?
************************************
*Load Case, name=Load0
*Boundary, op=NEW
MasterNode1, 1, 1
MasterNode1, 2, 2
MasterNode1, 3, 3
*Cload
ConstraintsDriver0, 1, 0.117357
*End Load Case
*Load Case, name=Load1
*Boundary, op=NEW
MasterNode1, 1, 1
MasterNode1, 2, 2
MasterNode1, 3, 3
*Cload
ConstraintsDriver1, 1, 0.117357
*End Load Case
************************************
2. By using the displacement values in the calculations, is it assumed that the displacements in those nodes are equivalent to the strains?
3. Do we need to edit the dataHandling.py for different inp files, because the nodal labels for the constriantsDrivers0-5 change according to the mesh? For example, the following dataHandling.py section extracts displacement values from nodes 1-6 (value[0]-value[5]). What if constraintsDrivers0-5 have nodal labels 1000-1005?
************************************************************************************************************
Fz_eps0_x = frameFz.fieldOutputs['U'].values[0].data[0]
Fz_eps0_y = frameFz.fieldOutputs['U'].values[1].data[0]
Fz_eps0_z = frameFz.fieldOutputs['U'].values[2].data[0]
Shear_xy_gamma0_xy = frameShear_xy.fieldOutputs['U'].values[3].data[0]
Shear_yz_gamma0_yz = frameShear_yz.fieldOutputs['U'].values[5].data[0]
Shear_zx_gamma0_zx = frameShear_zx.fieldOutputs['U'].values[4].data[0]
************************************************************************************************************
Thank you,
Yan
Re: The problem between the Li's paper and the .inp file
Hi Yan,
Please see the thread here: http://texgen.sourceforge.net/phpBB3/vi ... f=1&t=2294 Hopefully that will clear things up for you.
Best regards,
Louise
Please see the thread here: http://texgen.sourceforge.net/phpBB3/vi ... f=1&t=2294 Hopefully that will clear things up for you.
Best regards,
Louise
-
yanchen291
- Regular
- Posts: 19
- Joined: Tue Oct 06, 2015 5:20 pm
Re: The problem between the Li's paper and the .inp file
Hi Louise,
Thank you for the quick reply. I eventually figured out Question 1. The PBCs restrict the DoFs on the constraint driver nodes, so each constraint driver node will only have one DoF under those PBCs. However, I am still not clear about Question 2 and 3, even after reading the recommended thread multiple times. I appreciate it if you can kindly provide me some more insights.
Regarding Question 3, in dataHandling.py, the displacement values are extracted from nodes 1-6, but the constraint driver nodes normally have nodal labels other than 1-6. For example, if the nodal labels for constraint drivers are 1000-1005, then shouldn't dataHandling.py be modified to the following?
************************************************************************************************************
Fz_eps0_x = frameFz.fieldOutputs['U'].values[1000].data[0]
Fz_eps0_y = frameFz.fieldOutputs['U'].values[1001].data[0]
Fz_eps0_z = frameFz.fieldOutputs['U'].values[1002].data[0]
Shear_xy_gamma0_xy = frameShear_xy.fieldOutputs['U'].values[1003].data[0]
Shear_yz_gamma0_yz = frameShear_yz.fieldOutputs['U'].values[1005].data[0]
Shear_zx_gamma0_zx = frameShear_zx.fieldOutputs['U'].values[1004].data[0]
************************************************************************************************************
Regards,
Yan
Thank you for the quick reply. I eventually figured out Question 1. The PBCs restrict the DoFs on the constraint driver nodes, so each constraint driver node will only have one DoF under those PBCs. However, I am still not clear about Question 2 and 3, even after reading the recommended thread multiple times. I appreciate it if you can kindly provide me some more insights.
Regarding Question 3, in dataHandling.py, the displacement values are extracted from nodes 1-6, but the constraint driver nodes normally have nodal labels other than 1-6. For example, if the nodal labels for constraint drivers are 1000-1005, then shouldn't dataHandling.py be modified to the following?
************************************************************************************************************
Fz_eps0_x = frameFz.fieldOutputs['U'].values[1000].data[0]
Fz_eps0_y = frameFz.fieldOutputs['U'].values[1001].data[0]
Fz_eps0_z = frameFz.fieldOutputs['U'].values[1002].data[0]
Shear_xy_gamma0_xy = frameShear_xy.fieldOutputs['U'].values[1003].data[0]
Shear_yz_gamma0_yz = frameShear_yz.fieldOutputs['U'].values[1005].data[0]
Shear_zx_gamma0_zx = frameShear_zx.fieldOutputs['U'].values[1004].data[0]
************************************************************************************************************
Regards,
Yan
Re: The problem between the Li's paper and the .inp file
Hi Yan,
The dataHandling.py script was written by a colleague some time ago so I'm not 100% certain about how it works. If I understand correctly the displacement values are extracted from the output of the step specified in the 'Output Requests' section of the .inp file.
The lines frameFx = resultODB.steps[isothermalStep.name].frames[1] and following extract the results from the ODB file and then the lines you refer to extract values from that data.
Best regards,
Louise
The dataHandling.py script was written by a colleague some time ago so I'm not 100% certain about how it works. If I understand correctly the displacement values are extracted from the output of the step specified in the 'Output Requests' section of the .inp file.
The lines frameFx = resultODB.steps[isothermalStep.name].frames[1] and following extract the results from the ODB file and then the lines you refer to extract values from that data.
Best regards,
Louise
-
yanchen291
- Regular
- Posts: 19
- Joined: Tue Oct 06, 2015 5:20 pm
Re: The problem between the Li's paper and the .inp file
Hi Louise,
Thank you very much for your reply. I really appreciate your help. I just found out the output file I tried with the default dataHandling.py was generated from a modified inp file, not directly from TexGen. That was why the dataHandling.py wasn't working for me.
Regards,
Yan
Thank you very much for your reply. I really appreciate your help. I just found out the output file I tried with the default dataHandling.py was generated from a modified inp file, not directly from TexGen. That was why the dataHandling.py wasn't working for me.
Regards,
Yan