Difference between revisions of "FluidSource Custom Task"

From OSUPDOCS
Jump to navigation Jump to search
(Created page with "This custom task injects particles into a simulation. __TOC__ == Introduction == The <tt>FluidSource</tt> custom task injects particles at a...")
 
Line 3: Line 3:
== Introduction ==
== Introduction ==


The <tt>FluidSource</tt> custom task injects particles at a constant rate at a defined inlet. Its main use of for inject liquid particles
The <tt>FluidSource</tt> custom task injects particles at a constant rate from a defined inlet. Its main use of for injecting [[#Hyperelastic Materials|liquid or liquid-like particles]] such as a [[Tait Liquid]]. While it can be used with other materials, the injection process does not work well unless the injected material clears out of the inlet region in time for the next injected particles.
 
is to delete particles from a simulation after then undergo decohesion. This function is only useful for [[Material_Models#Softening_Materials|softening materials]]. Some simulations work better if failure particles are removed. This tasks works best when failure particles are confined to small regions of the object.
 
A second use of this task is to delete particles after a certain time. This function work best for [[Material_Models#Rigid_Materials|rigid particles]] and provides one way to create transient boundary conditions in a problem (''i.e.'', boundary conditions that disappear after a while).


== Task Scheduling ==
== Task Scheduling ==


In scripted files, a <tt>DeleteDamage</tt> is scheduled with the following block:
In scripted files, a <tt>FluidSource</tt> starts by defining the material to inject:


  CustomTask DeleteDamaged
  CustomTask FluidSource
  Parameter material,(matID)
  Parameter material,(matID)
  Parameter matname,(matname)
  Parameter matname,(matname)
Parameter store_x,(xloc)
Parameter store_y,(yloc)
Parameter store_z,(zloc)
Parameter minCOD,(cod)
Parameter direction,(dir)
Parameter deleteTime,(time)


In <tt>XML</tt> files, this task is stared using a <tt><Schedule></tt> element, which must be within the single <tt><CustomTasks></tt> block:
<Schedule name='FluidSource'>
    <Parameter name='material'>(matID)</Parameter>
    <Parameter name='matname'>(matname)</Parameter>
</Schedule>
The first two parameters are:
* <tt>(matID)</tt> or <tt>(matname)</tt> - specifies material type [[Material Command Block#Referencing Materials in XML Files|by number or name]].
=== Setting Injection Rate ===
Parameter FlowRate,(rate)
Parameter FlowFunction,(rateFxn)
Parameter flow_x,(xNorm)
Parameter flow_y,(yNorm)
Parameter flow_z,(zNorm)
Parameter source_x,(xSrc)
Parameter source_y,(ySrc)
Parameter source_z,(zSrc)
Parameter inlet_width,(width)
Parameter inlet_depth,(depth)
Parameter particle_size,(size)
In <tt>XML</tt> files, this task is created using a <tt><Schedule></tt> element, which must be within the single <tt><CustomTasks></tt> block:
In <tt>XML</tt> files, this task is created using a <tt><Schedule></tt> element, which must be within the single <tt><CustomTasks></tt> block:



Revision as of 08:30, 22 July 2021

This custom task injects particles into a simulation.

Introduction

The FluidSource custom task injects particles at a constant rate from a defined inlet. Its main use of for injecting liquid or liquid-like particles such as a Tait Liquid. While it can be used with other materials, the injection process does not work well unless the injected material clears out of the inlet region in time for the next injected particles.

Task Scheduling

In scripted files, a FluidSource starts by defining the material to inject:

CustomTask FluidSource
Parameter material,(matID)
Parameter matname,(matname)

In XML files, this task is stared using a <Schedule> element, which must be within the single <CustomTasks> block:

<Schedule name='FluidSource'>
   <Parameter name='material'>(matID)</Parameter>
   <Parameter name='matname'>(matname)</Parameter>
</Schedule>

The first two parameters are:

Setting Injection Rate

Parameter FlowRate,(rate)
Parameter FlowFunction,(rateFxn)
Parameter flow_x,(xNorm)
Parameter flow_y,(yNorm)
Parameter flow_z,(zNorm)
Parameter source_x,(xSrc)
Parameter source_y,(ySrc)
Parameter source_z,(zSrc)
Parameter inlet_width,(width)
Parameter inlet_depth,(depth)
Parameter particle_size,(size)

In XML files, this task is created using a <Schedule> element, which must be within the single <CustomTasks> block:

<Schedule name='DeleteDamaged'>
   <Parameter name='material'>(matID)</Parameter>
   <Parameter name='matname'>(matname)</Parameter>
   <Parameter name='store_x'>(xloc)</Parameter>
   <Parameter name='store_y'>(yloc)</Parameter>
   <Parameter name='store_z'>(zloc)</Parameter>
   <Parameter name='minCOD'>(cod)</Parameter>
   <Parameter name='direction'>(dir)</Parameter>
   <Parameter name='deleteTime'>(time)</Parameter>
</Schedule>

The parameters are

  • (matID) or (matname) - specifies material type by number or name.
  • (xloc),(yloc),(zloc) - deleted particles are moved to this location on the background grid. This location must be empty such that particles will not interact with active particles. Enter in length units.
  • (minCOD) - normally particles are deleted right after they fail. Alternatively, you can require the implied crack in the particle to open further before deletion by entering a minimum crack opening displacement (COD) (in length units)
  • (dir) - by default, the (minCOD) refers to magnitude of the COD. Alternatively, the minimum can apply to one component of the COD selected by entered integer
    1. = use magnitude of the COD (the default and option used if you enter an invalid dir)
    2. = use component of COD normal to the crack plane
    3. = use component of COD tangential to the crack plane
    4. = use xy shear slippage (same as 3 in 2D simulations)
    5. = use xz shear slippage (only nonzero in 3D simulations)
  • (time) - if this parameter is set, particles of the specified material type will all be deleted when time reaches the entered (time) in alt time units.

Task Action

Each time step loops over all particles of the material type specified for the task. If (time) was entered and current time has reached that time, the particle is deleted. Otherwise, the particle is checked to see if it has failed by decohesion. If it has, it is deleted, but if (minCOD) (and optionally (dir)) where entered, the particle is deleted only if the crack opening displacement has passed the entered minimum.

Notes

  • A single DeleteDamage task applies to one material type. A simulation can have multiple DeleteDamage tasks if you need particle deletions for more than one material type.
  • Deleting after decohesion only works for softening materials. Deleting after a specified time can be used for any material type.
  • If (minCOD) is less the the material COD at failure, the particle will be deleted right after failure (and not before). To delay failure until after some post-decohesion deformation, set (minCOD) to be larger than the material's COD at failure.