diff --git a/SLEW_Case1_Electromagnetic_Phenomena.ipynb b/SLEW_Case1_Electromagnetic_Phenomena.ipynb index cc6433de28c44193307ffe48fed7dc4729688bfc..aa830d393bee126fb60826996afada9623cef5c6 100644 --- a/SLEW_Case1_Electromagnetic_Phenomena.ipynb +++ b/SLEW_Case1_Electromagnetic_Phenomena.ipynb @@ -51,22 +51,16 @@ "metadata": {}, "source": [ "A round-rotor machine has the following values:\n", - "- $X_d = 1.8099$\n", - "- $X_q = 1.76$\n", - "- $X_{fd} = 0.1648$\n", - "- $X_l = 0.15$\n", - "- $T'_{d_0} = 8.0669 s$\n", - "- $X'_q = 0.65$\n", - "- $T'_{q_0} = 0.9991 s$\n", - "- $X''_d = 0.2299$\n", - "- $T''_{d_0} = 0.03 s$" + "- $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$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Case questions" + "## Case tasks" ] }, { @@ -74,13 +68,13 @@ "metadata": {}, "source": [ "1. Calculate $X'_d$, $R_{fd}$, $X_{Dd}$ and $R_{Dd}$ from the given quantities (you can neglect the leakage inductance).\n", - "2. Apply $T'_{do}$ and $T''_{do}$ by adjusting *Td0_t* and *Td0_s* in VILLASweb and generate the corresponding short-circuit current plot. \n", + "2. Apply $X'_d$ by adjusting *Ld_t* in VILLASweb and generate the corresponding short-circuit current plot. \n", "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. \n", "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.) Apply the new $T''_{do}$ by adjusting *Td0_s* in VILLASweb, run the simulation and observe the impact of such increase. " + " 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. " ] }, { @@ -191,12 +185,13 @@ "# Plot the currents\n", "plt.figure(figsize=(8,12))\n", "name_list = ['i_gen_0', 'i_gen_1', 'i_gen_2']\n", + "phases = ['a', 'b', 'c']\n", "for name in name_list:\n", " i = name_list.index(name)\n", " plt.subplot(3,1,1+i)\n", " plt.ylabel(\"current (kA)\")\n", " plt.xlabel(\"time (s)\")\n", - " plt.plot(ts_res1[name].time, ts_res1[name].values/1e3, label='Task 3 (phase '+str(i)+')', color='C0')\n", + " plt.plot(ts_res1[name].time, ts_res1[name].values/1e3, label='SG task 2 (phase '+phases[i]+')', color='C0')\n", " plt.xlim([0, 1])\n", " plt.legend(loc='upper right')\n", "plt.show()" @@ -264,13 +259,14 @@ "# Plot the currents\n", "plt.figure(figsize=(8,12))\n", "name_list = ['i_gen_0', 'i_gen_1', 'i_gen_2']\n", + "phases = ['a', 'b', 'c']\n", "for name in name_list:\n", " i = name_list.index(name)\n", " plt.subplot(3,1,1+i)\n", " plt.ylabel(\"current (kA)\")\n", " plt.xlabel(\"time (s)\")\n", - " plt.plot(ts_res1[name].time, ts_res1[name].values/1e3, label='Task 3 (phase '+str(i)+')', color='C0')\n", - " plt.plot(ts_res2[name].time, ts_res2[name].values/1e3, label='Task 4 (phase '+str(i)+')', color='C1', linestyle=':')\n", + " plt.plot(ts_res1[name].time, ts_res1[name].values/1e3, label='SG task 2 (phase '+phases[i]+')', color='C0')\n", + " plt.plot(ts_res2[name].time, ts_res2[name].values/1e3, label='SG task 3 (phase '+phases[i]+')', color='C1', linestyle=':')\n", " plt.xlim([0, 1])\n", " plt.legend(loc='upper right')\n", "plt.show()" @@ -338,13 +334,14 @@ "# Plot the currents\n", "plt.figure(figsize=(8,12))\n", "name_list = ['i_gen_0', 'i_gen_1', 'i_gen_2']\n", + "phases = ['a', 'b', 'c']\n", "for name in name_list:\n", " i = name_list.index(name)\n", " plt.subplot(3,1,1+i)\n", " plt.ylabel(\"current (kA)\")\n", " plt.xlabel(\"time (s)\")\n", - " plt.plot(ts_res1[name].time, ts_res1[name].values/1e3, label='Task 3 (phase '+str(i)+')', color='C0')\n", - " plt.plot(ts_res3[name].time, ts_res3[name].values/1e3, label='Task 5 (phase '+str(i)+')', color='C1', linestyle=':')\n", + " plt.plot(ts_res1[name].time, ts_res1[name].values/1e3, label='SG task 2 (phase '+phases[i]+')', color='C0')\n", + " plt.plot(ts_res3[name].time, ts_res3[name].values/1e3, label='SG task 4 (phase '+phases[i]+')', color='C1', linestyle=':')\n", " plt.xlim([0, 1])\n", " plt.legend(loc='upper right')\n", "plt.show()"