Line data Source code
1 : # SPDX-FileCopyrightText: 2025 PairInteraction Developers 2 : # SPDX-License-Identifier: LGPL-3.0-or-later 3 : 4 : 5 1 : from PySide6.QtWidgets import QLabel 6 : 7 1 : from pairinteraction_gui.config.base_config import BaseConfig 8 1 : from pairinteraction_gui.qobjects import Item, QnItemInt, RangeItem 9 : 10 : 11 1 : class CalculationConfig(BaseConfig): 12 : """Section for configuring the system parameters.""" 13 : 14 1 : margin = (5, 15, 5, 5) 15 1 : spacing = 10 16 : 17 1 : title = "Calculation Options" 18 : 19 1 : def setupWidget(self) -> None: 20 1 : self.layout().addWidget(QLabel("<b>Calculation steps</b>")) 21 1 : self.steps = QnItemInt( 22 : self, 23 : "Number of steps", 24 : unit="", 25 : vmin=1, 26 : vmax=9999, 27 : vdefault=100, 28 : tooltip="Number of steps for the calculation", 29 : checkable=False, 30 : ) 31 1 : self.layout().addWidget(self.steps) 32 : 33 1 : self.layout().addWidget(QLabel("<b>Fast mode</b>")) 34 1 : self.fast_mode = Item(self, "Use fast calculation mode", checked=True) 35 1 : self.layout().addWidget(self.fast_mode) 36 : 37 1 : self.layout().addWidget(QLabel("<b>Energy Range</b>")) 38 1 : self.layout().addWidget(QLabel("Calculate eigenenergies in the range")) 39 1 : self.energy_range = RangeItem( 40 : self, 41 : "from", 42 : vdefaults=(-80, 80), 43 : unit="GHz", 44 : checked=False, 45 : tooltip_label="energy", 46 : ) 47 1 : self.layout().addWidget(self.energy_range)