# Metal absorption with impact-parameter sampling. [AI-Codex]
dataset_type: pointcloud_voronoi
driver_type: raytracer
device: cpu
log_level: info

pointcloud_voronoi:
  hilbert_bits: 8
  loader: gadget
  cloudy:
    enabled: true
    ion_table_path: ./data/cloudy-v2/grid_ions.hdf5
    emission_table_path: ./data/cloudy-v2/grid_emissivities.hdf5
    redshift_interp: true
  gadget:
    path: ./tng50-halo625-gas-stars-v2.hdf5
    fields: [PositionX, PositionY, PositionZ, Density, Temperature,
             StarFormationRate, VelocityX, VelocityY, VelocityZ,
             cloudydensity_CIV, cloudydensity_SiIV, cloudydensity_OVI]
    zoom_box: [[0.4945, 0.5055], [0.4945, 0.5055], [0.4919, 0.5029]]
  field_filters:
    _non_star_forming:
      conditions:
        - {field: StarFormationRate, op: "==", value: 0.0}
      else: zero
    cloudydensity_CIV: {inherit: _non_star_forming}
    cloudydensity_SiIV: {inherit: _non_star_forming}
    cloudydensity_OVI: {inherit: _non_star_forming}

raytracer:
  max_step: 0.01
  hubble_flow: 0.0
  outputpath: absorption-metals-rings.zr
  overwrite: true
  operators:
    sightlines:
      extent: crossing
      output:
        cells: false
      ray_source:
        type: impact_parameter
        center: [0.509, 0.489, 0.736]
        direction: [0, 0, 1]
        up: [0, 1, 0]
        impact_parameters: [0, 0.035, 0.07, 0.105]
        n_azimuth: 8
      tau:
        lines: [CIV, SiIV, OVI]
        line_density_fields:
          CIV: cloudydensity_CIV
          SiIV: cloudydensity_SiIV
          OVI: cloudydensity_OVI
        per_species: true
        lambda_min: 1028.0
        lambda_max: 1552.0
        nbins: 52400
