From 482aafbb1620ada92c25b18a4779f1be4d2f1c0f Mon Sep 17 00:00:00 2001 From: Jan Dinkelbach <jdinkelbach@eonerc.rwth-aachen.de> Date: Mon, 25 Oct 2021 11:05:11 +0000 Subject: [PATCH] revise slew case 1 notebook and include calculation checks --- SLEW_Case1_Electromagnetic_Phenomena.ipynb | 192 +++++++++++++++++++-- outputs/output.mat | Bin 0 -> 444 bytes 2 files changed, 174 insertions(+), 18 deletions(-) create mode 100644 outputs/output.mat diff --git a/SLEW_Case1_Electromagnetic_Phenomena.ipynb b/SLEW_Case1_Electromagnetic_Phenomena.ipynb index ca3d54d..c750a60 100644 --- a/SLEW_Case1_Electromagnetic_Phenomena.ipynb +++ b/SLEW_Case1_Electromagnetic_Phenomena.ipynb @@ -42,7 +42,8 @@ "A round-rotor machine has the following values:\n", "- $X_{fd} = 0.1648$, $X_l = 0.15$, $X_d = 1.8099$, $X_q = 1.76$\n", "- $T'_{d_0} = 8.0669 s$, $T''_{d_0} = 0.03 s$, $T'_{q_0} = 0.9991 s$, $T''_{q_0} = 0.07 s$\n", - "- $X''_d = 0.2299$, $X'_q = 0.65$, $X''_q = 0.25$" + "- $X''_d = 0.2299$, $X'_q = 0.65$, $X''_q = 0.25$\n", + "- $f_n = 60 Hz$" ] }, { @@ -70,7 +71,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "**You can process the results from VILLASweb (as required in 2, 3b and 4b) using the prepared notebook cells below.**" + "**You can check your calculation solutions and process the results from VILLASweb using the prepared notebook cells below.**" ] }, { @@ -84,7 +85,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "#### First Setup your Python for post-processing" + "#### Setup your Python for post-processing" ] }, { @@ -108,10 +109,96 @@ "from villas.dataprocessing.readtools import *\n", "from villas.dataprocessing.timeseries import *\n", "import matplotlib.pyplot as plt\n", + "import scipy.io as sio\n", + "outputs = sio.loadmat('outputs/output.mat', simplify_cells=True)\n", "\n", "%matplotlib widget" ] }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Subtask 1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*Calculate $X'_d$, $R_{fd}$, $X_{Dd}$ and $R_{Dd}$ from the given quantities (you can neglect the leakage inductance).*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To check your results, enter your solution for $X'_d$ rounded to 4 digits behind the comma:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "Xd_t=input('Xd_t:')\n", + "print('Your result is', 'correct!' if round(float(Xd_t),4)==round(outputs['Xd_t'],4) else 'incorrect. You should double-check your calculations.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To check your results, enter your solution for $R_{fd}$ rounded to 4 digits behind the comma:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "Rfd=input('Rfd:')\n", + "print('Your result is', 'correct!' if round(float(Rfd),4)==round(outputs['Rfd'],4) else 'incorrect. You should double-check your calculations.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To check your results, enter your solution for $X_{Dd}$ rounded to 4 digits behind the comma:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "XDd=input('XDd:')\n", + "print('Your result is', 'correct!' if round(float(XDd),4)==round(outputs['XDd'],4) else 'incorrect. You should double-check your calculations.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To check your results, enter your solution for $R_{Dd}$ rounded to 4 digits behind the comma:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "RDd=input('RDd:')\n", + "print('Your result is', 'correct!' if round(float(RDd),4)==round(outputs['RDd'],4) else 'incorrect. You should double-check your calculations.')" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -123,14 +210,16 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "#### Download simulation results from VILLASweb" + "*Apply $X'_d$ by adjusting *Ld_t* in VILLASweb and generate the corresponding short-circuit current plot.*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Enter your result download/import code snippet in the following cell:" + "Enter VILLASweb under [https://slew.rwth-aachen.de/](https://slew.rwth-aachen.de/). \n", + "Adjust the parameter *Ld_t* and run a corresponding simulation. Further instructions on how to handle VILLASweb you can find in the [SLEW Platform Tutorial](./SLEW_Platform_Tutorial.ipynb). \n", + "Then, enter your code snippet for result download in the following cell:" ] }, { @@ -190,21 +279,58 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Subtask 3b" + "### Subtask 3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*3. The open circuit time constant $T'_{do}$ shall be increased to $18s$ \n", + " a.) Find the corresponding value of $R_{fd}$ that leads to that increase. \n", + " b.) Apply the new $T'_{do}$ by adjusting *Td0_t* in VILLASweb, run the simulation and observe the impact of such increase.*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### a.)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To check your results, enter your solution for $R_{fd}$ rounded to 7 digits behind the comma:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "Rfd_T3a=input('Rfd in Subtask 3:')\n", + "print('Your result is', 'correct!' if round(float(Rfd_T3a),7)==round(outputs['Rfd_T3a'],7) else 'incorrect. You should double-check your calculations.')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "#### Download simulation results from VILLASweb" + "### b.)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Enter your result download/import code snippet in the following cell:" + "Enter VILLASweb under [https://slew.rwth-aachen.de/](https://slew.rwth-aachen.de/). \n", + "Adjust the parameter *Td0_t* and run a corresponding simulation. Further instructions on how to handle VILLASweb you can find in the [SLEW Platform Tutorial](./SLEW_Platform_Tutorial.ipynb). \n", + "Then, enter your code snippet for result download in the following cell:" ] }, { @@ -265,21 +391,58 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Subtask 4b" + "### Subtask 4" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*4. The open circuit time constant $T''_{do}$ shall be increased to $0.09s$ \n", + " a.) Find the corresponding value of $R_{Dd}$ that leads to that increase. \n", + " b.) Reset $T'_{do}$ to its original value and apply the new $T''_{do}$ instead by adjusting *Td0_s* in VILLASweb, run the simulation and observe the impact of such increase.* " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### a.)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To check your results, enter your solution for $R_{Dd}$ rounded to 4 digits behind the comma:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "RDd_T4a=input('RDd in Subtask 4:')\n", + "print('Your result is', 'correct!' if round(float(RDd_T4a),4)==round(outputs['RDd_T4a'],4) else 'incorrect. You should double-check your calculations.')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "#### Download simulation results from VILLASweb" + "### b.)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Enter your result download/import code snippet in the following cell:" + "Enter VILLASweb under [https://slew.rwth-aachen.de/](https://slew.rwth-aachen.de/). \n", + "Adjust the parameter *Td0_s* and run a corresponding simulation. Further instructions on how to handle VILLASweb you can find in the [SLEW Platform Tutorial](./SLEW_Platform_Tutorial.ipynb). \n", + "Then, enter your code snippet for result download in the following cell:" ] }, { @@ -335,13 +498,6 @@ " plt.legend(loc='upper right')\n", "plt.show()" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { diff --git a/outputs/output.mat b/outputs/output.mat new file mode 100644 index 0000000000000000000000000000000000000000..b636be9a75073ca68393f88ec250bfcf6c3ce8bf GIT binary patch literal 444 zcmeZu4DoSvQZUssQ1EpO(M`+DN!3vZ$Vn_o%P-2cQV4Jk_w+L}(NS<NN=+<DO;O0t zvr_QQ&r|SEE>SQtRWLNNGBvX@G*d7#Ffvpi5-`93qo*%F0|SFL0|P_FoX5!t2^$!a z%oLtATv9l|_0;%~p|SG>Z!Tu_kUc9`ZNHxK*RPtv<}Pa%NQ(hnO98SLrNlA?z9P>~ zenZcc2Q8=8^Y(PFo)DkG&k(D_`VXWJk5vItAgk`Y{(mau@YHkP7#w6+{XkmqS>@&3 z$#3WfvdaD1+TD`I_b<pXBwMm=2kFCORSU#diEkfjZ#?_{Eu-UIwm`gExSd_RYB<$H T_PB;wKA!Y2wVJ_cIcop_S~rd# literal 0 HcmV?d00001 -- GitLab