Ivar KJELBERG
COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)
Please login with a confirmed email address before reporting spam
Posted:
1 decade ago
Jan 24, 2012, 2:29 a.m. EST
Hi
indeed I believe you can do it easier in 1 physics with a "parameter", so if you want to stretch it first and then inflate it try something like:
delete fully your solid2, remove or keep disabled your other currently disabled BCs
Global Definition right-click Parameter define a parameter Param = 0
Add a Boundary load on the internal edge (as you had it in the 2nd solid) and write
Pressure = 25000*(Param-1)*(Param>1)
Edit your Prescribed displacement and write Z direction 0.003*(Param*(Param<1)+(Param>1))
Solver node, delete the "inflation solver, edit the stretching solver: Extension Continuation select Param and give a value set to:
range(0,0.2,2)
now (if I haven't made any typos ;) you should get a stretching for Param going from 0 to 1 and a further inflation for Param going from 1 to 2.
You can also use if() operator or Definition functions step, rectangle etc for the boolean expressions
--
Good luck
Ivar
Hi
indeed I believe you can do it easier in 1 physics with a "parameter", so if you want to stretch it first and then inflate it try something like:
delete fully your solid2, remove or keep disabled your other currently disabled BCs
Global Definition right-click Parameter define a parameter Param = 0
Add a Boundary load on the internal edge (as you had it in the 2nd solid) and write
Pressure = 25000*(Param-1)*(Param>1)
Edit your Prescribed displacement and write Z direction 0.003*(Param*(Param1))
Solver node, delete the "inflation solver, edit the stretching solver: Extension Continuation select Param and give a value set to:
range(0,0.2,2)
now (if I haven't made any typos ;) you should get a stretching for Param going from 0 to 1 and a further inflation for Param going from 1 to 2.
You can also use if() operator or Definition functions step, rectangle etc for the boolean expressions
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
Posted:
1 decade ago
Jan 25, 2012, 1:14 p.m. EST
Hi Ivar,
Thank you very much for your help. It was a great help. The only thing that I needed to add was a constraint (a Prescribed Displacement) in r-direction, otherwise, the vessel will freely move around. So where you said to constrain my Z as 0.003*(Param*(Param<1)+1*(Param>1)), I added solid.U01*(Param<=1)+ 0*(Param>1) to the r-direction. I meant, initially there will be no constraint at the ends and the ends can freely move, but after that they should be held fixed while the cylinder is inflated. But I was not sure whether I need to explicitly define anything for free movement of the ends (Param<=1); so I used solid.U01 which I don't think is correct.
Do I need to specify anything for that?
Your comment is appreciated.
Hi Ivar,
Thank you very much for your help. It was a great help. The only thing that I needed to add was a constraint (a Prescribed Displacement) in r-direction, otherwise, the vessel will freely move around. So where you said to constrain my Z as 0.003*(Param*(Param1)), I added solid.U01*(Param1) to the r-direction. I meant, initially there will be no constraint at the ends and the ends can freely move, but after that they should be held fixed while the cylinder is inflated. But I was not sure whether I need to explicitly define anything for free movement of the ends (Param
Ivar KJELBERG
COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)
Please login with a confirmed email address before reporting spam
Posted:
1 decade ago
Jan 25, 2012, 4:44 p.m. EST
Hi
I'm not sure you can loop the variables around like that solidU01 is where COMSOL copies your "r" prescribed displacement, so like that I suspect you get a circular dependency if you add solid.U01 in your equation
If you do not define anything it's free to move, if you know where it will move you should write out that equation, some way as for Z, but if you want a mixture, you need to have two study steps, with a manual intervention, or some clever trick, if you have 2 Param1 and Param2, one per study and then combine these to have the a clever condition, but you must teak the COMSOL equations in the "equation" view, you cannot get in via the BC window (perhaps in a general expression, not sure)
All that need some more thoughts (I would need to "sleep over it" it's getting late for me) we will see what tomorrow brings in ;)
--
Good luck
Ivar
Hi
I'm not sure you can loop the variables around like that solidU01 is where COMSOL copies your "r" prescribed displacement, so like that I suspect you get a circular dependency if you add solid.U01 in your equation
If you do not define anything it's free to move, if you know where it will move you should write out that equation, some way as for Z, but if you want a mixture, you need to have two study steps, with a manual intervention, or some clever trick, if you have 2 Param1 and Param2, one per study and then combine these to have the a clever condition, but you must teak the COMSOL equations in the "equation" view, you cannot get in via the BC window (perhaps in a general expression, not sure)
All that need some more thoughts (I would need to "sleep over it" it's getting late for me) we will see what tomorrow brings in ;)
--
Good luck
Ivar
Ivar KJELBERG
COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)
Please login with a confirmed email address before reporting spam
Posted:
1 decade ago
Jan 26, 2012, 1:53 a.m. EST
Hi again
this morning I have come to the following;)
your hyper elastic material, in 2D axi is constrained to the lower side by a symmetry, which is equivalent to a "roller" condition, fixed in Z, and "u" normal to the R axis, but on the upper part you push and pull, then block it and "inflate" as second step.
You have a prescribed motion along Z for the top BC and a few possibilities for the R motion:
1) your hyperelastic material is attached (glued) to a solid cylinder, so with the cylindrical symmetry you are left only with a vertical Z motion, and in fact you should write dr=0 for both steps as the object you pull is "solid" in 2D-axi. the rest of the material deforms from the material properties and load case, no difference for stretch and inflate (apart you need to block the Z motion for the inflation with the formula I gave above
2) you have a theoretical problem, your upper BC moves in Z and r in a know way: you write an equation for both dz and dr and keep it fixed during the inflation period
3) you really want to have the upper BC move in a prescribed way along Z during stretching, but leave it deform in dr from the material properties, but then you need to fix it at its last position for the inflation phase. For me this is a rather non-physical BC but why not (in the sense that your BC you use to pull is first a soft material, then become rigid during the inflation step, but OK theoretical possible). In this case you have two different BC for each step, fist "free" in the stretch phase and then prescribed to the final value (and not "0")
This I would do manually in two steps, a first study for the stretching with no condition on dr. Then I would remesh, based on the deformed shape, use the initial conditions from the first solution to be loaded as starting point to the second stationary solver step (to get initial stress and other related values), and apply a dr=0 condition on the top BC. I'm not sure how to automate this, today) as we cannot (yet) drive the BC's from the solvers (switch enable/disable BC) nor I believe ask for a remesh after a first study as a sub node in the solver tree (but we can link automatic or adaptive remeshing during a solver, and we can manually ask for a remesh after a solution in the mesh nodes (right click on Data Set)
--
Good luck
Ivar
Hi again
this morning I have come to the following;)
your hyper elastic material, in 2D axi is constrained to the lower side by a symmetry, which is equivalent to a "roller" condition, fixed in Z, and "u" normal to the R axis, but on the upper part you push and pull, then block it and "inflate" as second step.
You have a prescribed motion along Z for the top BC and a few possibilities for the R motion:
1) your hyperelastic material is attached (glued) to a solid cylinder, so with the cylindrical symmetry you are left only with a vertical Z motion, and in fact you should write dr=0 for both steps as the object you pull is "solid" in 2D-axi. the rest of the material deforms from the material properties and load case, no difference for stretch and inflate (apart you need to block the Z motion for the inflation with the formula I gave above
2) you have a theoretical problem, your upper BC moves in Z and r in a know way: you write an equation for both dz and dr and keep it fixed during the inflation period
3) you really want to have the upper BC move in a prescribed way along Z during stretching, but leave it deform in dr from the material properties, but then you need to fix it at its last position for the inflation phase. For me this is a rather non-physical BC but why not (in the sense that your BC you use to pull is first a soft material, then become rigid during the inflation step, but OK theoretical possible). In this case you have two different BC for each step, fist "free" in the stretch phase and then prescribed to the final value (and not "0")
This I would do manually in two steps, a first study for the stretching with no condition on dr. Then I would remesh, based on the deformed shape, use the initial conditions from the first solution to be loaded as starting point to the second stationary solver step (to get initial stress and other related values), and apply a dr=0 condition on the top BC. I'm not sure how to automate this, today) as we cannot (yet) drive the BC's from the solvers (switch enable/disable BC) nor I believe ask for a remesh after a first study as a sub node in the solver tree (but we can link automatic or adaptive remeshing during a solver, and we can manually ask for a remesh after a solution in the mesh nodes (right click on Data Set)
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
Posted:
1 decade ago
Apr 11, 2012, 2:48 p.m. EDT
Dear All,
I've just started using Comsol and I'm facing some problems regarding using stored solutions as a boundary conditions for the next step.
What I would like to do is to simulate a pressing step of a multilayered composite with different elastic moduli. So far, I have managed to do the first step but I got an error message when trying to define the initial conditions of the following step as the stored solution. I want to see how the multilayered material will relax upon releasing of the load. As the substrate is much softer than the top layers, I expect to see a sort of bending when the force that is applied in the first step is removed.
I'm attaching my model and any help will be greatly appreciated. Sorry for my limited knowledge in finite element analysis. I'm currently using Comsol v.4.2.
Thank you very much in advance for your help.
Rafael
Dear All,
I've just started using Comsol and I'm facing some problems regarding using stored solutions as a boundary conditions for the next step.
What I would like to do is to simulate a pressing step of a multilayered composite with different elastic moduli. So far, I have managed to do the first step but I got an error message when trying to define the initial conditions of the following step as the stored solution. I want to see how the multilayered material will relax upon releasing of the load. As the substrate is much softer than the top layers, I expect to see a sort of bending when the force that is applied in the first step is removed.
I'm attaching my model and any help will be greatly appreciated. Sorry for my limited knowledge in finite element analysis. I'm currently using Comsol v.4.2.
Thank you very much in advance for your help.
Rafael