diff --git a/setup.json b/setup.json index 3dacc4d..ee0bcf0 100644 --- a/setup.json +++ b/setup.json @@ -56,6 +56,6 @@ "sportran-gui=sportran_gui.main:run" ] }, - "gui_version" : "0.1.0b", + "gui_version" : "0.1.2", "credits" : "developed at SISSA, Via Bonomea, 265 - 34136 Trieste ITALY" } diff --git a/sportran_gui/assets/languages.json b/sportran_gui/assets/languages.json index 7207c28..f0f5258 100644 --- a/sportran_gui/assets/languages.json +++ b/sportran_gui/assets/languages.json @@ -21,33 +21,36 @@ "size": "Size", "stp1": "Select a file", + "f_list": "File list in the current folder:", "f_prv": "File preview", - "in_frm": "Input format", - "slct": "Selected", + "in_frm": "Input format:", + "slct": "Selected file:", - "stp2": "Define the use of the headers", + "stp2": "Define what the headers/keys correspond to", "nn": "None", - "en_cr": "Energy current", - "oth_cr": "Other current", + "en_cr": "Main current", + "oth_cr": "Additional current", "tmp": "Temperature", - "timestep": "Timestep", + "timestep": "Time step", "volume": "Volume", - "df1": "None: the header will not be used", - "df2": "Temperature: the column identified by this header will be used to calculate the temperature", - "df3": "Energy current: extensive quantity defined as in LAMMPS, without the 1/V factor. The units are specified by the user.", - "df4": "Other current: can be any current. If the fluid has N diffusive components, you must provide N-1 independent currents. The units are not important, since they simplify in the formula. The most simple choice is the center of mass velocity of N-1 components. You can provide as many non diffusive currents as you want: they will make the spectrum less powerful (it can be useful in some cases, like DFT heat current). Note that if have too many 'Other current's, you have to split the trajectory to have more independent sampling of all the currents.", + "df1": "None: the header will not be used.", + "df2": "Temperature: this column will be used to calculate the mean temperature.", + "df3": "Main current: this column corresponds to first flux in the onsager matrix (e.g. the energy current).", + "df4": "Additional current: Additional current for multi-component fluids. If the fluid has N diffusive components, you must provide N-1 independent currents. The units are not important, since they simplify in the formula. For example, the center of mass velocity of N-1 components. Non-diffusive currents can be useful to reduce noise by making the spectrum less powerful.", "stp3": "Set variables", "e_v": "Environment variables", "vl": "Volume", - "fl_v": "Filter variables", - "fl_w": "Filter width", + "fl_v": "Plot filter variables", + "fl_w": "Plot filter width", - "stp4": "Slide to select F* or write the value", - "slct_v": "Selected value", + "stp4": "F* selector", + "fslide": "F* selector: slide to select F* or enter the value, then click Resample", + "slct_v": "F* Selected value", "stp5": "P* selector", - "inc": "Increment by", + "pstar_cmt": "The default value is obtained from the Akaike Information Criterion", + "inc": "change by", "lst_rl": "Last release", "new_a": "New analysis", @@ -99,104 +102,5 @@ "back_reset_t": "Save changes?\nIf reopen the same file\nthe values that you chosed will not be deleted!", "fs_loaded": "F* loaded from input file ({})", "Errors": {} - }, - - "it-IT": { - "exit": "Esci", - "back": "Indietro", - "next": "Avanti", - "resample": "Ricampiona", - "recalculate": "Ricalcola", - "zoom_in": "Ingrandisci", - "reset_view": "Reimposta visuale", - "help": "Aiuto", - "version": "Versione", - "developers": "Sviluppatori", - "contacts": "Contatti", - "about": "Altro", - "info": "Info", - "view": "Visuale", - "s_log": "Mostra logs", - "s_inf": "Mostra Info", - "f_nm": "Nome del file", - "f_tp": "Tipo del file", - "size": "Dimensione", - - "stp1": "Seleziona un file", - "f_prv": "Anteprima del file", - "in_frm": "Formato dell'input", - "slct": "Selezionato:", - - "stp2": "Definisci l'uso delle colonne", - "tmp": "Temperatura", - "timestep": "Intervallo temporale", - "volume": "Volume", - - "df1": "None: la colonna non verr\u00E0 usata", - "df2": "Temperatura: la colonna verr\u00E0 utilizzata per calcolare la temperatura", - "df3": "Energy current: quantità estensiva definita come in LAMMPS, senza il fattore 1/V. Le unità di misura sono specificate dall'utente.", - "df4": "Other current: possono essere qualsiasi corrente. Se il fluido ha N componenti diffusive, l'utente deve utilizzare N-1 correnti indipendenti. La scelta più semplice è la velocità del centro di massa di N-1 componenti. Si possono inserire molte correnti non diffusive: lo spettro avrà una potenza minore (può essere utile in molti casi, come nel caso di una corrente di calore DFT). Nota che se si hanno troppe 'Other current', è necessario dividere la traiettoria per ottenere più campioni statisticamente indipendenti di tutte le correnti.", - - "stp3": "Imposta variabili", - "e_v": "Variabili dell'ambiente", - "vl": "Volume", - "fl_v": "Variabili del filtro", - "fl_w": "Larghezza del filtro", - - "stp4": "Scorri per selezionare F* o inserisci il suo valore", - "slct_v": "Valore selezionato", - "stp5": "Selettore di P*", - "inc": "Incrementa di", - - "lst_rl": "Ultima release", - - "new_a": "Nuova analisi", - "fs": "Dimensione font", - "pl": "Linee di preview", - "save": "Salva", - "lang": "Lingua", - "export_data": "Salva dati", - "settings": "Impostazioni", - "export_success": "Salvataggio completato", - "export_success_t": "Il file numpy è stato scritto in \"{}\"", - "export_fail": "Salvataggio fallito", - "export_fail_t": "Non posso scrivere i dati numpy nel file \"{}\"", - "description_loaded": "descrizione di \"{}\" caricata dal file ({})", - "last_release": "Ultimo rilascio: {}", - "display_error": "Errore di visualizzazione", - "display_error_t" : "Non posso mostrare un anteprima di questo file", - "swich_to_dict_t" : "Impostare il tipo di file a 'dict'?", - "invalid_format": "Formato invalido!", - "invalid_format_t": "Il file che hai selezionato ha un formato invalido!", - "file_not_exist": "Il file non esiste!", - "file_not_exist_t": "Il file che hai selezionato non esiste!", - "no_file": "Nessun file selezionato!", - "no_file_t": "È necessario selezionare un file dei dati!", - "select_units": "Seleziona le unità di misura", - "units": "Unità :", - "value_error": "Valore errato", - "only_one_T": "Si deve assegnare una sola volta l'etichetta \"Temperature\"", - "only_one_E": "Si deve assegnare una sola volta l'etichetta \"Energy current\"", - "only_one_Volume": "Si deve assegnare una sola volta l'etichetta \"Volume\"", - "only_one_DT": "Si deve assegnare una sola volta l'etichetta \"DT_FS\"", - "no_key": "Nessuna chiave selezionata", - "no_key_t": "È necessario selezionare almeno una chiave!", - "units_loaded": "unità di misura caricate dal file ({})", - "read_error": "Errore di lettura", - "read_error_t": "Lettura dal file fallita.", - "temp_low": "La temperatura non può essere negativa", - "temp_void": "Il campo \"temperatura\" non può essere vuoto", - "vol_low": "Il volume non può essere negativo", - "vol_void": "Il campo \"volume\" non può essere vuoto", - "DT_low": "DT_FS non può essere negativo", - "DT_void": "Il campo \"DT_FS\" non può essere vuoto", - "fw_low": "La larghezza del filtro non può essere negativa", - "fw_void": "Il campo \"larghezza del filtro\" non può essere vuoto", - "automatic_T": "La temperatura verrà calcolata automaticamente", - "automatic_V": "Il volume verrà calcolato automaticamente", - "automatic_DT": "Il timestep verrà calcolato automaticamente", - "back_reset": "Andare indietro?", - "back_reset_t": "Salvo le modifiche?\nSe si riapre lo stesso file\ni valori scelti non saranno cancellati!", - "fs_loaded": "F* caricato dal file di input ({})" } } diff --git a/sportran_gui/core/control_unit.py b/sportran_gui/core/control_unit.py index 467c962..a237d73 100644 --- a/sportran_gui/core/control_unit.py +++ b/sportran_gui/core/control_unit.py @@ -214,7 +214,7 @@ def new(main): global log data = Data() main.show_frame(main.home) - log.set_method(None) + log = PrintMethod() # -------- GRAPH SECTION -------- @@ -439,8 +439,8 @@ def load_data(inputfile, input_format, _selected_keys, temperature=None, NSTEPS= data.currents = currents # create Current object emsgs = [] - if volume is not -1: - if temperature is not -1: + if volume != -1: + if temperature != -1: data.j = Current(currents, UNITS=data.units, DT_FS=DT_FS, TEMPERATURE=temperature, VOLUME=volume, PSD_FILTER_W=psd_filter_w) else: diff --git a/sportran_gui/interfaces/fstarSelector.py b/sportran_gui/interfaces/fstarSelector.py index 0bedd08..6413c4f 100644 --- a/sportran_gui/interfaces/fstarSelector.py +++ b/sportran_gui/interfaces/fstarSelector.py @@ -20,8 +20,6 @@ def __init__(self, parent, main): self.filter_width_value = DoubleVar() # self.main_frame.grid(column=0, row=0, sticky='nsew') - # Label(self.main_frame, text='Select F*', font='Arial 14 bold').grid(row=0, column=0) - self.sections = Frame(self.main_frame, pady=20) self.sections.grid(row=0, column=0, sticky='nsew') @@ -32,7 +30,7 @@ def __init__(self, parent, main): slider_frame = Frame(self.sections) slider_frame.pack(side=TOP, anchor='w', padx=20, fill=BOTH) - Label(slider_frame, text=LANGUAGES[settings.LANGUAGE]['stp4'], + Label(slider_frame, text=LANGUAGES[settings.LANGUAGE]['fslide'], font='Arial 12').grid(row=0, column=1, sticky='w', padx=20) self.slider = ttk.Scale(slider_frame, from_=0, to_=0.1) @@ -53,6 +51,9 @@ def __init__(self, parent, main): value_frame = Frame(self.sections) value_frame.pack(side=TOP, pady=10, padx=20, fill=BOTH, expand=1) + Label(value_frame, text=LANGUAGES[settings.LANGUAGE]['stp4'], + font='Arial 12 bold').grid(row=0, column=0, sticky='w') + ttk.Separator(value_frame, orient=HORIZONTAL).grid(row=0, column=0, sticky='we', columnspan=4, pady=5, padx=20) Label(value_frame, text=LANGUAGES[settings.LANGUAGE]['slct_v'] + ': ')\ diff --git a/sportran_gui/interfaces/otherVariables.py b/sportran_gui/interfaces/otherVariables.py index f5df41a..b8d21b4 100644 --- a/sportran_gui/interfaces/otherVariables.py +++ b/sportran_gui/interfaces/otherVariables.py @@ -45,7 +45,7 @@ def __init__(self, parent, main): self.temp_advertise.grid(row=3, column=2, sticky='w') Label(variable_frame, - text=LANGUAGES[settings.LANGUAGE]['volume'] + ' (angstrom^3):').grid(row=4, column=0, sticky='w') + text=LANGUAGES[settings.LANGUAGE]['volume'] + ' (Angstrom^3):').grid(row=4, column=0, sticky='w') self.volume_entry = Spinbox(variable_frame, from_=0.1, to=10000, increment=0.1, bd=1, relief=SOLID, textvariable=self.volume_value) self.volume_entry.grid(row=4, column=1, padx=2, sticky='w') diff --git a/sportran_gui/interfaces/pstarSelector.py b/sportran_gui/interfaces/pstarSelector.py index c343f30..0620ed1 100644 --- a/sportran_gui/interfaces/pstarSelector.py +++ b/sportran_gui/interfaces/pstarSelector.py @@ -58,16 +58,18 @@ def __init__(self, parent, main): font='Arial 12 bold').grid(row=0, column=0, sticky='w') ttk.Separator(value_frame, orient=HORIZONTAL).grid(row=1, column=0, sticky='we', pady=10, columnspan=5) - Label(value_frame, text='P*: ', font='Arial 12').grid(row=2, column=0, sticky='w') + Label(value_frame, text=LANGUAGES[settings.LANGUAGE]['pstar_cmt'], + font='Arial 12').grid(row=2, column=0, sticky='w') + Label(value_frame, text='P*: ', font='Arial 12').grid(row=3, column=0, sticky='w') self.value_entry = Spinbox(value_frame, bd=1, relief=SOLID, increment=1) - self.value_entry.grid(row=2, column=1, sticky='w') + self.value_entry.grid(row=3, column=1, sticky='w') self.increment = IntVar() Label(value_frame, text=LANGUAGES[settings.LANGUAGE]['inc'], - font='Arial 12').grid(row=3, column=0, sticky='w', pady=10) + font='Arial 12').grid(row=4, column=0, sticky='w', pady=10) rdbt_frame = Frame(value_frame) - rdbt_frame.grid(row=3, column=1, sticky='w') + rdbt_frame.grid(row=4, column=1, sticky='w') Radiobutton(rdbt_frame, text='1', font='Arial 11 bold', variable=self.increment, value=1, command=self._change_increment).pack(side=LEFT)