# 6.6. Particle Embedding

    BEGIN PARTICLE EMBEDDING <string>particle_embedding_name
      BLOCK = <string>block_name
      ASSEMBLY = <string>assembly_name
      INCLUDE ALL BLOCKS
      REMOVE BLOCK = <string>block_name
      PARTICLE SECTION = <string>section_name
      NEW MATERIAL = <string>material_name
        MODEL NAME = <string>model_name
      TRANSFER = <string>NONE|ALL(ALL)
      MAX NUM PARTICLES = <integer>num(1)
      MIN PARTICLE CONVERSION VOLUME = <real>vol
    END [PARTICLE EMBEDDING]

Particle embedding allows the user to specify element blocks in which each element is embedded with particles during initialization, before the first time step is taken. This capability can remove the need to create particles during element death and may be used for particle-solid interactions.

The embedded particles are created in the same way as during particle conversion for element death, except that the original solid element remains alive after the particles are created. Particles that are created are constrained to move with a material point in their controlling element (i.e., the element in which they were created). This constraint is released only if the controlling element dies. In addition, these embedded particles may interact with non-embedded particles to produce internal forces on the embedded particles. These internal forces are transferred to the controlling element using the embedded particle’s location in the element. Note that the mass of the particles embedded in an element is assigned as in particle conversion for element death but that the particles’ mass does not affect the solution until the controlling element dies. Once a particle’s controlling element dies it is freed and behaves as a particle element.

The commands for this block are discussed in Section 6.5.6.9 and work for particle embedding in the same way, save `TRANSFER`. Particle embedding has two opportunities for transferring element data: at initialization and at controlling element death. For particle embedding the `TRANSFER` command applies to both of these transfers. If the `ALL` option is used, an embedded particle will be initialized with the initial element data of its controlling element and will have its element data reset to the evolved element data of its controlling element when its controlling element dies. If the `NONE` option is used, the embedded particle’s element data will be initialized as a non-embedded particle’s would be, and the particle’s element data will not be modified at controlling element death. Assemblies may contain blocks, or assemblies of these.

Known Issue

Particle embedding does not currently work with restart or mesh rebalancing.