CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > ANSYS > CFX

Pulsatile Flow Blood Vessel

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   June 27, 2013, 09:03
Default Pulsatile Flow Blood Vessel
  #1
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
Hi All,

I'm trying to conduct a 1-Way FSI for a simple blood vessel deformation
in response to a pulse blood flow.

To recreate blood flow, I'm using a inlet expression that forms a sine wave
varying about 2.5 [cm^s-1].

The solution converges correctly, however, when I monitor the velocity input
I get an increasing input instead of a proper sine wave.

Should I be doing something different?

Here's the expression I'm using - (VelCentre)+(VelAmp*(sin(t/1[s])))
Where VelCentre = 2.5, and VelAmp = 2.5. This plots a sine
wave with a maximum of 5, and a minimum of 0.

When I plot the expression by itself it comes out exactly like I want it.

However, below is the monitored velocity.

Velocity Monitoring.jpg

Last edited by omni89; June 27, 2013 at 09:33. Reason: Adding Information
omni89 is offline   Reply With Quote

Old   June 27, 2013, 09:32
Default
  #2
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
What´s your timestep?
You can check every expression in PRE via the Diagramm when creating it.
mvoss is offline   Reply With Quote

Old   June 27, 2013, 17:20
Default
  #3
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
Hi Matthias,

I'm using a time step of 1 [s], with
substeps of 0.1 [s].

Exactly, and in PRE it shows a perfect
sine wave.
omni89 is offline   Reply With Quote

Old   June 27, 2013, 19:52
Default
  #4
Super Moderator
 
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,665
Rep Power: 143
ghorrocks is just really niceghorrocks is just really niceghorrocks is just really niceghorrocks is just really nice
sin(t/1[s]) with time steps of 1[s] is not going to work. Are you sure your equation is correct? Either you goofed up the equation or your timesteps need to be a factor of 100 smaller.
ghorrocks is offline   Reply With Quote

Old   June 28, 2013, 04:16
Default
  #5
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
@omni89
don´t mix up the cfd "timestep" for the 1-way fsi and the substeps from the mechanical setup. could you describe your setup from the iteration/stagger-iteration/coupling-step-point-of-view?
mvoss is offline   Reply With Quote

Old   June 28, 2013, 05:40
Default
  #6
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
Apologies, I wrote it wrong the first time Matthias.

Here is my Setup:

Time per run: 1[s]
Timestep: 0.01[s] - I've tried changing it to a timestep of 0.001[s] to no
avail Glenn.

Coefficient loops (maximum): 10 - I have tried a larger maximum of 100,
but it usually converges well within that limit (around 20 loops at the most).

I tried changing the input expression around, but I'm still encountering the
same velocity monitoring. I think I'll revisit some of the tutorials and see if
I can get accurate results with them.

After that I'll give this a go again then get back to you guys. I'd rather not
waste you're time unless I've thought of the rest first.

Thanks for helping out so far!
omni89 is offline   Reply With Quote

Old   June 28, 2013, 10:55
Default
  #7
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
reviewing your plot it doesn´t look that bad... did you (accidentally) activated "Plot Coefficient Loop Data" (Solver -->WorkspaceProp.-->GlobalPlotSettings)? Are you monitoring the expression or a "point" in the mesh? How does the Flow>Boundary>INLET>P-Mass Boundary Flow on INLET look like?
mvoss is offline   Reply With Quote

Old   June 30, 2013, 06:54
Default
  #8
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
Okay, so it turns out I wasn't far off. I didn't have anything wrong with my
expression but the resolution I was getting from my timesteps etc made it
so that the wave wasn't fully observed during analysis.

I changed my parameters to:

Time per run: 6.5[s]
Timesteps: 0.005[s]

Which gives me a pulsatile velocity input exactly how I wanted. (See the
attached picture).

The issue I now have is, matching the timesteps in Transient Structural when
doing a 1-Way coupling. If I use the exact same step parameters, it doesn't
solve.

i.e:

No. of steps: 1
Current Step No.: 1
Step end time: 6.5[s]

Auto Time Stepping: On
Define By: Time
Intial Time Step: 0.005[s]
Minimum Time Step: 0.005[s]
Maximum Time Step: 0.005[s]

Everything else is left in default. The error I get is:

"Time specified for an imported load does not match any of the step
end times. Please enter a valid time value so that the imported load
time matches a step end time."

In previous practice runs, I have tried several combinations of the above
parameters and it seems almost arbitrary as to what to use to get a
correctly matched solution. The material I have (ANSYS Tutorials) don't
have too much detail on this, or I cannot find the exact that mentions the
relationship between the two.

Can you please point me towards any resource you think can help educate
me about this? As I mentioned, I don't want to be taking up anyone's time
over trivial questions.

Cheers.
Attached Images
File Type: jpg Pulsatile Velocity Monitoring.jpg (95.4 KB, 116 views)

Last edited by omni89; June 30, 2013 at 06:58. Reason: Forgot to add something.
omni89 is offline   Reply With Quote

Old   July 1, 2013, 04:31
Default
  #9
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
i am actually not sure about the whole setup. You are running transient structural with small deformations and couple to a steady cfx simulation right?
mvoss is offline   Reply With Quote

