Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:software:matlab:tsim:dev:i:index

Ideen

Eine Sammlung von Ideen für die weitere Entwicklung des TSim-Moduls der trEPR-Toolbox.

Grober Ablauf

Mögliches Ablaufschema für Simulation und Fit. Grundlage sowohl für die Dokumentation der Aufgaben als auch des entsprechenden Ablaufschemas (Flow Chart).

Sim

  1. Definition Spin-System (Exp, Sys)
    • CLI und GUI
    • Funktion, die Sys und Exp zurückgibt
    • Alternativ: Laden einer Simulation im Toolbox-Format
  2. Simulation
    • Gegebenenfalls Darstellung
  3. Export nach trEPR-Toolbox
    • Speichern via trEPR-Toolbox-Funktion

Fit

  1. Experimentelle Daten laden
    → trEPRload
  2. Spin-System definieren
    • Alternativ: alten Fit laden
  3. Anfangsparameter festlegen
  4. Fit-Optionen festlegen
  5. Fit mit Fortschrittsanzeige
  6. Fit-Report mit Entscheidungsmöglichkeit für weiteres Vorgehen
    • Erneuter Fit: siehe Punkt 3
  7. Export nach trEPR-Toolbox

Datenstruktur des TSim-Moduls

Grundlage: Datenstruktur der trEPR-Toolbox.

Überlegungen:

  • TSim als Struktur auf oberster Ebene
    • Enthält alle Parameter des TSim-Moduls
  • calculated (oder ähnlich benannt) als Matrix auf der obersten Ebene
    • Enthält die simulierten Daten
    • Parallel zu data (experimentelle Daten)
    • Auf Dauer soll die trEPR-Toolbox dieses generische Feld „verstehen“ und verarbeiten können.1)

Es gibt bereits Anfänge einer Dokumentation der Datenstruktur des TSim-Moduls.

Wunschliste

  • Reorganisation der sim und fit Parameter, so dass mehr Einheitlichkeit herrscht
    • Reorganisation der Fitparameter, so daß sie über Namen angesprochen werden können
    • Alle Parameter (sim und fit) gemeinsam (?)
    • Wichtig: Es gibt einen minimalen Satz an Simulationsparametern
  • scale als möglicher Simulationsparameter
    • alternativ: Normierung sowohl der Simulation als auch der experimentellen Daten
    • scale entsprechend kein Simulationsparameter, aber ein Fitparameter
  • Stillschweigendes Ignorieren von gStrain in Kombination mit DStrain
    • Stillschweigen brechen und Warnung ausgeben?
  • EasySpins „Opt“-Feld (mehr) nutzen
    • Vollständige Unterstützung der möglichen Felder :?:
  • Saubere Dokumentation
    • Sämtliche Entscheidungen, die innerhalb des Moduls programmatisch getroffen wurden, dokumentieren.
    • Nutzung des Moduls ausführlich(er) beschreiben.
    • Verweis auf die relevanten Seiten auf easyspin.org :?:
  • Eingabeüberprüfung der Nutzereingaben
    • sanitiseNumericInput verwenden? (machte Probleme?)
  • Robuster Code
    • Abfangen von EasySpin-Fehlern (try/catch)
    • Abfangen von Fehlern beim Laden von Daten (falscher Pfad etc.)
  • Temperaturen normiert ausgeben
    • Aus irgendeinem Grund scheint der Zahlenwert beim Fitten die Normierung zu verlieren
    • Wichtig: pepper normiert intern sowieso
  • Allgemeine Struktur sim für den Toolbox-Datensatz
    • Felder überlegen (möglichst generisch, für alle Arten von Simulationen)
    • in Toolbox implementieren
  • Datensatz laden
    • Parameter (TSim-Struktur) in Simulation/Fit übernehmen können
  • CLI
    • Rückspringen in vorherige Schleifen ermöglichen :?:
  • Fit stoppen
    • Gibt es eine schlaue Möglichkeit, den Fit anzuhalten (ohne dabei alles zu beenden?)
  • Fit-CLI
    • Zusammenspiel von Simulationsparametern und Fitparametern
    • Es ist momentan unklar, was passiert, wenn man einen zusätzlichen Simulationsparameter auswählt, aber nicht mitfittet. Insbesondere ist unklar, welchen Wert dieser Parameter zugewiesen bekommt.
    • Man sollte sich einen sinnvollen Umgang damit ausdenken (vernünftige Startwerte, ggf. aus der Konfiguration)
    • Übernahme von Simulationsparameter in den Fitzweig der Funktion funktioniert nicht.
  • Überprüfung der Grenzen für Fit-Parameter
    • z.B. dürfen Strains nicht negativ werden
    • ggf. in der globalen Definition der Parameter als Bedingung mit ablegen

Für lange Winterabende mit Punsch etc.

  • Umstellung der weiteren Entwicklung auf TDD
1)
DM: „Fressen und scheißen.“
de/software/matlab/tsim/dev/i/index.txt · Zuletzt geändert: 2020/09/30 21:35 von 127.0.0.1