Skip to content
Snippets Groups Projects
Commit 2513cba0 authored by moritz.buchhorn's avatar moritz.buchhorn
Browse files

Merge branch 'week1'

parents 661cd898 dfe94011
Branches
No related tags found
No related merge requests found
%% Cell type:markdown id: tags:
# B.CTC: Einführung und Tests
Dieses Notebook ist ein vereinfachtes Beispiel für die Notebooks, die Sie in den kommenden Wochen zur Veranschaulichung der Inhalte erhalten werden. Jupyter Notebooks bestehen aus Zellen, die entweder Text (wie diese hier) oder ausführbaren Code enthalten können. Sie werden in diesem Modul keine eigenen Programme selbst schreiben, aber Anpassungen an bestehende Zellen machen.
Sie können jedes Notebook nach Ihrem Belieben verändern. Machen Sie sich keine Sorgen, dass etwas danach nicht mehr funktioniert; Sie können das ursprüngliche Notebook jederzeit neu herunterladen. Bitte installieren Sie keine neue Software, außer eine Aufgabe fordert Sie explizit dazu auf.
%% Cell type:markdown id: tags:
Live-Erklärung für:
- Ordneransicht
- Launcher
- Text
- Terminal
- Ausführen von Zellen (Shift-Enter / Strg-Enter)
- Kernel-Reset und Variablenlebensdauer
%% Cell type:markdown id: tags:
## Module laden
Die folgende Zelle ist eine Code-Zelle, das heißt sie enthält ausführbaren Python-Code. In diesem Fall befinden sich hier die Importbefehle für Module, die in der restlichen Übung benutzt werden. Führen Sie die Zelle aus. Wenn keine Fehlermeldung auftritt, ist alles gut gelaufen und die Module sind jetzt im Notebook verfügbar.
Python-Module stellen Funktionen oder Objekte bereit, die wir nicht selbst programmieren wollen. In den nächsten Wochen werden wir einige Module häufiger verwenden, insbesondere Numpy und Plotly.
%% Cell type:code id: tags:
``` python
import numpy as np
import plotly.graph_objects as go
```
%% Cell type:markdown id: tags:
## Plotly
Plotly ist ein Python-Modul zum Darstellen von Graphen. In der nächsten Zelle werden wir ein paar Datenpunkte für eine einfache Gausskurve erzeugen und diese anschließend mit Plotly plotten.
%% Cell type:code id: tags:
``` python
def gaussian(x, d, a):
"""Definiert eine Funktion, die den Wert einer Gaußkurve am Punkt x zurückliefert, mit den Parametern d und a"""
return d * np.exp(-a * x**2)
x_values = np.linspace(-5, 5, 100) # np.linspace erzeugt eine Liste von 100 Werten mit gleichem Abstand zwischen -5 und 5
y_values_11 = np.array([gaussian(x, 1, 1) for x in x_values]) # erzeugt eine neue Liste mit den Funktionswerten von gaussian an x_values
y_values_12 = np.array([gaussian(x, 1, 2) for x in x_values]) # erzeugt eine neue Liste mit den Funktionswerten von gaussian an x_values
```
%% Cell type:code id: tags:
``` python
fig = go.Figure() # erzeugt einen leeren Graphen
fig.update_layout(title="Gaußkurven f(x) = d exp(-a x<sup>2</sup>)",
xaxis_title="x",
yaxis_title="y",
template="simple_white") # passt die Titel an
fig.add_trace(go.Scatter(x=x_values, y=y_values_11, mode='lines', name="f(x), d = 1, a = 1")) # fügt dem Graphen eine Linie hinzu
fig.add_trace(go.Scatter(x=x_values, y=y_values_12, mode='lines', name="f(x), d = 1, a = 2")) # eine weitere Linie
fig.show() # zeigt den Graphen im Notebook
```
%% Cell type:markdown id: tags:
## ORCA
Im Quantenchemie-Teil dieses Moduls werden wir alle quantenchemischen Rechnungen mit ORCA durchführen. ORCA ist eine voll ausgestattete Quantenchemie-Software, die auch in der Forschung verwendet wird. Um eine Rechnung durchzuführen, wird ein _input file_ benötigt, also eine Textdatei, in der wir die Details unserer Rechnung spezifizieren. Sie werden in den nächsten Wochen lernen, welche Informationen benötigt werden, für heute können Sie einfach die beiliegende Datei **h2.inp** benutzen.
Öffnen Sie einen Terminal-Tab im Jupyterhub und gehen Sie in den Ordner für die Übung (`cd 01-intro`). Sie können sich mit `ls` den Inhalt des aktuellen Ordners anzeigen lassen. Wenn sie im richtigen Ordner sind und die Datei gefunden haben, führen Sie ORCA aus und übergeben das _input file_ als Parameter: `orca h2.inp > h2.out`. Mit dem `>` wird die erzeugte Textausgabe direkt in eine Datei umgeleitet, in dem Fall mit dem Namen **h2.out**. Wenn der Befehl ohne Fehlermeldung lief, können sich diese neue Datei im Editor anschauen. Die Rechnung hat weitere Dateien erzeugt, die für uns zunächst nicht wichtig sind.
Sie finden im _output file_ in der Regel alle wichtigen Informationen, wie die elektronische Energie und daraus abgeleitete Größen. Scrollen Sie durch die Datei und versuchen Sie, Ihnen bekannte Größen zu finden.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment