Topic: Some questions about Boundary loads

Hi all,
I have some questions about Boundary loads,So I wish someone would help me,thank you first!!
All I know so far is how do I add a constant  load to a plane that is orthogonal to the x or y or z axes
such as: ConstantSurfaceLoad 2 loadTimeFunction 1 Components 3 0.0 0.0 500 loadType 3 ndofs 3
Whether the parameters behind "Components" represent the load sizes in the three directions of x,y and z respectively.In this case,whether it means the load magnitude in the x and y directions is 0, and the load pressure in the z direction is 500pa ?Is my understanding correct?

Q1:How do I add load to those load which are not orthogonal to the axes x ,y and z.How should i set the parameters behind "Components"?I'm going to decompose the force in the x,y, and z directions?Could I directly set the direction of the load perpendicular to the plane?

Q2:How do I add load to surface,For example, I want to add an internal pressure to the inner wall of a ball or load to the surface of a hollow cylinder.
All I know is how do I add load to the plane but  I did not know how to deal with the surface.Just like Round and cylindrical.

The most important question I think:How could I directly set the direction of the load perpendicular to the plane?

I uploaded a salome file, and I just want to know how to add load to Group_2 from inside out perpendicular to the inside wall?

Looking forward to your reply!Thank you!!!

Post's attachments

cylinder.hdf 349.6 kb, 1 downloads since 2019-04-08 

You don't have the permssions to download the attachments of this post.

2 (edited by CXin 26-04-2019 10:37:06)

Re: Some questions about Boundary loads

I have found a way out of these two questions

Now there is another problem, in structural statics, of how to attach a temperature load to the object and calculate it.

As the attachment is a simple cuboid model, I want to conduct static analysis on it and observe its displacement, stress and strain.
The whole cuboid is a kind of material, but the Young modulus and thermal dilatation coefficient of the material will change with the temperature.There are corresponding functions such as E=f(T),tAlpha=f(T)

One end of the cuboid is fixed, and a temperature load varying along the z-axis is applied to the whole cuboid


How can I deal with this problem?

Post's attachments

Box1test.stp 15.02 kb, 2 downloads since 2019-04-26 

You don't have the permssions to download the attachments of this post.

3 (edited by CXin 29-04-2019 12:53:58)

Re: Some questions about Boundary loads

I find StructTemperatureLoad in  body loads,but I didn't know how to set it correctly.So  I made a simple attempt.

I created a cylinder, and I fixed the bottom surface, and I put a temperature load on the entire cylinder and I looked at its
displacement,strantensor and stresstensor.At the same time I did it in ANSYS WORKBENCH in order to compare.

After displaying my results through Paraview, I found the displacement is the same in both cases,but strantensor and stresstensor both different from the result of Ansys.This is also the case when I do some simple static analysis experiments.

I tried to change this:vtkxml tstep_all domain_all primvars 1 1 vars 2 5 2 stype 1. Change the parameters after vars.
In fact change straintensor to principalstaintentos  and stresstensor to principalstresstensor.
But the results did not change.

Would you please give me some advice?

Thank you!!

Post's attachments

cytest.zip 77.62 kb, 2 downloads since 2019-04-29 

You don't have the permssions to download the attachments of this post.

4

Re: Some questions about Boundary loads

I did not found anything wrong with your input.  Just to make sure that you use correct thermal expansion coefficient and right material parameters (all in compatible units). I would suggest to try simple brick element subjected to temperature change, which you can verify easily, to make sure you understand everything correctly. In case you find anything wrong, let me know.

Borek

Re: Some questions about Boundary loads

Thank you firstly!I will try and compare it again.

Would you please help me with another question?

If the above cylinder is in a temperature field, and the temperature varies along the height of the cylinder. The whole cylinder is the same material, but the Young modulus and thermal dilatation coefficient of the material are related to the temperature.There is a linear relationship between them.There are corresponding functions such as E=f1(T),tAlpha=f2(T) , not a fixed value, how can I set this?And how does the temperature field apply to this static analysis?

CXin

6 (edited by CXin 28-05-2019 12:13:14)

Re: Some questions about Boundary loads

Sorry to bother you again. It's almost the same question as the one mentioned above.

The attachments is an input file for linear static analysis of a hexagonal casing model(Serial and Parallel ). At present, I have set the same material properties and applied the same temperature load to all mesh elements of the whole casing, constraining the degrees of freedom in all directions on all nodes at the bottom of one side.

Q1: I can use OOFEM to solve this problem serially, but when I use oofem2part. py to divide the input file into four parts and do parallel computation, When I only set smtype 7 lstypr 3 ,the result is Divergent.So after I set ksp_type cg -pc_type jacobi -ksp_max_it 5000 the result was successed but I find the Computation process need 3000+ Iteration times to be convergent.  So How do I set up PETSc to better deal with larger issues??

Q2 is very important!!!!!
Q2: Actually, I want to achieve Thermo-Solid coupling.This model is in a temperature field which varies with Z coordinate axis. That is, the material properties and actual temperature loads of grid elements at different heights are different. It is determined by some functions of Z coordinate axis at different heights. I have a file on the distribution of the temperature field,how could I sent the temperature field to Linearstatic Analysis? How do I set the options of material properties and loads in the input file? In structural analysis, can the temperature load be applied directly on the nodes? How to apply it?

Looking forward to your reply!Thank you!!!

Post's attachments

v4test.zip 275.42 kb, 3 downloads since 2019-05-20 

You don't have the permssions to download the attachments of this post.

7

Re: Some questions about Boundary loads

I will try to answer your questions:
Q1: The performance of the iterative solvers depends strongly on preconditioner used. I would perhaps recommend to use factorization, for example, that should deliver better performance in your case. This requires to install external package when compiling PETSc (like SUPERLU_DIST).
Q2: If you have thermal analysis followed by structural analysis you can use staggered solver and map temperature field from thermal problem directly to structural problem (see nltrans_incr.in tests/tmsm directory for example).
If you wand only structural analysis with precomputed temperature field, then you have to apply temperature as loading on every element (see patch103.in in tests/sm directory for an example). At the moment the temperature is assumed constant over element and could not be expressed as a function of coordinates or specified at nodes. Also most of the material models have parameters as constants, so they could not vary depending on coordinates, for example. However, with some effort, the existing material model or thermal load can be modified to support parameters depending on coordinates, for example. We already have functional example to follow (isotropic heat transfer material model, for example, see isoheatmat.h and isoheatmat.C in src/tm/Materials directory).
Hope that it will help,
Borek

8 (edited by CXin 31-05-2019 07:44:46)

Re: Some questions about Boundary loads

First of all, thank you very much for taking the time to answer my question.

For Q1, I will try to use it according to your suggestion (first install superlu_dist when compiling petsc, then set the corresponding PETSc options when solving with OOFEM, right?)

As for Q2, I just want to use the existing temperature field for structural analysis. I know how to add temperature loads to each element. But what I hope to achieve most is to add temperature load to each node.

Method 1: I found that Nodalload can be applied to each node, so if I want to add temperature load to the node, can I refer to Nodalload?

Method 2: At present, what I can find is that body load can add temperature load to the elements. Since the ultimate construction of the matrix is equivalent to the load on each node, can we start from this place?

Last question:
In these two files ( isoheatmat.h and isoheatmat.C in src/tm/Materials directory) I did not find anything related to temperature. Do I need to consult other relevant function files?
What I want to achieve is to make Young's modulus and thermal expansion coefficient of elastic material properties change with temperature. They are a linear relationship.
And can we add material attributes directly to the nodes at present?

Thank you!!!
CXin

9

Re: Some questions about Boundary loads

Hi, please find answers below.
Q1: yes
Q2: at the moment, this is not possible. The nodal load in structural analysis should represent only forces, moments, not temperature. Although a suppport for this could be added, this would require some implementation work and is not available out of the box.
Last question: The individual parameters can be values but also expressions that depend on temperature, so in the input file you can write something like" E $10.15*(te-25.)+30.e6$", where te is external temperature. Of course, you can hard-code the expression into the material model implementation. What the isoheat.C illustrates is the way how to access the external temperature in integration point (IsotropicHeatTransferMaterial :: give method, te obtained as this->giveTemperature(gp))
Borek

Re: Some questions about Boundary loads

The temperature field data I plan to use for structural analysis (usually static linear analysis) should be the data of different temperature values caused by the change of z-axis coordinates. These data can eventually be fitted into a function of temperature with respect to coordinates, for example, E=f(Z).
Attached is a simple linear static analysis example of a hexagonal casing, where the material properties are set constant and a constant temperature load is added as a whole.
Q1:You mentioned can be written in the input file is similar to "E $10.15 * (te - 25.) + 30 e6 $", where te is external temperature. I try to direct changes in the input file, but it does not run successfully, I found in the \ SRC \ materials \ isolinearelasticmaterial C material attribute definition of ISOLE E and tAlpha for type double constant,I would like to know how to set it correctly in the file given in the attachment.
Q2: I know that I can only apply a constant temperature load on the whole element at present. I wonder if I can modify this part of the program so that I can enter a temperature coordinate related expression instead of a constant.The final implementation applies the same expression to the element, but makes the temperature load on each node different according to the node coordinates of the element
I hope you can give me some Suggestions or directions that should be further studied and modified. Thank you. I look forward to your reply

Post's attachments

v42.in 1.31 mb, 3 downloads since 2019-09-11 

You don't have the permssions to download the attachments of this post.