Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Application Settings

The Settings dialog configures application-wide preferences, directory locations, catalog synchronisation, and default physical parameters[cite: 16]. Settings persist across sessions in a local configuration file (config.ron)[cite: 2].

Accessing the Settings Dialog

Open the settings dialog from the top navigation bar[cite: 16]:

  • Navigate to File → Settings (or press Ctrl+Alt+,).

Changes are staged in a temporary buffer while the dialog is open[cite: 16]. Clicking Cancel discards all changes, while Save & Close validates and writes the configuration to disk[cite: 16].


Settings Reference

The dialog is organised into two categories: General and Physics / Model[cite: 16].

General Settings

Configures filesystem directories and external asset synchronisation[cite: 16].

SettingTypeDefaultDescription
Report Base DirectoryFilesystem path~/Documents/opossum_reportsDirectory where simulation runs and generated analysis reports (PDF, CSV, diagrams) are stored[cite: 2, 16].
Catalog DirectoryFilesystem path<local_data>/catalogsDirectory for local material and coating catalog registries[cite: 2, 16].
Catalog Git Remote URLURL / Stringhttps://github.com/opossum-labs/opossum_catalog.gitRemote Git repository used to pull and update optical material definitions[cite: 2, 16].
Synchronise Catalog on StartupBooleanfalseWhen enabled, OPOSSUM checks the remote catalog URL and pulls updates on application startup[cite: 2, 16].
  • Directory Selectors (Browse...): Spawns a native directory picker to select valid folders on the filesystem[cite: 16].

Physics / Model Settings

Configures global optical defaults applied when creating components, sources, and analyzers[cite: 16].

SettingUnit / TypeDefaultConstraintsDescription
Default WavelengthLength (m, SI prefixed: nm, µm, etc.)1053.0 nmPositive, finite, non-zero (AllPositive && AllFinite && AllNotZero)[cite: 2]Nominal wavelength used to initialise optical sources and analyzers[cite: 16].

Behavior and Validation

  • Validation Rules: Wavelengths must be strictly positive and finite[cite: 2]. Non-numeric values, negative numbers, zero, and infinite values trigger an inline validation error and prevent saving[cite: 2, 16].
  • Analyzer Instantiation: Newly created analyzers adopt this default wavelength and initialise their spectral distributions and laser line definitions accordingly[cite: 1, 12].
  • Source Port Mapping: When a new optical SourcePort node is added to the optical graph, analyzers map the source port using this default wavelength[cite: 13, 14].
  • Distribution Editors: Switching spectral distribution types in the node editor (e.g. from Gaussian to Laser Lines) seeds new entries with this value[cite: 1].

Configuration File & Storage

All settings are serialized using the Rusty Object Notation (RON) format and saved to config.ron[cite: 2].

Storage Paths by Operating System

Operating SystemFile Path
Linux~/.config/opossum/config.ron
Windows%LOCALAPPDATA%\Opossumlabs\Opossum\config\config.ron
macOS~/Library/Application Support/org.Opossumlabs.Opossum/config.ron

File Format Example

(
    report_dir: Some("/home/user/Documents/opossum_reports"),
    catalog_dir: Some("/home/user/.local/share/opossum/catalogs"),
    catalog_remote_url: "[https://github.com/opossum-labs/opossum_catalog.git](https://github.com/opossum-labs/opossum_catalog.git)",
    sync_catalog_on_startup: false,
    default_wavelength: 0.000001053,
)