insertion mode laser command

Purpose

insertion mode laser is used to generate mass-less particles that represent a laser beam (examples).

Syntax

insertion mode laser keyword value

General insertion keywords are documented here. This document only describes the specific keywords for the insertion of a lagrangian spray.

Return to the insertion documentation.

Keywords

Description

laser_power

obligatory, each photon will receive an energy that is equal to power / particlerate
units: [mass*length^2/time^3]

laser_polarization

obligatory vector, specifying the polarization direction. The polarization should be normal to
the velocity. If this is not the case, only the normal component will be considered upon reflection.

target_particle_count

desired number of particles to insert
range: [1,∞); units: [-]

nozzle_shape

obligatory, shape through which the particles should be inserted, allowed values are: cone, cylinder
pyramid, elliptic_cylinder, elliptic_cone
The nozzle_shape keyword requires arguments that depend on its value, details please see here.

center_of_nozzle

obligatory vector with center coordinates of the nozzle
units: [length]

particlerate

particle insertion rate
range: [1,∞); units: [1/time]

duration_time

duration of each insertion moment (insert_every_time) in time units
range: (0,`insert_every_time`); units: [time]

volume_limit

minimal volume of the insertion region used for sanity checks
range: (0,∞); units: [distance^3]

Examples

insertion mode laser id laserDiode particle_distribution laserDist particlerate 5e7 velocity constant (0, 0, -5) &
     nozzle_shape cylinder outer_nozzle_radius 5. laser_power 1e12 laser_polarization (0, 0, 1) center_of_nozzle (0, 0, 1)

insertion mode laser id laserDiode particle_distribution laserDist target_particle_count 50 particlerate 5e7 &
     insert_every_time 1e-4 velocity constant (0, 0, -5.) nozzle_shape cone outer_nozzle_radius 5. outer_cone_angle 120 &
     laser_power 1e12 laser_polarization (0, 0, 1) center_of_nozzle (0., 0., 8.)

insertion mode laser id laserDiode particle_distribution laserDist particlerate 5e7 insert_every_time 1e-4 &
     velocity constant (0, 0, -5.) nozzle_shape cone outer_nozzle_radius 5. outer_cone_angle 120 &
     laser_power 1e12 laser_polarization (0, 0, 1) center_of_nozzle (0., 0., 8.) duration_time 5e-5

insertion mode laser id laserDiode particle_distribution laserDist particlerate 5e7 velocity constant (0, 0, -5.) &
     nozzle_shape cone outer_nozzle_radius 5. inner_nozzle_radius 3. outer_cone_angle 120 inner_cone_angle 90 &
     laser_power 1e12 laser_polarization (0, 0, 1) center_of_nozzle (0., 0., 8.)

insertion mode laser id laserDiode particle_distribution laserDist particlerate 5e7 velocity constant (0, 0, -1.) &
     outer_nozzle_radius 5. laser_power 1e12 laser_polarization (0, 0, 1) center_of_nozzle (0, 0, 0)

insertion mode laser id laserDiode particle_distribution laserDist particlerate 5e7 insert_every_time 1e-5 &
     nozzle_shape pyramid pyramid_x_axis (1,0,0) pyramid_x_length 5 pyramid_y_length 10 pyramid_x_angle 40 &
     pyramid_y_angle 40 velocity constant (0, 0, -10.) laser_power 5e12 laser_polarization (0, 0, 1) &
     center_of_nozzle (0., 0., 8.)

   insertion mode laser id laserDiode particle_distribution laserDist target_particle_count 5000 particlerate 5e7 &
     insert_every_time 1e-4 velocity constant (0, 0, -5.) nozzle_shape elliptic_cylinder ellipsoid_x_axis (1, 0, 1) &
     center_of_nozzle (-0.2, 0, -0.1) outer_nozzle_x_radius 2.5e-2 outer_nozzle_y_radius 1.3e-2 laser_power 1e12 &
     laser_polarization (0, 0, 1)

insertion mode laser id laserDiode particle_distribution laserDist particlerate 5e7 velocity constant (0, 0, -5.) &
     nozzle_shape elliptic_cone ellipsoid_x_axis (1, 0, 1) center_of_nozzle (0., 0., 8.) outer_cone_x_angle 90 &
     inner_cone_x_angle 40 outer_cone_y_angle 20 inner_cone_y_angle 0 outer_nozzle_x_radius 4e-2 &
     inner_nozzle_x_radius 1e-2 outer_nozzle_y_radius 3e-2 inner_nozzle_y_radius 1e-2 laser_power 1e12 laser_polarization (0, 0, 1)

insertion mode laser id laserDiode particle_distribution laserDist particlerate 5e7 velocity constant (0, 0, 1e-3) &
     nozzle_shape cone outer_nozzle_radius 1e-4 outer_cone_angle 120 laser_power 1e-5 laser_polarization (0, 0, 1e-4) &
     center_of_nozzle (0, 0, 0) volume_limit 1e-18

insertion mode laser id laserDiode particle_distribution laserDist particlerate 5e7 velocity constant (0, 0, -5) &
     nozzle_shape cylinder outer_nozzle_radius 5. laser_power 1e12 laser_polarization (0, 0, 1) center_of_nozzle (0, 0, 1)
mesh_module motion id moveLaser linear velocity (1, 0, 0) meshes {insertion_face_laserDiode}

Description

The laser insertion command generates a stream of mass-less particles that form a laser beam. The used material and its properties have to be defined in a specific way, please have a look at the droplet material tutorial for more details.

The insertion face is represented by a nozzle having a center set by the center_of_nozzle keyword and orientation set by the velocity keyword. Information about available nozzle_shape types and their keywords can be found here. The internally generated insertion face gets the id “insertion_face_${insertion_command_id}”. For generating moving nozzles just apply a mesh motion module to this face.

The keyword target_particle_count can be used to set the total material amount that is inserted. Once the defined mass is reached, the spray stops. The mass rate is specified via the particle_rate keyword.

It is possible to define the duration of each insertion moment (length of insertion moment is defined by insert_every_time) via the duration_time keyword. This also requires an explicit definition of the insert_every_time keyword. The duration_time value must be lower than the insert_every_time value. This results in a pulsed laser beam instead of a continuous stream.

The particle property that counts the number of tags of a particular material is called “f_” + id + “_tag”, and similarly id + “_tag” for the mesh element property, which can be used in the mesh_properties list of the output_settings command command.