Old   July 1, 2013, 05:48
Default
  #10
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
Sorry should have been more clear.

I'm running CFX (transient) Fluid Flow and importing the subsequent pressures into a
Transient Structural.

The end goal is to have a 2-Way FSI between the two.
omni89 is offline   Reply With Quote

Old   July 1, 2013, 06:15
Default
  #11
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
For 2-Way FSI
-start with Time 0s in Ansys and CFX ("from coupling")
-same Endtime (6.5s)
-use the same Timestepsize in ANSYS and CFX (e.g 5E-03 s) by setting the stepping in ANSYS, CFX will use it automatically no matter what you set on CFX ("from coupling")

if both cases are transient, you´ll automatically end up with a 2-Way-FSI.
mvoss is offline   Reply With Quote

Old   July 1, 2013, 06:22
Default
  #12
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
If we wanted an implicit solution then don't we have to use ANSYS Multifield to solve both systems iteratively?
Using the setup you've described will provide me with a explicit solution which might not be accurate enough for
blood vessel mechanics. Do correct me if I'm wrong, as far as I can tell the implicit solution is preferred for
bio-mechanical analyses.

Using the above setup, which would make it much easier for me, how do I separate the fluid and solid meshes in the
Transient Structural system?

Last edited by omni89; July 1, 2013 at 06:42. Reason: Need to add something
omni89 is offline   Reply With Quote

Old   July 1, 2013, 06:56
Default
  #13
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
Quote:
Originally Posted by omni89 View Post
If we wanted an implicit solution then don't we have to use ANSYS Multifield to solve both systems iteratively?
Using the setup you've described will provide me with a explicit solution which might not be accurate enough for
blood vessel mechanics. Do correct me if I'm wrong, as far as I can tell the implicit solution is preferred for
bio-mechanical analyses.

Using the above setup, which would make it much easier for me, how do I separate the fluid and solid meshes in the
Transient Structural system?
The vector-coupling or partitioned approach when using two different solvers for FSI like described is afaik also an implicit one but don´t pin me down on this. The solvers iterate multiple times on every timestep.
I´ve seen blood vessel sim. done with ANSYS-wb. From the point of accuracy i think you can achieve proper results depending on the interface-convergence settings - so check for the values of interest.

If you need matrix-coupling/ monolithic approaches then u are right. You have to solve the whole system in a single matrix, which is not possible with the structural since it cannot solve for the fluid-mechanics.

For the meshing: not sure what you mean, but you can simply suppress the bodies/meshes you don´t need in the mechanical ( by creating the appropriate bodies in upstream DM - if the meshes need to be 1:1 put them in one assembly in DM).
mvoss is offline   Reply With Quote

Old   July 1, 2013, 07:12
Default
  #14
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
Got it. I've got a decent idea of what you've described so I'll give it a go and see how
the results look.

Just for confirmation, in the ANSYS Workbench (I'm using 14.5), this would look like the following:

Transient Structural System (with boundary conditions the same as before - fixed
supports on either end of the the cylindrical pipe, and pressure on walls is just blood
pressure varying with time).

This "couples" with a CFX System in the SETUP section, or is it a full Fluid Flow CFX
System that includes Geometry/Mesh? (with boundary conditions same as before - sine/cosine
wave of velocity varying with time at inlet of pipe, static pressure of 1 [Pa] at outlet).

Both systems have the same time per run, and timestep, thus leading to an "indirect"
2-Way FSI?
omni89 is offline   Reply With Quote

Old   July 1, 2013, 07:47
Default
  #15
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
yap. but you need to provide a (geoemtry and) mesh for the CFX-Cell. Send the geometry from the mech. to an extra mesh-cell and link this to the CFX-Setup. Same geometry but diff. meshes, the mesh from the mech-mesh. is discarded and just a dummy.
mvoss is offline   Reply With Quote

Old   July 1, 2013, 07:58
Default
  #16
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
I'm getting an error for Timesteps again unfortunately:

"Invalid time step settings. Please review inputs for all load steps. You may use
the worksheet view"

I'm trying to compute the whole system on an order of magnitude lower so
I can observe the results sooner.

Time Per Run: 1[s]
Timestep: 0.01[s]

The error I'm getting is in the Mechancial System, where I have the following settings:

Steps: 5
Current Step: 1
Step End Time: 1[s]
Auto Time Stepping: On
Define By: Time (or Substeps - Same error)
Initial Time Step: 0.01[s]
Min Time Step: 0.01[s]
Max Time Step: 0.01[s]

The tabular data I'm using to place a normal pressure on the inside of the blood
vessel wall is at the same time distance of 0.01 increment, so I'm unable to see
where the time step settings are wrong.


Please ignore this, I've just figured out that I hadn't entered in all the Time Steps
at each individual Step.

I'll keep you posted on how the rest goes

Last edited by omni89; July 1, 2013 at 08:07. Reason: Editing needed
omni89 is offline   Reply With Quote

Old   July 1, 2013, 11:08
Default
  #17
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
Quote:
Originally Posted by omni89 View Post
I'm getting an error for Timesteps again unfortunately:

"Invalid time step settings. Please review inputs for all load steps. You may use
the worksheet view"

I'm trying to compute the whole system on an order of magnitude lower so
I can observe the results sooner.

Time Per Run: 1[s]
Timestep: 0.01[s]

The error I'm getting is in the Mechancial System, where I have the following settings:

Steps: 5
Current Step: 1
Step End Time: 1[s]
Auto Time Stepping: On
Define By: Time (or Substeps - Same error)
Initial Time Step: 0.01[s]
Min Time Step: 0.01[s]
Max Time Step: 0.01[s]

The tabular data I'm using to place a normal pressure on the inside of the blood
vessel wall is at the same time distance of 0.01 increment, so I'm unable to see
where the time step settings are wrong.


Please ignore this, I've just figured out that I hadn't entered in all the Time Steps
at each individual Step.

I'll keep you posted on how the rest goes
just to be clear ... on mechanical you set the end time and the time per step WITH 1 Step with no AutoTimestep.
mvoss is offline   Reply With Quote

Old   July 10, 2013, 06:52
Default
  #18
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
Hi All,

The run you gave me went well (Matthias), unfortunately, the level of accuracy
(semi-implicit as it is indirect) isn't enough so I'm currently running
a Multiphysics simulation.

I successfully completed a 1[s] run of the Mutliphysics model with reasonably
accurate results (using the Velocity wave at the inlet, just like the prior model
I mentioned).

To improve the model now, I'm using a pressure wave at the inlet (gained from
empirical data). However, after 6 timesteps, I'm encountering the following error:



ERROR #001100279 has occurred in subroutine ErrAction.
Message:
CFX encountered the error: Read. Fatal error occurred when reque-
sting Total Mesh Displacement for Interface.



ERROR #001100279 has occurred in subroutine ErrAction.
Message:
cplg_SendCommand failed to send the command: ERROR -- CFX encount-
ered the error: Read. Fatal error occurred when requesting Total
Mesh Displacement for Interface.



ERROR #001100279 has occurred in subroutine ErrAction.
Message:
Stopped in routine cplg_SendCommand



I think the fault is in my mesh, however I'm not sure how exactly.
I saw you (Glenn) point another member towards the FAQ when they
got a similar error (i.e same "ERROR #001100279", but theirs was to
do with "Floating point exception: Overflow").

If you can point me towards to how to go about fixing this, I'd greatly
appreciate it
omni89 is offline   Reply With Quote

Old   July 10, 2013, 07:07
Default
  #19
Senior Member
 
Matthias Voß
Join Date: Mar 2009
Location: Berlin, Germany
Posts: 449
Rep Power: 20
mvoss is on a distinguished road
the ansys part is crashing... check the *.err file in your *.ansys directory.
mvoss is offline   Reply With Quote

Old   July 18, 2013, 00:04
Default
  #20
New Member
 
Join Date: Jun 2013
Location: Auckland, New Zealand
Posts: 10
Rep Power: 12
omni89 is on a distinguished road
I've checked the Ansys part and the error it gives me is as follows:

*** WARNING *** CP = 257.948 TIME= 18:38:51
There are 1031 small equation solver pivot terms.

*** ERROR *** CP = 260.397 TIME= 18:40:00
One or more elements have become highly distorted. Excessive
distortion of elements is usually a symptom indicating the need for
corrective action elsewhere. Try ramping the load up instead of step
applying the load (KBC,1). You may need to improve your mesh to
obtain elements with better aspect ratios. Also consider the behavior
of materials, contact pairs, and/or constraint equations. If this
message appears in the first iteration of first substep, be sure to
run shape checking of elements.

*** WARNING *** CP = 260.412 TIME= 18:40:00
The unconverged solution (identified as time 2.E-02 substep 999999) is
output for analysis debug purposes. Results should not be used for
any other purpose.



To combat this, I've increased the number of coupling loops & coefficient loops,
so that the solution has longer to converge; I've also increased the number of
elements in my pipe wall (Ansys section) which should allow better transfer of
loads in the Multifield/Multiphysics solver. However, the same error comes up,
and the changes haven't even affected the solver, as it stops roughly at the
same timestep.

The pressure wave I'm using now is an actual pressure wave seen in the blood,
so it's equation is lengthy in order to form an accurate waveform (refer to the
attached image). Is the error in the Ansys part occurring because of a meshing
problem?
Attached Images
File Type: jpg Pressure Wave.jpg (26.9 KB, 44 views)
omni89 is offline   Reply With Quote

Reply

Tags
ansys 14, cfx, expressions, fsi simulation

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Pulsatile blood flow Duncan FLUENT 12 October 26, 2016 10:23
negative mass flow at the outlet of vessel at the last timestep! smn CFX 7 October 28, 2014 13:47
Blood flow with FSI in Ansys 12 Marten ANSYS 9 April 14, 2012 17:33
How to set pulsatile flow in cfx? bmdaortiz CFX 4 September 8, 2009 23:48
pulsatile flow bernard Main CFD Forum 1 June 25, 1999 04:27


All times are GMT -4. The time now is 01:32.