{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Kalkulation Spinnerei\n", "\n", "Das folgende Szenario ist eine Variante um die Anzahl der Puffer zu testen\n", "\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Flyer Puffer" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{0: 102890.64666666667, 1: 103604.44666666666, 2: 105333.16666666666, 3: 106046.96666666666, 4: 107732.12666666666, 5: 108445.92666666667, 6: 110174.64666666667, 7: 110888.44666666666, 8: 112573.60666666666, 9: 113287.40666666666}\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlYAAAGwCAYAAABrUCsdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABRIElEQVR4nO3deVxU5eIG8GdmYIZFBgVkk3XUVBRR2cQF60ZSkTfT9lIU15stXruZdq/aek1bbtc0l1TQstIW7aZmmZqYoiCCigsurIqAijDsDDPv7w9zfpKYoANnYJ7v5zOfe+ecd848A8U8zZz3PTIhhAARERER3TG51AGIiIiI2gsWKyIiIiITYbEiIiIiMhEWKyIiIiITYbEiIiIiMhEWKyIiIiITYbEiIiIiMhErqQNYEoPBgIKCAjg4OEAmk0kdh4iIiJpACIHy8nJ4enpCLv/zz6RYrFpRQUEBvL29pY5BREREtyE/Px9eXl5/OobFqhU5ODgAuPqLUavVEqchIiKiptBqtfD29ja+j/8ZFqtWdO3rP7VazWJFRETUxjTlNB6evE5ERERkIixWRERERCbCYkVERERkIixWRERERCbCYkVERERkIixWRERERCbCYkVERERkIixWRERERCbCYkVERERkIixWRERERCbCYkVERERkIixWRERERCbCYkVERERtnhACydklqKytlzQHixURERG1WXqDwLaMQoxaug+PL0/C+pR8SfNYSfrsRERERLehRqfHxrTz+DQxC1mXKgEASis5Sqt1kuZisSIiIqI2o6xKh88P5CJ+bw4uVdQCANQ2VhgT4YvYQX5wdbCRNB+LFREREZm986XVWP1bNr5MzkNVnR4A4Olog7gh/ngyzAcdVOZRacwjBREREVEjThZqsWJ3Fv53uAD1BgEA6OnugCnDNHioryesFeZ1ujiLFREREZkVIQSSsi5jRWIWfs28aNweoXHGlGEaDLurM2QymYQJb47FioiIiMzCtRl+yxPP4si5MgCAXAY8EOiBKZEa9PXqKG3AJmCxIiIiIknV6PT4OvUcVu7JQu7lKgCAykqOx0O8MXGoP3yd7SVO2HQsVkRERCSJK5V1+Gx/Ltbsy8HlyjoAQEc7a4yN8ENshC+cO6gkTth8LFZERETUqvJLqrDqt2ysT8lHte7qDL8uHW0xaag/Hg/1hp2y7daTtpuc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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":0,\n", " \"Neuenhauser-Putzmaschine\":0,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":0,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":0,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":0,\n", " \"Turm_Anzahl_Wendlungen\":0,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(10):\n", " Anzahl_MG.update({\"Flyer_Puffer\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Flyer-Puffer\")\n", "plt.show()\n", "\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Puffer" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{0: 104313.24666666666, 1: 105333.16666666666, 2: 106353.08666666667, 3: 107373.00666666665, 4: 108392.92666666667, 5: 109456.40666666666, 6: 110476.32666666666, 7: 111496.24666666666, 8: 112516.16666666666, 9: 113536.08666666667}\n" ] }, { "data": { "image/png": "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jrlz5/Ljjz96Lslgs9l+NUtJGGOA86VMREREKocL++0L+/HLKu9TFC9n1apVBrjoNnDgQGPM+cscjBs3zoSEhBin02nuvPNOs3v37l/cXkpKykWXWzDGmC1btpibbrrJOJ1O07BhQ/Pmm29e9Nj58+ebVq1aGYfDYdq3b2+WLl1abH1ps1zKhcst6Kabbrrppptule+Wlpb2q/t6mzElqV9SFtxuN0eOHCEgIACbzVam287OziY8PJy0tDQCAwPLdNtSevp5VCz6eVQs+nlULPp5/DpjDGfOnCEsLAy7/fKfoqrUZwVWNna73TNFWV4CAwP1F6MC0c+jYtHPo2LRz6Ni0c/j8oKCgko0rsJ+eF1ERESkslGxEhERESkjKlZVhNPpZMKECbogaQWhn0fFop9HxaKfR8Win0fZ0ofXRURERMqIjliJiIiIlBEVKxEREZEyomIlIiIiUkZUrERERETKiIpVFTB9+nSaNGmCr68v3bp1Y9OmTVZHqpYmTpzIddddR0BAAMHBwfTp04fdu3dbHUv+vzfffNPzvZ9incOHD/Poo49St25d/Pz86NixIz/++KPVsaoll8vFuHHjaNq0KX5+fjRv3pxXX321ZN+HJ79IxaqSmzdvHiNHjmTChAkkJCQQGRlJz549OXbsmNXRqp1vv/2WwYMH8/3337N8+XIKCwvp0aMHubm5Vker9n744Qc+/PBDOnXqZHWUau306dPceOON+Pj48MUXX7Bjxw7eeecdateubXW0aumtt95ixowZxMfHs3PnTt566y0mTZrEtGnTrI5WqelyC5Vct27duO6664iPjwfOfx9heHg4Q4cOZcyYMRanq96OHz9OcHAw3377LbfccovVcaqtnJwcYmJieP/993nttdeIiopiypQpVseqlsaMGcN3333H2rVrrY4iwD333ENISAj//Oc/Pcvuv/9+/Pz8+Pjjjy1MVrnpiFUlVlBQwObNm4mNjfUss9vtxMbGsmHDBguTCUBWVhYAderUsThJ9TZ48GDi4uKK/T0Ra3z++ed06dKFBx98kODgYKKjo/n73/9udaxq64YbbmDFihXs2bMHgC1btrBu3Truuusui5NVbvoS5krsxIkTuFwuQkJCii0PCQlh165dFqUSOH/kcMSIEdx444106NDB6jjV1ty5c0lISOCHH36wOooA+/fvZ8aMGYwcOZI///nP/PDDDwwbNgyHw8HAgQOtjlftjBkzhuzsbNq0aYOXlxcul4vXX3+dAQMGWB2tUlOxEikHgwcPJjk5mXXr1lkdpdpKS0tj+PDhLF++HF9fX6vjCOf/wdGlSxfeeOMNAKKjo0lOTuaDDz5QsbLA/Pnz+fe//83s2bNp3749SUlJjBgxgrCwMP08roKKVSVWr149vLy8yMjIKLY8IyOD0NBQi1LJkCFDWLJkCWvWrKFRo0ZWx6m2Nm/ezLFjx4iJifEsc7lcrFmzhvj4ePLz8/Hy8rIwYfXToEED2rVrV2xZ27Zt+fTTTy1KVL09//zzjBkzhkceeQSAjh07cvDgQSZOnKhidRX0GatKzOFw0LlzZ1asWOFZ5na7WbFiBd27d7cwWfVkjGHIkCEsWrSIlStX0rRpU6sjVWt33nkn27ZtIykpyXPr0qULAwYMICkpSaXKAjfeeONFlyDZs2cPjRs3tihR9Xb27Fns9uI1wMvLC7fbbVGiqkFHrCq5kSNHMnDgQLp06ULXrl2ZMmUKubm5PPHEE1ZHq3YGDx7M7Nmz+eyzzwgICCA9PR2AoKAg/Pz8LE5X/QQEBFz0+bYaNWpQt25dfe7NIs8++yw33HADb7zxBg899BCbNm3ib3/7G3/729+sjlYt9e7dm9dff52IiAjat29PYmIi7777Lk8++aTV0So1XW6hCoiPj2fy5Mmkp6cTFRXF1KlT6datm9Wxqh2bzXbJ5TNnzuTxxx+/tmHkkm677TZdbsFiS5YsYezYsezdu5emTZsycuRIfv/731sdq1o6c+YM48aNY9GiRRw7doywsDD69evH+PHjcTgcVsertFSsRERERMqIPmMlIiIiUkZUrERERETKiIqViIiISBlRsRIREREpIypWIiIiImVExUpERESkjKhYiYiIiJQRFSsRERGRMqJiJSJyFc6ePcv9999PYGAgNpuNzMzMSy4TkepBxUpEqrXHH38cm82GzWbD4XDQokULXnnlFYqKikr0+I8++oi1a9eyfv16jh49SlBQ0CWXiUj1oC9hFpFqr1evXsycOZP8/HyWLVvG4MGD8fHxYezYsb/62J9++om2bdsW+2LnSy0rLZfLhc1mw27Xv39FKhP9jRWRas/pdBIaGkrjxo155plniI2N5fPPP+e2225jxIgRxcb26dPH86Xat912G++88w5r1qzBZrNx2223XXIZQH5+PqNGjaJhw4bUqFGDbt26sXr1as92Z82aRa1atfj8889p164dTqeT1NTUa/MGiEiZ0RErEZH/4ufnx8mTJ3E6nZcdt3DhQsaMGUNycjILFy7E4XAAXHLZkCFD2LFjB3PnziUsLIxFixbRq1cvtm3bRsuWLYHzn9d66623+Mc//kHdunUJDg4u3xcqImVOxUpE5P8zxrBixQq++uorhg4dyg8//HDZ8XXq1MHf3x+Hw0FoaKhn+X8vS01NZebMmaSmphIWFgbAqFGj+PLLL5k5cyZvvPEGAIWFhbz//vtERkaW0ysUkfKmYiUi1d6SJUuoWbMmhYWFuN1u+vfvz0svvURcXFyZbH/btm24XC5atWpVbHl+fj5169b13Hc4HHTq1KlMnlNErKFiJSLV3u23386MGTNwOByEhYXh7X3+V6PdbscYU2xsYWFhqbefk5ODl5cXmzdvxsvLq9i6mjVrev7fz88Pm812Ba9ARCoKFSsRqfZq1KhBixYtLlpev359jh496rnvcrlITk7m9ttvL9X2o6OjcblcHDt2jJtvvvmq84pIxaWzAkVEfsEdd9zB0qVLWbp0Kbt27eKZZ565oot9tmrVigEDBvC73/2OhQsXkpKSwqZNm5g4cSJLly4t++AiYhkdsRIR+QVPPvkkW7Zs4Xe/+x3e3t48++yzpT5adcHMmTN57bXXeO655zh8+DD16tXj+uuv55577inj1CJiJZv57w8QiIiIiMgV0VSgiIiISBlRsRIREREpIypWIiIiImVExUpERESkjKhYiYiIiJQRFSsRERGRMqJiJSIiIlJGVKxEREREyoiKlYiIiEgZUbESERERKSMqViIiIiJl5P8B7vj7uLbluZAAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":0,\n", " \"Neuenhauser-Putzmaschine\":0,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":0,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":0,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":0,\n", " \"Turm_Anzahl_Wendlungen\":0,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(10):\n", " Anzahl_MG.update({\"Puffer\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Puffer\")\n", "plt.show()\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Anzahl der Pufferstrecken pro Puffer" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{2: 104765.42666666667, 3: 104880.98666666666, 4: 105217.60666666666, 5: 105333.16666666666, 6: 105669.78666666665, 7: 105785.34666666666, 8: 106121.96666666666, 9: 106237.52666666666}\n", "Hinweis: mind. 2 Pufferstrecken pro Puffer sollten existieren\n" ] }, { "data": { "image/png": "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lketlEol1qxZg2HDhqFPnz7YvXs3PD090bFjR2g0GmRkZFicT1Vd4uPjcf/99wMAysvLkZSUhOeff/6W67dq1QpqtRp//PEHdDodgIoCtH//fkyePPlf96XVaiv998FoNCItLa2Kz6biZ5GdnQ0bGxv4+vpW+fFE1o7Fiohuqm/fvpg6dSq2bduGVq1a4f3337+jyT7btm2LiIgIDB8+HO+99x4CAgJw8eJFxMbGomvXrggPD7/p49LS0vDZZ5/hP//5Dzw9PZGamooTJ05g+PDhAABfX1+kpaVJH+M5OjrecITompkzZ+Kxxx6Dj48PnnzySSiVShw6dAgpKSmYO3cuevfujfvvvx9PPPEE3n//fbRu3RrHjh2DQqHAww8/LG1HpVJh7dq1GDp0KPr27Yvdu3fD3d0dL730EqZMmQKz2Yx7770XBoMBf/zxB5ycnBAVFVXl1+x6y5YtQ5s2bdChQwcsXrwYV69exahRo265voODA5577jm8/PLLcHZ2ho+PDxYuXIjCwkKMHj36jnP07dsXK1euRP/+/dGkSRPMnDnzjk4qDw0NRUhICAYOHIiFCxeibdu2yMrKwrZt2/D444/f8DEuUV3DYkVENzVq1CgcOnQIw4cPh42NDaZMmVLlo1XXrFixAnPnzsWLL76Ic+fOoXnz5ggODsZjjz12y8c0atQIx44dw6pVq3D58mV4eHhgwoQJGDduHADgiSeewKZNm9CnTx/k5uZixYoVGDFixE23FRYWhq1bt2LOnDl45513YGtri/bt22PMmDHSOt988w1eeuklDB06FAUFBWjdujUWLFhww7ZsbGwQExODIUOGSOXqrbfegouLC+bPn4/Tp0+jSZMm6N69O1577bU7er2ut2DBAixYsADJyclo3bo1vvvuOzRv3vy2jzGbzXjmmWeQl5eHoKAgbN++HU2bNr3jHNOnT0daWhoee+wxaLVavPXWW3d0xEqhUOCHH37A66+/jpEjR+LixYtwd3fH/fffDzc3tzvOR2QtFOKfH5oTEZHszpw5Az8/Pxw8eJAzzBPVIZx5nYiIiKiasFgRERERVRN+FEhERERUTXjEioiIiKiasFgRERERVRMWKyIiIqJqwmJFREREVE1YrIiIiIiqCYsVERERUTVhsSIiIiKqJixWRERERNXk/wHXMq9EjH3glgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":0,\n", " \"Neuenhauser-Putzmaschine\":0,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":0,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":0,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":0,\n", " \"Turm_Anzahl_Wendlungen\":0,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(2, 10):\n", " Anzahl_MG.update({\"Anzahl_der_Pufferstrecken_pro_Puffer\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "print(\"Hinweis: mind. 2 Pufferstrecken pro Puffer sollten existieren\")\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Pufferstrecken pro Puffer\")\n", "plt.show()\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Flyer Electrojet incl intergrierte Putzmaschine Vorpuffer" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{2: 108484.83666666667, 3: 108600.39666666667, 4: 108937.01666666666, 5: 109052.57666666666, 6: 109389.19666666666, 7: 109504.75666666667, 8: 109841.37666666668, 9: 109956.93666666668}\n", "Vorpuffer sollte > 1 sein\n" ] }, { "data": { "image/png": "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7t27AwB8fHygUChqHLt06RIA4LvvvkPv3r1haWkJHx8fvPHGG6iqqpL2rVAo8Omnn+If//gHrKys8M4779THS0hEf5csP/1MRNRApk2bJtq3by+MRqM09uWXXwqNRiN+/vlnoVQqxZtvvinS09PF6tWrhUajEatXr5bmenl5CVtbW/H++++LCxcuiAsXLojMzEwBQLi7u4uvv/5anDlzRkyePFnY2NiIGzduCCGEWL16tbCzs6uWZfv27eLuX7O3b98W+/fvFwDE8ePHxdWrV0VxcfE9Y1VVVeLw4cPC1tZWrFmzRvz2229i7969ol27dmLevHnSvgEIZ2dn8eWXX4rffvtNZGVlNdyLSkS1xmJFRM3K2bNnBQBx6NAhaeyBBx4QERERYvz48WLYsGHV5k+bNk107dpVuu/l5SXCw8OrzblbrBYsWCCNVVZWCnd3d/Hee+8JIf66WAkhxIkTJwQAkZmZ+adjQ4cOFe+++261fX311VfC1dVVug9ATJ069c9fDCJqdPwqkIialc6dO6N///748ssvAQAXLlzAkSNHEBUVhbNnz2LAgAHV5g8YMAAZGRkwGAzSWEBAQI37Dg4Olv7Z3NwcAQEBOHv2bL0/h9TUVLz55puwtraWbs8++yyuXr2K27dv/2VOIpKPudwBiIjqW1RUFF566SUsW7YMq1evRvv27fHggw/W+vFWVlZ1PqZSqYT4/y6yvt8TyouLi/HGG29g1KhR92yztLSU/vl+chJRw+InVkTU7IwePRpKpRIbN27EunXrMGnSJCgUCnTp0gW//vprtbm//vorOnXqBDMzs7/cb1xcnPTPVVVVSEpKQpcuXQAAbdq0QVFREUpKSqQ5KSkp95W/d+/eSE9PR4cOHe65KZX8a5vIlPETKyJqdqytrTFmzBjMmjULer0eEydOBAC88sor6Nu3L9566y2MGTMGsbGxWLp0KZYvX16r/S5btgwdO3ZEly5d8OGHH6KgoACTJk0CAAQGBqJVq1Z49dVX8fLLLyM+Pv6eqxNra86cOXj00Ufh6emJJ554AkqlEqmpqTh9+jTefvvt+9onETUO/qcPETVLUVFRKCgoQGhoKNzc3ADc+SRo69at2Lx5M7p164Y5c+bgzTfflIrXX1mwYAEWLFgAf39/HD16FN9//z1at24NAHB0dMT69euxa9cudO/eHZs2bcK8efPuK3toaCh27tyJvXv3om/fvggKCsKHH34ILy+v+9ofETUerrxORPQXLl26BG9vb5w4cQI9e/aUOw4RmTB+YkVERERUT1isiIiIiOoJvwokIiIiqif8xIqIiIionrBYEREREdUTFisiIiKiesJiRURERFRPWKyIiIiI6gmLFREREVE9YbEiIiIiqicsVkRERET15P8BUFwjH9qc4/gAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":1,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2,\n", " \"Neuenhauser-Putzmaschine\":0,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":0,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":0,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":0,\n", " \"Turm_Anzahl_Wendlungen\":0,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(2, 10):\n", " Anzahl_MG.update({\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "print(\"Vorpuffer sollte > 1 sein\")\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Vorpuffer\")\n", "plt.show()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Flyer Electrojet incl intergrierte Putzmaschine Nachpuffer" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{2: 108937.01666666666, 3: 109052.57666666666, 4: 109389.19666666666, 5: 109504.75666666667, 6: 109841.37666666668, 7: 109956.93666666668, 8: 110337.11666666667, 9: 110409.11666666667}\n", "Vorpuffer sollte > 1 sein\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlYAAAGwCAYAAABrUCsdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABg80lEQVR4nO3deVxU5eIG8GcYmGHYF4URWQQ1F1JQkUWtropSmT9Ny1wvpl7zRpZRbreUdrcWNS1tuS65hHbTblmaYmYqorKouIWKgCK4wQwg68z7+8M8twks0IEzwPP9fOZzm3PeOec5c815OnPOOwohhAARERER3TMruQMQERERNRUsVkRERERmwmJFREREZCYsVkRERERmwmJFREREZCYsVkRERERmwmJFREREZCbWcgdoToxGI3Jzc+Ho6AiFQiF3HCIiIqoFIQSKiorg5eUFK6s/PyfFYtWAcnNz4ePjI3cMIiIiugs5OTnw9vb+0zEsVg3I0dERwK3/Y5ycnGROQ0RERLWh1+vh4+MjfY7/GRarBnT76z8nJycWKyIiokamNpfx8OJ1IiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyE1mL1d69ezF48GB4eXlBoVBg69atJuu//vprDBw4EO7u7lAoFEhLS6u2jbKyMsTExMDd3R0ODg4YPnw48vPza9zf9evX4e3tDYVCgcLCQpN1e/bsQffu3aFWq9GuXTusXr262uuXL1+ONm3awNbWFmFhYTh06NBdHjkRERGZW86Nm8i5cVPWDLIWq5KSEgQFBWH58uV3XN+nTx8sWLDgjtt48cUX8e2332Lz5s34+eefkZubi2HDhtU4duLEiejatWu15ZmZmRg0aBD69u2LtLQ0TJs2DZMmTcKOHTukMfHx8YiNjUVcXBxSUlIQFBSEqKgoXLlypY5HTUREROZwWVeKr1MuYvrmo+izYDceWPgTPvvlvKyZFEIIIWuC3ygUCmzZsgVDhw6ttu7ChQvw9/dHamoqgoODpeU6nQ4tW7bEhg0b8MQTTwAATp8+jU6dOiExMRHh4eHS2I8//hjx8fGYO3cu+vfvj4KCAri4uAAAZs6ciW3btiE9PV0aP3LkSBQWFmL79u0AgLCwMPTs2RPLli0DABiNRvj4+GDq1KmYNWtWrY5Rr9fD2dkZOp0OTk5OdXl7iIiImr2rReVIPH8dieeu4+D568i8VmKy3tpKgf8L8sL7TwWbdb91+fy2NuueG1hycjIqKysRGRkpLevYsSN8fX1NitXJkyfxxhtvICkpCefPV2+yiYmJJtsAgKioKEybNg0AUFFRgeTkZMyePVtab2VlhcjISCQmJt4xX3l5OcrLy6Xner3+ro6TiIioOSooqUBS5nUcOHerTGVcKTZZb6UAurR2Rnhbd0QEuKNnGzfYq+WtNo26WOXl5UGlUklnnm7z9PREXl4egFvlZtSoUVi0aBF8fX1rLFZ5eXnw9PSstg29Xo/S0lIUFBTAYDDUOOb06dN3zDdv3jy8/vrrd3l0REREzYu+rBKHzt9A4vlbZep0nh5//F6tUysn9LpdpPzd4KyxkSfsHTTqYlUbs2fPRqdOnTB27FhZ9h0bGys91+v18PHxafAcRERElqikvAqHL9yQvt5Lv6SD8Q9Fqr2Hw60i1dYdYf7ucLVXyRO2lhp1sdJqtaioqEBhYaHJWav8/HxotVoAwO7du3H8+HF89dVXAIDbl5S1aNECr7zyCl5//XVotdpqdxLm5+fDyckJGo0GSqUSSqWyxjG391MTtVoNtVptjkMlIiJq9MoqDUjOKkDiuetIPH8dR3MKUfWHJuXfwh7hAe7o1dYd4QHuaOnYuD5HG3Wx6tGjB2xsbJCQkIDhw4cDAM6cOYPs7GxEREQAAP7zn/+gtLRUes3hw4cxYcIE/PLLL2jbti0AICIiAt9//73Jtnfu3CltQ6VSoUePHkhISJAurjcajUhISMBzzz1X34dJRETUKJVXGZCWXSidkUrNLkSFwWgyxttVg4iAW2ekItq6o5WzRqa05iFrsSouLsbZs2el55mZmUhLS4Obmxt8fX1x48YNZGdnIzc3F8Ct0gTcOlOl1Wrh7OyMiRMnIjY2Fm5ubnBycsLUqVMREREhXbh+uzzddu3aNQBAp06dpLNcU6ZMwbJlyzBjxgxMmDABu3fvxqZNm7Bt2zbpdbGxsYiOjkZISAhCQ0OxePFilJSU4Omnn66394eIiKgxqTIYceyS7tYZqXPXcSTrBsoqTYuUp5Mavdq2kMqUj5udTGnrh6zF6siRI+jbt6/0/Pb1SNHR0Vi9ejX++9//mhSXkSNHAgDi4uLw2muvAQA++OADWFlZYfjw4SgvL0dUVBQ++uijOuXw9/fHtm3b8OKLL2LJkiXw9vbGZ599hqioKGnMU089hatXr2Lu3LnIy8tDcHAwtm/fXu2CdiIioubCYBQ4matH4vlrOHDuOg5n3kBJhcFkTAsHFcJvn5EKcId/C3soFAqZEtc/i5nHqjngPFZERNSYGY0CZ/KLpGukks5fh76symSMs8YG4QFut85KtXVHew+HRl+kms08VkRERFR/hBA4d7UEieeuIfH8dRw8fwM3SipMxjiqrRHq7yZdI9VJ6wQrq8ZdpO4FixUREREBuFWksm/clCbkTDx/HVeLyk3G2KmUCGnjhojf7twL9HKCtVLWX8izKCxWREREzdilwlIknruOA+eu4eC568jVlZmsV1lbIcTPVbrYvKu3C1TWLFJ3wmJFRETUjFzRl0nTHxw4dx3ZN26arLdRKtDNx1X6mZhuvi6wtVHKlLbxYbEiIiJqwq4Xl+Pg+RtIPH8Nieeu49xV0x8uVlop0KW1szS7eQ8/V9ipWA/uFt85IiKiJkR3sxIHM2+dkTp4/jpO5xWZrFcogEAvp9+ukWqBkDaucLS1rN/ba8xYrIiIiJqA747lYsXP53Ait/oPF3fUOko/ExPm7w5nOxap+sJiRURE1MgdvnADL3yZBsNvv7vXtqX9bxNytkB4gBvcHRrX7+01ZixWREREjVhBSQWe35gKg1FgUNdWmPtYZ3g62codq9lisSIiImqkhBB4efNRXNaVIaCFPRYM7woHNT/a5cSJKIiIiBqpz/dlIuH0FaisrfDh6G4sVRaAxYqIiKgRSsspxILtpwEAcx7rjEAvZ5kTEcBiRURE1OjoSisxdWMKKg0Cj3bRYmyYr9yR6DcsVkRERI2IEAKzvz6GnBul8HHTYN6wrlAomu+PHlsaFisiIqJGZF1SNr4/ngcbpQLLRnWHs4ZzUlkSFisiIqJG4kSuDm9+dxIAMPPhjgjycZE3EFXDYkVERNQIFJdXYeqGVFRUGdG/owcm9vGXOxLVgMWKiIjIwgkh8OqW4zh/rQStnG3x7pNBvK7KQrFYERERWbjNyRexNS0XSisFlo7qBld7ldyR6A5YrIiIiCxYRn4R5n6TDgCIHXAferZxkzkR/RkWKyIiIgtVWmFAzIYUlFUa8UD7FvjnQ23ljkR/gcWKiIjIQr3+7Qn8ml+Mlo5qvD8iGFZWvK7K0rFYERERWaBv0i7hy8M5UCiAJU8Fo6WjWu5IVAssVkRERBbm/NVi/Ovr4wCAqf3ao1e7FjInotpisSIiIrIgZZUGPLchFSUVBoT5u+GF/u3ljkR1wGJFRERkQd75/hROXtbDzV6FJSO7QcnrqhoVFisiIiIL8cPxy1ibmAUAeG9EELTOtjInorpisSIiIrIAOTduYsZ/jgEAnnkoAH07eMiciO4GixUREZHMKqqMeG5jKorKqtDN1wUvD+wgdyS6SyxWREREMlu04zSO5hTCydYaH47qBhslP54bK/4/R0REJKOEU/n49JdMAMCiJ4Pg7WoncyK6FyxWREREMrmsK8VLm48CAMb3aoOoQK3MiehesVgRERHJoMpgxPMbU1F4sxJdWjtj9qMd5Y5EZsBiRUREJIPFuzJw+EIBHNTWWDa6G9TWSrkjkRmwWBERETWwXzKuYvmeswCA+cO7wM/dXuZEZC6yFqu9e/di8ODB8PLygkKhwNatW03Wf/311xg4cCDc3d2hUCiQlpZWbRtlZWWIiYmBu7s7HBwcMHz4cOTn50vrjx49ilGjRsHHxwcajQadOnXCkiVLqm1nz5496N69O9RqNdq1a4fVq1dXG7N8+XK0adMGtra2CAsLw6FDh+71LSAiombmSlEZXoxPgxDA6DBfPNbVS+5IZEayFquSkhIEBQVh+fLld1zfp08fLFiw4I7bePHFF/Htt99i8+bN+Pnnn5Gbm4thw4ZJ65OTk+Hh4YF169bhxIkTeOWVVzB79mwsW7ZMGpOZmYlBgwahb9++SEtLw7Rp0zBp0iTs2LFDGhMfH4/Y2FjExcUhJSUFQUFBiIqKwpUrV8zwThARUXNgMApM+zIN14or0FHriLmPdZY7EpmZQggh5A4BAAqFAlu2bMHQoUOrrbtw4QL8/f2RmpqK4OBgablOp0PLli2xYcMGPPHEEwCA06dPo1OnTkhMTER4eHiN+4qJicGpU6ewe/duAMDMmTOxbds2pKenS2NGjhyJwsJCbN++HQAQFhaGnj17SoXMaDTCx8cHU6dOxaxZs2p1jHq9Hs7OztDpdHBycqrVa4iIqOn4MCED7+38FRobJb6d2gftPBzkjkS1UJfP70Z9jVVycjIqKysRGRkpLevYsSN8fX2RmJh4x9fpdDq4ublJzxMTE022AQBRUVHSNioqKpCcnGwyxsrKCpGRkX+6n/Lycuj1epMHERE1T0nnr+ODXb8CAN4aej9LVRPVqItVXl4eVCoVXFxcTJZ7enoiLy+vxtccOHAA8fHxmDx5ssl2PD09q21Dr9ejtLQU165dg8FgqHHMnfYDAPPmzYOzs7P08PHxqeMREhFRU3C9uBzPf5kKowCGd/fG8B7eckeietKoi1VdpaenY8iQIYiLi8PAgQPrfX+zZ8+GTqeTHjk5OfW+TyIisixGo8BLm48iX1+Oti3t8caQQLkjUT2yljvAvdBqtaioqEBhYaHJWav8/Hxotaaz1548eRL9+/fH5MmT8eqrr1bbzu/vJLy9DScnJ2g0GiiVSiiVyhrH/HE/v6dWq6FWq+/y6IiIqCn4bN957DlzFWprKywb3R326kb90Ut/oVGfserRowdsbGyQkJAgLTtz5gyys7MREREhLTtx4gT69u2L6OhovP3229W2ExERYbINANi5c6e0DZVKhR49epiMMRqNSEhIMNkPERHR76VkF2Dh9jMAgLjBgejUijcuNXWy1ubi4mKcPXtWep6ZmYm0tDS4ubnB19cXN27cQHZ2NnJzcwHcKk3ArTNMWq0Wzs7OmDhxImJjY+Hm5gYnJydMnToVERER0h2B6enp6NevH6KiohAbGytdE6VUKtGyZUsAwJQpU7Bs2TLMmDEDEyZMwO7du7Fp0yZs27ZNyhYbG4vo6GiEhIQgNDQUixcvRklJCZ5++ukGea+IiKhx0d2sxNQNqagyCjzWtRVGhfI622ZByOinn34SAKo9oqOjhRBCrFq1qsb1cXFx0jZKS0vFs88+K1xdXYWdnZ14/PHHxeXLl6X1cXFxNW7Dz8+vWpbg4GChUqlEQECAWLVqVbW8H374ofD19RUqlUqEhoaKgwcP1ul4dTqdACB0Ol2dXkdERI2L0WgUk9ceFn4zvxMPLtwt9KUVckeie1CXz2+LmceqOeA8VkREzcOaAxcQ998TsFEq8PU/e6OLt7PckegeNJt5rIiIiCxN+iUd3t52CgDwr0c7sVQ1MyxWREREZlJUVonnNqSgwmDEgM6eGN+rjdyRqIGxWBEREZmBEAL/2pKOC9dvorWLBoue6AqFQiF3LGpgLFZERERmEH84B98ezYXSSoGlo7rBxU4ldySSAYsVERHRPTqTV4S4/54AAEyP6oAefq4yJyK5sFgRERHdg5sVVYjZkILyKiMeuq8lJj8QIHckkhGLFRER0T2I++YEzl4phqeTGu+PCIKVFa+ras5YrIiIiO7S1ykXsTn5IqwUwJKR3eDuwN+Hbe5YrIiIiO7C2SvFeHVrOgDghf73ITzAXeZEZAlYrIiIiOqorNKA5zak4GaFAREB7niuXzu5I5GFYLEiIiKqoze/O4nTeUVwt1dhychgKHldFf2GxYqIiKgOvjuWi/VJ2VAogA+eCoaHk63ckciCsFgRERHVUtb1Esz+z3EAwLN/a4sH72spcyKyNCxWREREtVBeZcBzG1JRVF6FED9XvBh5n9yRyAKxWBEREdXCgh/O4PglHVzsbLB0VDdYK/kRStXxTwUREdFf2HkyH//enwkAePeJIHi5aGRORJaKxYqIiOhPXCosxcubjwIAJvXxR2RnT5kTkSVjsSIiIrqDSoMRz29Mha60EkHezpjxcEe5I5GFY7EiIiK6g/d3/orkrAI42lpj2ejuUFnzY5P+HP+EEBER1eDnX6/i4z3nAAALhneFj5udzImoMWCxIiIi+oN8fRli49MAAOPC/fBol1byBqJGg8WKiIjodwxGgRe+TMX1kgp0auWEVwZ1kjsSNSIsVkRERL/z4e4MHDx/A3YqJZaP7gZbG6XckagRYbEiIiL6zYFz17AkIQMA8M7jXRDQ0kHmRNTYsFgREREBuFZcjmlfpkEIYESIN4Z2ay13JGqEWKyIiKjZMxoFYjcdxZWicrT3cMBr/xcodyRqpFisiIio2Vu59zz2/noVtjZWWD6mO+xU1nJHokaKxYqIiJq15KwbePfHMwCA1/8vEPd5OsqciBozFisiImq2Cm9WYOqGVBiMAkOCvTAixEfuSNTIsVgREVGzJITAy5uPIVdXhjbudnj78S5QKBRyx6JGjsWKiIiapVX7L2DXqXyolFZYNro7HNS8roruHYsVERE1O8cuFmLeD6cAAK8+1gn3t3aWORE1FSxWRETUrOjLKvHchlRUGgQeDtRiXLif3JGoCWGxIiKiZkMIgdlfH0f2jZvwdtVgwRNdeV0VmRWLFRERNRsbDmVj27HLsLZS4MNR3eCssZE7EjUxsharvXv3YvDgwfDy8oJCocDWrVtN1n/99dcYOHAg3N3doVAokJaWVm0bZWVliImJgbu7OxwcHDB8+HDk5+ebjMnOzsagQYNgZ2cHDw8PTJ8+HVVVVSZj9uzZg+7du0OtVqNdu3ZYvXp1tX0tX74cbdq0ga2tLcLCwnDo0KF7fQuIiKiBnLqsx+vfngQAzHy4I7r5usqciJoiWYtVSUkJgoKCsHz58juu79OnDxYsWHDHbbz44ov49ttvsXnzZvz888/Izc3FsGHDpPUGgwGDBg1CRUUFDhw4gDVr1mD16tWYO3euNCYzMxODBg1C3759kZaWhmnTpmHSpEnYsWOHNCY+Ph6xsbGIi4tDSkoKgoKCEBUVhStXrpjhnSAiovpUUl6FmA0pqKgyol9HD0zs4y93JGqqhIUAILZs2VLjuszMTAFApKammiwvLCwUNjY2YvPmzdKyU6dOCQAiMTFRCCHE999/L6ysrEReXp405uOPPxZOTk6ivLxcCCHEjBkzRGBgoMm2n3rqKREVFSU9Dw0NFTExMdJzg8EgvLy8xLx58+54TGVlZUKn00mPnJwcAUDodLo/fzOIiMhsjEajePHLVOE38zsR/s4ucaO4XO5I1MjodLpaf3436muskpOTUVlZicjISGlZx44d4evri8TERABAYmIiunTpAk9PT2lMVFQU9Ho9Tpw4IY35/TZuj7m9jYqKCiQnJ5uMsbKyQmRkpDSmJvPmzYOzs7P08PHhjL5ERA3tq+SL+Dr1EpRWCiwd1Q2u9iq5I1ET1qiLVV5eHlQqFVxcXEyWe3p6Ii8vTxrz+1J1e/3tdX82Rq/Xo7S0FNeuXYPBYKhxzO1t1GT27NnQ6XTSIycn566Ok4iI7k5GfhHmfnPrP6JjB9yHnm3cZE5ETR2nma1HarUaarVa7hhERM1SaYUBz21IRWmlAQ+0b4F/PtRW7kjUDDTqM1ZarRYVFRUoLCw0WZ6fnw+tViuN+eNdgref/9UYJycnaDQatGjRAkqlssYxt7dBRESW5Y3vTuBMfhFaOKjx/ohgWFlxviqqf426WPXo0QM2NjZISEiQlp05cwbZ2dmIiIgAAEREROD48eMmd+/t3LkTTk5O6Ny5szTm99u4Peb2NlQqFXr06GEyxmg0IiEhQRpDRESW45u0S9h4KAcKBbBkZDBaOvLbA2oYsn4VWFxcjLNnz0rPMzMzkZaWBjc3N/j6+uLGjRvIzs5Gbm4ugFulCbh1hkmr1cLZ2RkTJ05EbGws3Nzc4OTkhKlTpyIiIgLh4eEAgIEDB6Jz584YN24cFi5ciLy8PLz66quIiYmRvqabMmUKli1bhhkzZmDChAnYvXs3Nm3ahG3btknZYmNjER0djZCQEISGhmLx4sUoKSnB008/3VBvFxER1ULmtRL86+vjAICpfduhd7sWMieiZqUB7lK8o59++kkAqPaIjo4WQgixatWqGtfHxcVJ2ygtLRXPPvuscHV1FXZ2duLxxx8Xly9fNtnPhQsXxCOPPCI0Go1o0aKFeOmll0RlZWW1LMHBwUKlUomAgACxatWqank//PBD4evrK1QqlQgNDRUHDx6s0/HW5XZNIiKqu7LKKvHokr3Cb+Z34skVB0RllUHuSNQE1OXzWyGEEPJUuuZHr9fD2dkZOp0OTk5OcschImpyXvvvCaw+cAGudjb44YUHoXW2lTsSNQF1+fxu1NdYERER3bY9PQ+rD1wAALw/IpilimTB6RaIiKhRu1pUjk1HcrBizzkAwDMPBqBvRw+ZU1FzxWJFRESNjhACSZk3sO5gFnacyEOl4dZVLT3buOLlqA4yp6PmjMWKiIgaDV1pJb5OuYj1Sdk4e6VYWt7N1wVjw/wwqGsr2Ch5lQvJh8WKiIgs3vGLOqw7mIX/Hs1FaaUBAGCnUmJIcGuMDfdFoJezzAmJbmGxIiIii1RaYcC3R3OxPikLRy/qpOUdPB0xNtwXQ7u1hqOtjYwJiapjsSIiIoty9kox1idl4T/JF6EvqwIAqJRWeKSLFmPD/RDi5wqFgj9PQ5aJxYqIiGRXUWXEzpP5WHcwC4nnr0vLfdw0GBPmhyd7eMPdgT9LQ5aPxYqIiGRzqbAUG5Oy8eXhHFwrLgcAWCmAfh09MTbcFw+2b8kfT6ZGhcWKiIgalMEosDfjKtYfzMLu01dg/O33P1o6qjGqpw+eCvVFaxeNvCGJ7hKLFRERNYhrxbcm8tyQlI2LBaXS8l5t3TE23A8DOntyqgRq9FisiIio3gghcPhCAdYdzMIP6ZeliTydNTZ4ooc3Rof5om1LB5lTEpkPixUREZmdvqwSW1IuYX1SFn7N/99EnkE+Lhgb5ovBQV6wtVHKmJCofrBYERGR2aRf0mF9Uha+ScvFzYpbE3lqbJQY2s0LY8L8cH9rTuRJTRuLFRER3ZOyytsTeWYjLadQWt7ewwFjw/3wePfWcOJEntRMsFgREdFdOX+1GOuTsvFV8kXoSisBADZKBR6+vxXGhvki1N+NE3lSs8NiRUREtVZp+N9EngfO/W8iT29XDUaH+WJEiA9acCJPasZYrIiI6C/lFpbiy0O3JvK8UnRrIk+FAujXwQNjw/3w4H0toeREnkQsVkREVDOjUeCXs9ew7mAWEk7lSxN5tnBQY2RPH4wM9YG3q528IYksDIsVERGZuFFSIU3kmX3jprQ8PMANY8P9MLCzFiprTuRJVBMWKyIighACyVm3JvL8/ngeKgxGAICjrTWGd/fG2HBftPNwlDklkeVjsSIiasaKyiqxNfUS1idl43RekbS8q7czxob5YXCQFzQqTuRJVFssVkREzdDJXD3WJWXhm9RLKPltIk9bGysMCWqNMeG+6OrtIm9AokaKxYqIqJkoqzTg++OXse5gFlKyC6XlbVvaY2y4H4Z194azhhN5Et0LFisioiYu81oJNiRlYXPyRRTevDWRp7WVAlH3azE2zA/hAZzIk8hcWKyIiJqgKoMRu07lY31SNn7JuCYtb+1yayLPJ0O84eFoK2NCoqaJxYqIqAnJ05Vh46FsfHk4G/n6/03k+bf7WmJsuB/+1sGDE3kS1SMWKyKiJuDslWIs2nEau05dgeG3mTxbOKgwIsQHo0J94ePGiTyJGgKLFRFRI5enK8OYzw5KZ6hC/W9N5PlwICfyJGpoLFZERI1YaYUB/1h7BPn6crT3cMDyMd1xnycn8iSSC4sVEVEjZTQKxG5Kw/FLOrjZq/Dv8T35lR+RzHiOmIiokfpg16/4IT0PKqUVVo7rwVJFZAFYrIiIGqGtqZfw4e6zAIB3hnVBzzZuMiciIoDFioio0UnOKsCM/xwDAEx5qC2e6OEtcyIiuk3WYrV3714MHjwYXl5eUCgU2Lp1q8l6IQTmzp2LVq1aQaPRIDIyEhkZGSZjUlJSMGDAALi4uMDd3R2TJ09GcXGxyZjDhw+jf//+cHFxgaurK6KionD06FGTMceOHcMDDzwAW1tb+Pj4YOHChdXybt68GR07doStrS26dOmC77//3jxvBBFRLV0suIlnvjiCiiojBnb2xIyoDnJHIqLfkbVYlZSUICgoCMuXL69x/cKFC7F06VKsWLECSUlJsLe3R1RUFMrKygAAubm5iIyMRLt27ZCUlITt27fjxIkTGD9+vLSN4uJiPPzww/D19UVSUhL27dsHR0dHREVFobLy1k876PV6DBw4EH5+fkhOTsaiRYvw2muv4ZNPPpG2c+DAAYwaNQoTJ05Eamoqhg4diqFDhyI9Pb3+3iAiot8pLq/CpDVHcK24Ap1bOeGDp4Jhxck+iSyLsBAAxJYtW6TnRqNRaLVasWjRImlZYWGhUKvVYuPGjUIIIVauXCk8PDyEwWCQxhw7dkwAEBkZGUIIIQ4fPiwAiOzs7DuO+eijj4Srq6soLy+XxsycOVN06NBBej5ixAgxaNAgk8xhYWHimWeeqfUx6nQ6AUDodLpav4aISAghqgxGMWHVIeE38zsR8tZOcangptyRiJqNunx+W+w1VpmZmcjLy0NkZKS0zNnZGWFhYUhMTAQAlJeXQ6VSwcrqf4eh0WgAAPv27QMAdOjQAe7u7vj8889RUVGB0tJSfP755+jUqRPatGkDAEhMTMSDDz4IlUolbScqKgpnzpxBQUGBNOb3WW6PuZ2lJuXl5dDr9SYPIqK7sWD7aSScvgK1tRU+/XsIvFw0ckciohpYbLHKy8sDAHh6epos9/T0lNb169cPeXl5WLRoESoqKlBQUIBZs2YBAC5fvgwAcHR0xJ49e7Bu3TpoNBo4ODhg+/bt+OGHH2BtbS3tq6b9/D7HncbcXl+TefPmwdnZWXr4+Pjc1XtBRM1b/OFsfLL3PABg0ZNBCPZxkTcQEd2RxRar2ggMDMSaNWvw3nvvwc7ODlqtFv7+/vD09JTOYpWWlmLixIno3bs3Dh48iP379+P+++/HoEGDUFpaWq/5Zs+eDZ1OJz1ycnLqdX9E1PQcPH8dr269dS3nC/3b4/+CvGRORER/plYzr9/NV1hOTk51fs3vabVaAEB+fj5atWolLc/Pz0dwcLD0fPTo0Rg9ejTy8/Nhb28PhUKB999/HwEBAQCADRs24MKFC0hMTJTK1oYNG+Dq6opvvvkGI0eOhFarRX5+vsn+bz+/neNOY26vr4larYZarb7Ld4CImrus6yWYsi4ZlQaBx7q2wrTI9nJHIqK/UKszVrenKajtw83NDefPn7+nYP7+/tBqtUhISJCW6fV6JCUlISIiotp4T09PODg4ID4+Hra2thgwYAAA4ObNm7CysoJC8b87Z24/NxqNAICIiAjs3btXuksQAHbu3IkOHTrA1dVVGvP7LLfH1JSFiOhe6csqMWH1YRTerESQtzPefTLI5O8xIrJMtf6twK+++gpubn89s68QAo8++mittllcXIyzZ89KzzMzM5GWlgY3Nzf4+vpi2rRpeOutt9C+fXv4+/tjzpw58PLywtChQ6XXLFu2DL169YKDgwN27tyJ6dOnY/78+XBxcQEADBgwANOnT0dMTAymTp0Ko9GI+fPnw9raGn379gVw66zX66+/jokTJ2LmzJlIT0/HkiVL8MEHH0j7eeGFF/DQQw/hvffew6BBg/Dll1/iyJEjJlMyEBGZQ5XBiJj1KTh3tQStnG3x6d9DYGujlDsWEdVGbW4zbNOmjbh27Vqtb0sMDAw0md7gTn766ScBoNojOjpaCHFryoU5c+YIT09PoVarRf/+/cWZM2dMtjFu3Djh5uYmVCqV6Nq1q1i7dm21/fz444+id+/ewtnZWbi6uop+/fqJxMREkzFHjx4Vffr0EWq1WrRu3VrMnz+/2nY2bdok7rvvPqFSqURgYKDYtm1brd8TITjdAhHVztytx4XfzO9Ex1d/EMcvFsodh6jZq8vnt0IIIWTsdc2KXq+Hs7MzdDrdPV+DRkRN0xeJFzDnmxMAgBVje+Dh++98HScRNYy6fH436rsCiYiakl8yruK1b08CAGY83IGliqgRqnWx2r59O0aOHFnjuosXLyI0NBT79+83WzAioubk7JViPLs+BQajwLDurfHPh9rKHYmI7kKti9Ubb7yB0aNHAwDmz58v/V4fAHh7e+O5556TJuckIqLaKyipwMQ1h1FUVoUQP1fMG9aFdwASNVK1Llapqano0qULAOCdd95Bbm4u3n33XalgPfjggzhy5Ej9pCQiaqIqqoz45/pkZF2/CW9XDVaO6wG1Ne8AJGqsal2s/vjzLUIIvPHGG8jNzQUAnDx5Ei1atDB/QiKiJkoIgbj/puPg+RtwUFvj8+iecHfgpMJEjVmti9XDDz+MN954Q5pEU6FQQAgBhUKB9PR0vPDCC9JXhURE9Nc+35eJjYdyYKUAPhzVDR20jnJHIqJ7VOti9dprryEzMxP+/v4oKyvDm2++ifLycjz66KMIDg5Gz5498eabb9ZnViKiJmP36Xy8/f0pAMArgzqjb0cPmRMRkTnUulhptVokJSVhxowZAIBTp05BCIGBAwfil19+wYYNG6BSqeotKBFRU3EmrwhTN6RCCGBUqA8m9G4jdyQiMpO7miC0e/fu2Lx5M5588kl89dVX0g8e05/jBKFEdK24HEOW7celwlKEB7jhi4lhsFFySkEiS1aXz+9a/1bg76WkpJj8LxER/bWySgOe+SIZlwpL0cbdDivG9mCpImpiavVv9LBhw6DX62u90TFjxuDKlSt3HYqIqKkRQuBfXx9HclYBnGyt8fn4nnCx4+UTRE1Nrc5YffPNN7h69WqtNiiEwLfffos333wTHh68GJOICAA+2nMOX6degtJKgY/G9EDblg5yRyKielCrYiWEwH333VffWYiImqTt6ZexaMcZAMBr/xeIPu055x9RU1WrYvXTTz/VecOtW7eu82uIiJqa9Es6vBh/FAAwvlcbjAv3kzkREdWnWhWrhx56qL5zEBE1Ofn6MkxacwSllQY8eF9LvDqok9yRiKie8XYUIqJ6UFphwD/WHkGevgztPBywbHQ3WPMOQKImj/+WExGZmdEo8PJXR3Hsog6udjb4PDoETrY2csciogbAYkVEZGaLEzKw7dhl2CgVWDG2B/zc7eWOREQNhMWKiMiMvkm7hKUJGQCAtx/vgrAAd5kTEVFDqnOxKi0txc2bN6XnWVlZWLx4MX788UezBiMiamxSswsw/atjAIBnHgzAiBAfmRMRUUOrc7EaMmQI1q5dCwAoLCxEWFgY3nvvPQwZMgQff/yx2QMSETUGuYWl+MfaZFRUGRHZyRMzHu4odyQikkGdi1VKSgoeeOABAMBXX30FT09PZGVlYe3atVi6dKnZAxIRWbqS8ipMXHME14rL0VHriCUjg6G0Usgdi4hkUOdidfPmTTg6OgIAfvzxRwwbNgxWVlYIDw9HVlaW2QMSEVkyo1FgWnwaTl3Wo4WDCp+P7wl79V39vj0RNQF1Llbt2rXD1q1bkZOTgx07dmDgwIEAgCtXrsDJycnsAYmILNnCHWew82Q+VNZW+OTvIWjtopE7EhHJqM7Fau7cuXj55ZfRpk0bhIWFISIiAsCts1fdunUze0AiIku1+UgOVvx8DgCw6Imu6O7rKnMiIpKbQggh6vqivLw8XL58GUFBQbCyutXNDh06BCcnJ3TsyAs270Sv18PZ2Rk6nY5n94gaucMXbmD0pwdRaRCY2q8dXhrYQe5IRFRP6vL5fVcXAmi1Wmi1WpNloaGhd7MpIqJGJ/v6TTzzRTIqDQKPdtHixcj75I5ERBaiVsVq2LBhWL16NZycnDBs2LA/Hfv111+bJRgRkSXSl1Vi4prDuFFSgS6tnfHek8Gw4h2ARPSbWhUrZ2dnKBQK6Z+JiJqjKoMRUzekIuNKMTyd1Pj07yHQqJRyxyIiC3JX11jR3eE1VkSN2+vfnsCq/Rdga2OFzc/0Qhdv/ocmUXNQl8/vu/qtwKqqKuzatQsrV65EUVERACA3NxfFxcV3szkiIou3PikLq/ZfAAB8MCKYpYqIalTni9ezsrLw8MMPIzs7G+Xl5RgwYAAcHR2xYMEClJeXY8WKFfWRk4hINgfOXsPcb04AAF4eeB8e6dJK5kREZKnqfMbqhRdeQEhICAoKCqDR/G8ivMcffxwJCQlmDUdEJLfzV4sxZV0yDEaBocFeiOnbTu5IRGTB6nzG6pdffsGBAwegUqlMlrdp0waXLl0yWzAiIrnpblZi4poj0JdVobuvC+YP7yrdyENEVJM6n7EyGo0wGAzVll+8eFH6DUEiosau0mDEP9cnI/NaCVq7aLByXAhsbXgHIBH9uToXq4EDB2Lx4sXSc4VCgeLiYsTFxeHRRx+t07b27t2LwYMHw8vLCwqFAlu3bjVZL4TA3Llz0apVK2g0GkRGRiIjI8NkTEpKCgYMGAAXFxe4u7tj8uTJNV5Ev3r1anTt2hW2trbw8PBATEyMyfpjx47hgQcegK2tLXx8fLBw4cJq29i8eTM6duwIW1tbdOnSBd9//32djpeIGgchBOL+ewIHzl2HvUqJz6JD0NJRLXcsImoE6lys3n33Xezfvx+dO3dGWVkZRo8eLX0NuGDBgjptq6SkBEFBQVi+fHmN6xcuXIilS5dixYoVSEpKgr29PaKiolBWVgbg1p2IkZGRaNeuHZKSkrB9+3acOHEC48ePN9nO+++/j1deeQWzZs3CiRMnsGvXLkRFRUnr9Xo9Bg4cCD8/PyQnJ2PRokV47bXX8Mknn0hjDhw4gFGjRmHixIlITU3F0KFDMXToUKSnp9fpmInI8q0+cAEbkrKhUABLRnZDp1acHoWIaknchcrKSrFu3Toxffp08c9//lN8+umn4ubNm3ezKQkAsWXLFum50WgUWq1WLFq0SFpWWFgo1Gq12LhxoxBCiJUrVwoPDw9hMBikMceOHRMAREZGhhBCiBs3bgiNRiN27dp1x31/9NFHwtXVVZSXl0vLZs6cKTp06CA9HzFihBg0aJDJ68LCwsQzzzxT62PU6XQCgNDpdLV+DRE1rN2n84X/rO+E38zvxCc/n5M7DhFZgLp8ftfpjFVlZSXatm2LjIwMjBkzBgsXLsRHH32ESZMmmdwhaA6ZmZnIy8tDZGSktMzZ2RlhYWFITEwEAJSXl0OlUkk/BA1AyrFv3z4AwM6dO2E0GnHp0iV06tQJ3t7eGDFiBHJycqTXJCYm4sEHHzS5ID8qKgpnzpxBQUGBNOb3WW6PuZ2lJuXl5dDr9SYPIrJcv+YXYeqGVBgFMCLEG5Me8Jc7EhE1MnUqVjY2NtLXcPUtLy8PAODp6Wmy3NPTU1rXr18/5OXlYdGiRaioqEBBQQFmzZoFALh8+TIA4Pz58zAajXjnnXewePFifPXVV7hx4wYGDBiAiooKaV817ef3Oe405vb6msybNw/Ozs7Sw8fH567eCyKqf9eLyzFxzWEUl1chzN8Nbw3twjsAiajO6nyNVUxMDBYsWICqqqr6yFMngYGBWLNmDd577z3Y2dlBq9XC398fnp6e0lkso9GIyspKLF26FFFRUQgPD8fGjRuRkZGBn376qV7zzZ49GzqdTnr8/iwZEVmO8ioDpqxLRs6NUvi522HF2B5QWd/VD1MQUTNX53msDh8+jISEBPz444/o0qUL7O3tTdZ//fXXZgmm1WoBAPn5+WjV6n+zHOfn5yM4OFh6Pnr0aIwePRr5+fmwt7eHQqHA+++/j4CAAACQXtu5c2fpNS1btkSLFi2QnZ0t7Ss/P99k/7ef385xpzG319dErVZDreadRESWTAiBV7ak4/CFAjjaWuPz6BC42qv++oVERDWo83+Subi4YPjw4YiKioKXl5fJV13Ozub77Sx/f39otVqT2dz1ej2SkpIQERFRbbynpyccHBwQHx8PW1tbDBgwAADQu3dvAMCZM2eksTdu3MC1a9fg5+cHAIiIiMDevXtRWVkpjdm5cyc6dOgAV1dXacwfZ5bfuXNnjVmIqPFYufc8vkq+CKWVAstHd0c7D87HR0T3oP6vpb+zoqIikZqaKlJTUwUA8f7774vU1FSRlZUlhBBi/vz5wsXFRXzzzTfi2LFjYsiQIcLf31+UlpZK2/jwww9FcnKyOHPmjFi2bJnQaDRiyZIlJvsZMmSICAwMFPv37xfHjx8Xjz32mOjcubOoqKgQQty629DT01OMGzdOpKeniy+//FLY2dmJlStXStvYv3+/sLa2Fu+++644deqUiIuLEzY2NuL48eO1Pl7eFUhkWbanXxZtfrsDcM2BTLnjEJGFqsvnd62LlcFgEPPnzxe9evUSISEhYubMmfc8xcJPP/0kAFR7REdHCyFuTbkwZ84c4enpKdRqtejfv784c+aMyTbGjRsn3NzchEqlEl27dhVr166tth+dTicmTJggXFxchJubm3j88cdFdna2yZijR4+KPn36CLVaLVq3bi3mz59fbTubNm0S9913n1CpVCIwMFBs27atTsfLYkVkOdIvFYpOc34QfjO/E69uqf1/IBFR81OXz2+FEELU5szWm2++iddeew2RkZHQaDTYsWMHRo0ahX//+9/1cyqtCdLr9XB2doZOp4OTEyccJJLLlaIyDF22H7m6MvRp1wKrn+4JayUvVieimtXl87vWf5OsXbsWH330EXbs2IGtW7fi22+/xfr162E0Gu85MBFRQymrNOAfa5ORqytDQEt7LB/TnaWKiMym1n+bZGdnm/wWYGRkJBQKBXJzc+slGBGRuQkhMP2rYziaUwgXOxv8O7onnDU2cscioiak1sWqqqoKtra2JstsbGxM7qQjIrJkSxPO4tujubC2UuDjMT3QpoX9X7+IiKgOaj2PlRAC48ePN5mXqaysDFOmTDGZy8pc81gREZnTd8dy8cGuXwEAbw29HxFt3WVORERNUa2LVXR0dLVlY8eONWsYIqL6cDSnEC9tOgoAmNTHHyNDfWVORERNVa2L1apVq+ozBxFRvbisK8U/1h5BeZUR/Tp6YPajneSORERNGG+FIaIm62ZFFSatOYIrReXo4OmIJSODobTiDysTUf1hsSKiJsloFIiNP4oTuXq426vwWXQIHG15ByAR1S8WKyJqkt798Qy2n8iDSmmFleN6wMfNTu5IRNQMsFgRUZPzdcpFfLTnHABgwRNdENLGTeZERNRcsFgRUZNy5MINzPrPcQBATN+2eLybt8yJiKg5YbEioiYj58ZNPPNFMioMRjwcqMVLAzrIHYmImhkWKyJqEorKKjFpzRFcL6nA/a2d8P5TQbDiHYBE1MBqPY8VEZGlOn5Rh3e+P4Uz+UXwcFTj07+HwE7Fv96IqOHxbx4iapRKKwz49lgu1h/MwtGLOgCA2toKn/49BK2cNTKnI6LmisWKiBqVs1eKsT4pC/9Jvgh9WRUAQKW0wiNdtPjHAwG4v7WzzAmJqDljsSIii1dpMOLHE/lYdzALieevS8t93DQYE+aHJ3t4w91B/SdbICJqGCxWRGSxLhWWYmNSNuKP5OBqUTkAwEoB9OvoibHhvniwfUteoE5EFoXFiogsitEo8HPGVaw/mIXdp6/AKG4tb+moxsiePhgZ6ovWLryGiogsE4sVEVmEa8Xl2HzkIjYcykLOjVJpea+27hgb7ocBnT1ho+QMMURk2VisiEg2QggcvlCAdQez8EP6ZVQabp2ecrK1xhM9fDAm3BdtWzrInJKIqPZYrIiowenLKrE19RLWHczCr/nF0vIgHxeMCfPF4K5e0KiUMiYkIro7LFZE1GDSL+mwPikL36Tl4maFAQCgsVFiSLAXxoT5oYs3p0ogosaNxYqI6lVZpQHfHs3F+qRspOUUSsvbezhgTJgvHu/uDWeNjXwBiYjMiMWKiOrF+avFWJ+Uja+SL0JXWgkAsFEq8PD9rTA2zBeh/m5QKDhVAhE1LSxWRGQ2lQYjdp3Mx7qkLOw/+7+JPFu7aDA6zBcjQnzQ0pETeRJR08ViRUT3LLewFF8eysaXh3Nw5beJPBUKoF8HD4wN98OD97WEkhN5ElEzwGJFRHfFaBT45ew1rDuYhYRT+dJEni0cVHiqpw9GhfrC29VO3pBERA2MxYqI6uRGSQU2HcnBhqRsZN+4KS0P83fD2HA/RAVqobLmRJ5E1DyxWBHRXxJCIDnr1kSe3x/PQ4XBCABwtLXG8O7eGBvui3YejjKnJCKSH4sVEd1R0W8Tea5PysbpvCJpeZfWzhgb7ovBQV6wU/GvESKi2/g3IhFVczJXj3VJWfgm9RJKfpvI09bGCv8XdGsizyAfF3kDEhFZKBYrIgJwayLP749fxrqDWUjJLpSWt21pjzFhfhje3RvOdpzIk4joz7BYETVzF66VYH1SFjYnX0ThzVsTeVpbKRAVqMWYcF9EBLhzIk8iolpisSJqhqoMRuw6dQXrk7LwS8Y1aXlrFw1GhfpgRE8feDjaypiQiKhxkvWe6L1792Lw4MHw8vKCQqHA1q1bTdYLITB37ly0atUKGo0GkZGRyMjIMBmTkpKCAQMGwMXFBe7u7pg8eTKKi4tr3N/169fh7e0NhUKBwsJCk3V79uxB9+7doVar0a5dO6xevbra65cvX442bdrA1tYWYWFhOHTo0L0cPlGDy9OV4YOdv6L3gt2Ysi4Zv2Rcg0IB/K1DS3z29xDsndEXz/Vrz1JFRHSXZC1WJSUlCAoKwvLly2tcv3DhQixduhQrVqxAUlIS7O3tERUVhbKyMgBAbm4uIiMj0a5dOyQlJWH79u04ceIExo8fX+P2Jk6ciK5du1ZbnpmZiUGDBqFv375IS0vDtGnTMGnSJOzYsUMaEx8fj9jYWMTFxSElJQVBQUGIiorClStX7v2NIKpHRqPALxlX8cwXR9B7wW4sSchAvr4c7vYqTHmoLfZO74vVT4cisrMnZ0cnIrpHCiGEkDsEACgUCmzZsgVDhw4FcOtslZeXF1566SW8/PLLAACdTgdPT0+sXr0aI0eOxCeffII5c+bg8uXLsLK61RGPHz+Orl27IiMjA+3atZO2//HHHyM+Ph5z585F//79UVBQABcXFwDAzJkzsW3bNqSnp0vjR44cicLCQmzfvh0AEBYWhp49e2LZsmUAAKPRCB8fH0ydOhWzZs2q8ZjKy8tRXl4uPdfr9fDx8YFOp4OTk5N53jiiOygoqcDm5FsTeV64/r+JPEPbuGFMuC8evl8LtbVSxoRERI2DXq+Hs7NzrT6/LfYaq8zMTOTl5SEyMlJa5uzsjLCwMCQmJmLkyJEoLy+HSqWSShUAaDQaAMC+ffukYnXy5Em88cYbSEpKwvnz56vtKzEx0WQ/ABAVFYVp06YBACoqKpCcnIzZs2dL662srBAZGYnExMQ7HsO8efPw+uuv1/3gie6SEAIp2YVYfzAL3x2/jIqqWxN5OqitMax7a4wJ80MHLSfyJCKqLxb7uxN5eXkAAE9PT5Plnp6e0rp+/fohLy8PixYtQkVFBQoKCqSzR5cvXwZw66zRqFGjsGjRIvj6+t5xXzXtR6/Xo7S0FNeuXYPBYPjTLDWZPXs2dDqd9MjJyanDO0BUe5UGI9YnZeHRpfsw/OMD+Dr1EiqqjAj0csK8YV2Q9K/+eGPI/SxVRET1zGLPWNVGYGAg1qxZg9jYWMyePRtKpRLPP/88PD09pbNYs2fPRqdOnTB27NgGz6dWq6FWqxt8v9S8CCHw0qaj+O/RXACA2toKj3X1wthwXwT7uHCqBCKiBmSxZ6y0Wi0AID8/32R5fn6+tA4ARo8ejby8PFy6dAnXr1/Ha6+9hqtXryIgIAAAsHv3bmzevBnW1tawtrZG//79AQAtWrRAXFyctK+a9uPk5ASNRoMWLVpAqVT+ZRYiOSxNOIv/Hs2FtZUCsx/piKR/9cd7I4LQzdeVpYqIqIFZbLHy9/eHVqtFQkKCtEyv1yMpKQkRERHVxnt6esLBwQHx8fGwtbXFgAEDAAD/+c9/cPToUaSlpSEtLQ2fffYZAOCXX35BTEwMACAiIsJkPwCwc+dOaT8qlQo9evQwGWM0GpGQkFBjFqKG8t2xXHyw61cAwJtD78czD7WFi51K5lRERM2XrF8FFhcX4+zZs9LzzMxMpKWlwc3NDb6+vpg2bRreeusttG/fHv7+/pgzZw68vLykOwcBYNmyZejVqxccHBywc+dOTJ8+HfPnz5fu+Gvbtq3JPq9duzUZYqdOnaQxU6ZMwbJlyzBjxgxMmDABu3fvxqZNm7Bt2zbpdbGxsYiOjkZISAhCQ0OxePFilJSU4Omnn66fN4foLxzNKcRLm44CACb28ceo0JqvISQiogYkZPTTTz8JANUe0dHRQgghjEajmDNnjvD09BRqtVr0799fnDlzxmQb48aNE25ubkKlUomuXbuKtWvX1mqfBQUF1ZYHBwcLlUolAgICxKpVq6q99sMPPxS+vr5CpVKJ0NBQcfDgwTodr06nEwCETqer0+uI/ii38Kbo+dZO4TfzOzH+30miymCUOxIRUZNVl89vi5nHqjmoyzwYRHdys6IKT65IxIlcPTp4OuKrf0bA0ZY/jkxEVF/q8vltsddYEVF1RqNAbPxRnMjVw91ehc+iQ1iqiIgsCIsVUSPy7o9nsP1EHlRKK6wc1wM+bnZyRyIiot9hsSJqJL5OuYiP9pwDAMwf3gUhbdxkTkRERH/EYkXUCBy5cAOz/nMcAPDs39piWHdvmRMREVFNWKyILFzOjZt45otkVBiMiAr0xMsDO8gdiYiI7oDFisiCFZVVYtKaI7heUoFALyd88FQwrKw4mzoRkaVisSKyUAajwAtfpuFMfhFaOqrxWXQI7FSN+uc9iYiaPBYrIgs17/tT2H36CtTWVvjs7yFo5ayROxIREf0FFisiC/TloWx8ti8TAPDeiCAE+bjIG4iIiGqFxYrIwhw4dw2vbk0HALwYeR8e6+olcyIiIqotFisiC5J5rQT/XJeCKqPA4CAvPN+/ndyRiIioDlisiCyE7mYlJq45DF1pJYJ9XLDoia5QKHgHIBFRY8JiRWQBKg1GxGxIwfmrJfBytsUnf+8BWxul3LGIiKiOWKyILMAb357EvrPXYKdS4tPoEHg42sodiYiI7gKLFZHM1hy4gC8OZkGhABY/FYxAL2e5IxER0V1isSKS0d5fr+L1b08AAGY+3BEDA7UyJyIionvBYkUkk7NXihCzPgVGAQzv7o1nHgyQOxIREd0jFisiGdwoqcCE1UdQVF6Fnm1c8c6w+3kHIBFRE8BiRdTAKqqMmLIuGdk3bsLHTYMVY3tAbc07AImImgIWK6IGJITAq1uP41DmDTiqrfF5dE+4O6jljkVERGbCYkXUgD795Tw2HbkIKwWwdHQ33OfpKHckIiIyIxYrogay62Q+5v1wGgDw6qDO6NvBQ+ZERERkbixWRA3g1GU9XvgyFUIAo8N88XTvNnJHIiKiesBiRVTPrhaVY9KaIyipMKBXW3e8/n+BvAOQiKiJYrEiqkdllQY888URXCoshX8Le3w0pjtslPzXjoioqeLf8ET1RAiBmf85hpTsQjhrbPB5dAhc7FRyxyIionrEYkVUT5b/dBbfpOXC2kqBj8d0R0BLB7kjERFRPWOxIqoH3x+/jHd//BUA8PqQQPRq10LmRERE1BBYrIjM7NjFQsRuSgMAPN27DcaE+ckbiIiIGgyLFZEZ5enK8I+1R1BWacTfOrTEK492kjsSERE1IBYrIjMprTDgH2uPIF9fjvYeDlg6qhuseQcgEVGzwr/1iczAaBSI3ZSG45d0cLNX4d/je8LJ1kbuWERE1MBYrIjM4INdv+KH9DzYKBVYOa4HfNzs5I5EREQyYLEiukdbUy/hw91nAQDzhnVFzzZuMiciIiK5yFqs9u7di8GDB8PLywsKhQJbt241WS+EwNy5c9GqVStoNBpERkYiIyPDZExKSgoGDBgAFxcXuLu7Y/LkySguLpbWHz16FKNGjYKPjw80Gg06deqEJUuWVMuyZ88edO/eHWq1Gu3atcPq1aurjVm+fDnatGkDW1tbhIWF4dChQ2Z5H6jxSs4qwIz/HAMATHmoLZ7o4S1zIiIikpOsxaqkpARBQUFYvnx5jesXLlyIpUuXYsWKFUhKSoK9vT2ioqJQVlYGAMjNzUVkZCTatWuHpKQkbN++HSdOnMD48eOlbSQnJ8PDwwPr1q3DiRMn8Morr2D27NlYtmyZNCYzMxODBg1C3759kZaWhmnTpmHSpEnYsWOHNCY+Ph6xsbGIi4tDSkoKgoKCEBUVhStXrtTPm0MW72LBTTzzxRFUVBkxoLMnZkR1kDsSERHJTVgIAGLLli3Sc6PRKLRarVi0aJG0rLCwUKjVarFx40YhhBArV64UHh4ewmAwSGOOHTsmAIiMjIw77uvZZ58Vffv2lZ7PmDFDBAYGmox56qmnRFRUlPQ8NDRUxMTESM8NBoPw8vIS8+bNq/Ux6nQ6AUDodLpav4YsU1FZpYj64GfhN/M78fDivaK4rFLuSEREVE/q8vltsddYZWZmIi8vD5GRkdIyZ2dnhIWFITExEQBQXl4OlUoFK6v/HYZGowEA7Nu3747b1ul0cHP733UwiYmJJvsBgKioKGk/FRUVSE5ONhljZWWFyMhIaUxNysvLodfrTR7U+BmMAi9sTMXpvCK0cFDj8+gQ2Kut5Y5FREQWwGKLVV5eHgDA09PTZLmnp6e0rl+/fsjLy8OiRYtQUVGBgoICzJo1CwBw+fLlGrd74MABxMfHY/LkySb7qmk/er0epaWluHbtGgwGw59mqcm8efPg7OwsPXx8fGp59GTJFmw/jYTTV6CytsKnf+8BLxeN3JGIiMhCWGyxqo3AwECsWbMG7733Huzs7KDVauHv7w9PT0+Ts1i3paenY8iQIYiLi8PAgQPrPd/s2bOh0+mkR05OTr3vk+pX/OFsfLL3PADg3SeD0M3XVeZERERkSSy2WGm1WgBAfn6+yfL8/HxpHQCMHj0aeXl5uHTpEq5fv47XXnsNV69eRUBAgMnrTp48if79+2Py5Ml49dVXq+2rpv04OTlBo9GgRYsWUCqVf5nlj9RqNZycnEwe1HgdPH8dr25NBwC80L89/i/IS+ZERERkaSy2WPn7+0Or1SIhIUFaptfrkZSUhIiIiGrjPT094eDggPj4eNja2mLAgAHSuhMnTqBv376Ijo7G22+/Xe21ERERJvsBgJ07d0r7UalU6NGjh8kYo9GIhISEGrNQ05N1vQRT1iWj0iAwqGsrvNC/vdyRiIjIAsl6xW1xcTHOnj0rPc/MzERaWhrc3Nzg6+uLadOm4a233kL79u3h7++POXPmwMvLC0OHDpVes2zZMvTq1QsODg7YuXMnpk+fjvnz58PFxQXAra//+vXrh6ioKMTGxkrXRCmVSrRs2RIAMGXKFCxbtgwzZszAhAkTsHv3bmzatAnbtm2T9hMbG4vo6GiEhIQgNDQUixcvRklJCZ5++un6f6NIVrrSSkxYfRiFNysR5O2M954MgpWVQu5YRERkiRrgLsU7+umnnwSAao/o6GghxK0pF+bMmSM8PT2FWq0W/fv3F2fOnDHZxrhx44Sbm5tQqVSia9euYu3atSbr4+LiatyHn59ftSzBwcFCpVKJgIAAsWrVqmp5P/zwQ+Hr6ytUKpUIDQ0VBw8erNPxcrqFxqeyyiDGfnZQ+M38ToS9vUvk60rljkRERA2sLp/fCiGEkKfSNT96vR7Ozs7Q6XS83qqRiPsmHWsSs6CxUWLzlAjc39pZ7khERNTA6vL5bbHXWBHJ7YvEC1iTmAUA+OCpYJYqIiL6SyxWRDX4JeMqXvv2JABgxsMd8PD9d777k4iI6DYWK6I/OHulGM+uT4HBKDCse2v886G2ckciIqJGgsWK6HcKSiowcc1hFJVVIcTPFfOGdYFCwTsAiYiodlisiH5TUWXEP9cnI+v6TXi7arByXA+orZVyxyIiokaExYoIgBACc79Jx8HzN+Cgtsbn0T3h7qCWOxYRETUyLFZEAD7fl4kvD+fASgF8OKobOmgd5Y5ERESNEIsVNXu7T+fj7e9PAQD+9Wgn9O3oIXMiIiJqrFisqFk7k1eEqRtSIQQwKtQHE/v4yx2JiIgaMRYrarauFZdjwurDKKkwIDzADW8MuZ93ABIR0T1hsaJmqazSgGe+SMalwlK0cbfDirE9YKPkvw5ERHRv+ElCzY4QAv/6+jiSswrgZGuNz8f3hIudSu5YRETUBLBYUbPz0Z5z+Dr1EpRWCnw0pgfatnSQOxIRETURLFbUrGxPv4xFO84AAF77v0D0ad9C5kRERNSUsFhRs5F+SYcX448CAMb3aoNx4X4yJyIioqaGxYqahXx9GSatOYLSSgMevK8lXh3USe5IRETUBLFYUZNXWmHAP9YeQZ6+DO08HLBsdDdY8w5AIiKqB/x0oSbNaBR4efNRHLuog6udDT6PDoGTrY3csYiIqIlisaImbXFCBrYdvwwbpQIrxvaAn7u93JGIiKgJY7GiJuubtEtYmpABAHj78S4IC3CXORERETV1LFbUJKVmF2D6V8cAAM88GIARIT4yJyIiouaAxYqanEuFpfjH2mRUVBkR2ckTMx7uKHckIiJqJlisqEkpKa/CpDVHcK24HB21jlgyMhhKK/6wMhERNQwWK2oyjEaBafFpOHVZjxYOKnw+vifs1dZyxyIiomaExYqajAU7TmPnyXyorK3wyd9D0NpFI3ckIiJqZvif89ToVRqMWJuYhZU/nwcALHqiK7r7usqcioiImiMWK2q0LhWWYmNSNuKP5OBqUTkA4Pl+7TAkuLXMyYiIqLlisaJGxWgU+DnjKtYfzMLu01dgFLeWt3BQ4+nebfDPh9rKG5CIiJo1FitqFK4Xl2PTkYvYcCgLOTdKpeURAe4YG+6HgYGesOHv/xERkcxYrMhiCSFw+EIB1h3Mwvb0PFQYjAAAJ1trDO/hjTFhfmjn4SBzSiIiov9hsSKLoy+rxNbUS1h3MAu/5hdLy4O8nTEm3A+Du3pBo1LKmJCIiKhmLFZkMdIv6bA+KQvfpOXiZoUBAGBrY4UhQa0xNtwPXbydZU5IRET051isSFZllQZ8d+wy1h3MQlpOobS8nYcDxob54vHu3nDW2MgXkIiIqA5YrEgW568WY31SNr5KvghdaSUAwEapQFSgFmPD/RDm7waFgj9FQ0REjQuLFTWYSoMRu07mY11SFvafvS4tb+2iwegwX4wI8UFLR7WMCYmIiO6NrPen7927F4MHD4aXlxcUCgW2bt1qsl4Igblz56JVq1bQaDSIjIxERkaGyZiUlBQMGDAALi4ucHd3x+TJk1FcXGwyJjs7G4MGDYKdnR08PDwwffp0VFVVmYzZs2cPunfvDrVajXbt2mH16tXV8i5fvhxt2rSBra0twsLCcOjQIbO8D03dZV0p3v/xDHrP341/rk/B/rPXoVAA/Tp64N/jQ7B3Rl/E9G3HUkVERI2erMWqpKQEQUFBWL58eY3rFy5ciKVLl2LFihVISkqCvb09oqKiUFZWBgDIzc1FZGQk2rVrh6SkJGzfvh0nTpzA+PHjpW0YDAYMGjQIFRUVOHDgANasWYPVq1dj7ty50pjMzEwMGjQIffv2RVpaGqZNm4ZJkyZhx44d0pj4+HjExsYiLi4OKSkpCAoKQlRUFK5cuVI/b04jZzQK/PzrVfxj7RH0nr8bS3efxZWicrRwUCGmb1vsnd4X/x7fE/06ekJpxa/8iIioiRAWAoDYsmWL9NxoNAqtVisWLVokLSssLBRqtVps3LhRCCHEypUrhYeHhzAYDNKYY8eOCQAiIyNDCCHE999/L6ysrEReXp405uOPPxZOTk6ivLxcCCHEjBkzRGBgoEmep556SkRFRUnPQ0NDRUxMjPTcYDAILy8vMW/evFofo06nEwCETqer9Wsam+vF5WLFnrPiwYW7hd/M76THiBUHxH/TLonySsNfb4SIiMiC1OXz22Knqs7MzEReXh4iIyOlZc7OzggLC0NiYiIAoLy8HCqVClZW/zsMjUYDANi3bx8AIDExEV26dIGnp6c0JioqCnq9HidOnJDG/H4/t8fc3k9FRQWSk5NNxlhZWSEyMlIaU5Py8nLo9XqTR1MkhMCRCzcw7ctUhL+TgHk/nEbW9ZtwVFtjfK822Pnig4h/JgKDg7ygsrbYP3JERET3zGIvXs/LywMAk0J0+/ntdf369UNsbCwWLVqEF154ASUlJZg1axYA4PLly9J2atrG7/dxpzF6vR6lpaUoKCiAwWCocczp06fveAzz5s3D66+/XqfjbkyKyiqxNS0X6w9m4XRekbS8S2tnjA33xeAgL9ipLPaPGBERkdk16k+9wMBArFmzBrGxsZg9ezaUSiWef/55eHp6mpzFksvs2bMRGxsrPdfr9fDx8ZExkXmczNVjXVIWvkm9hJLfTeQ5uKsXxob7IcjHRd6AREREMrHYYqXVagEA+fn5aNWqlbQ8Pz8fwcHB0vPRo0dj9OjRyM/Ph729PRQKBd5//30EBARI2/nj3Xv5+fkm+9BqtdKy349xcnKCRqOBUqmEUqmsccztbdRErVZDrW4ad7qVVRrw/fFbE3mmZBdKywNa2mNsmB+Gd/eGsx0n8iQiouZN/tM6d+Dv7w+tVouEhARpmV6vR1JSEiIiIqqN9/T0hIODA+Lj42Fra4sBAwYAACIiInD8+HGTu/d27twJJycndO7cWRrz+/3cHnN7PyqVCj169DAZYzQakZCQUGOWpuTCtRK88/0pRMxLQOymo0jJLoS1lQKDurTChn+EISH2IUzo489SRUREBJnPWBUXF+Ps2bPS88zMTKSlpcHNzQ2+vr6YNm0a3nrrLbRv3x7+/v6YM2cOvLy8MHToUOk1y5YtQ69eveDg4ICdO3di+vTpmD9/PlxcXAAAAwcOROfOnTFu3DgsXLgQeXl5ePXVVxETEyOdTZoyZQqWLVuGGTNmYMKECdi9ezc2bdqEbdu2SfuJjY1FdHQ0QkJCEBoaisWLF6OkpARPP/10g7xXDanKYMSuU1ewPikLv2Rck5Z7OdtiVKgvnurpAw8nWxkTEhERWaj6v0nxzn766ScBoNojOjpaCHFryoU5c+YIT09PoVarRf/+/cWZM2dMtjFu3Djh5uYmVCqV6Nq1q1i7dm21/Vy4cEE88sgjQqPRiBYtWoiXXnpJVFZWVssSHBwsVCqVCAgIEKtWraq2nQ8//FD4+voKlUolQkNDxcGDB+t0vJY+3cLlwlLxwc4zIuztXdI0CW1mfSei/50kdp7IE1UGo9wRiYiIGlxdPr8VQgghY69rVvR6PZydnaHT6eDk5CR3HAC3JvLcf+4a1h3Mwq5TV2Aw3vrj4G6vwpMhPhgT5gsfNzuZUxIREcmnLp/fFnvxOtWvgpIKfJV8EeuTsnDh+k1peWgbN4wJ98XD92uhtlbKmJCIiKjxYbFqRoQQSMkuxPqDWfju+GVUVBkBAA5qawzr3hpjwvzQQesoc0oiIqLGi8WqGSgpr8LWtEtYdzAbpy7/b/b3QC8njA33w/8FecFezT8KRERE94qfpk3Y6Tw91h3MwtbUXBSXVwEA1NZWeKyrF8aG+yLYxwUKBX8AmYiIyFxYrJqY8ioDfjieh3UHs3Akq0BaHtDCHqPDfPFED2+42KlkTEhERNR0sVg1EVnXS7DhUDY2H7mIGyUVAACllQIDO3tibLgferV159kpIiKiesZi1QT8e18m3vjupPRc63RrIs+RoT7w5ESeREREDYbFqgkI9XcDADx4X0uMDfNFv44esFZa7K8VERERNVksVk3A/a2dcWBWP3i5aOSOQkRE1KzxtEYTwVJFREQkPxYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjNhsSIiIiIyExYrIiIiIjOxljtAcyKEAADo9XqZkxAREVFt3f7cvv05/mdYrBpQUVERAMDHx0fmJERERFRXRUVFcHZ2/tMxClGb+kVmYTQakZubC0dHRygUCrNuW6/Xw8fHBzk5OXBycjLrthuD5n78AN8DHn/zPn6A70FzP36g/t4DIQSKiorg5eUFK6s/v4qKZ6wakJWVFby9vet1H05OTs32XyiAxw/wPeDxN+/jB/geNPfjB+rnPfirM1W38eJ1IiIiIjNhsSIiIiIyExarJkKtViMuLg5qtVruKLJo7scP8D3g8Tfv4wf4HjT34wcs4z3gxetEREREZsIzVkRERERmwmJFREREZCYsVkRERERmwmJFREREZCYsVo3YvHnz0LNnTzg6OsLDwwNDhw7FmTNn5I7VoD7++GN07dpVmgwuIiICP/zwg9yxZDN//nwoFApMmzZN7igN5rXXXoNCoTB5dOzYUe5YDerSpUsYO3Ys3N3dodFo0KVLFxw5ckTuWA2mTZs21f4MKBQKxMTEyB2tQRgMBsyZMwf+/v7QaDRo27Yt3nzzzVr9rl1TUVRUhGnTpsHPzw8ajQa9evXC4cOHZcnCmdcbsZ9//hkxMTHo2bMnqqqq8K9//QsDBw7EyZMnYW9vL3e8BuHt7Y358+ejffv2EEJgzZo1GDJkCFJTUxEYGCh3vAZ1+PBhrFy5El27dpU7SoMLDAzErl27pOfW1s3nr7aCggL07t0bffv2xQ8//ICWLVsiIyMDrq6uckdrMIcPH4bBYJCep6enY8CAAXjyySdlTNVwFixYgI8//hhr1qxBYGAgjhw5gqeffhrOzs54/vnn5Y7XICZNmoT09HR88cUX8PLywrp16xAZGYmTJ0+idevWDRtGUJNx5coVAUD8/PPPckeRlaurq/jss8/kjtGgioqKRPv27cXOnTvFQw89JF544QW5IzWYuLg4ERQUJHcM2cycOVP06dNH7hgW5YUXXhBt27YVRqNR7igNYtCgQWLChAkmy4YNGybGjBkjU6KGdfPmTaFUKsV3331nsrx79+7ilVdeafA8/CqwCdHpdAAANzc3mZPIw2Aw4Msvv0RJSQkiIiLkjtOgYmJiMGjQIERGRsodRRYZGRnw8vJCQEAAxowZg+zsbLkjNZj//ve/CAkJwZNPPgkPDw9069YNn376qdyxZFNRUYF169ZhwoQJZv+xe0vVq1cvJCQk4NdffwUAHD16FPv27cMjjzwic7KGUVVVBYPBAFtbW5PlGo0G+/bta/A8zed8eRNnNBoxbdo09O7dG/fff7/ccRrU8ePHERERgbKyMjg4OGDLli3o3Lmz3LEazJdffomUlBTZrieQW1hYGFavXo0OHTrg8uXLeP311/HAAw8gPT0djo6Ocserd+fPn8fHH3+M2NhY/Otf/8Lhw4fx/PPPQ6VSITo6Wu54DW7r1q0oLCzE+PHj5Y7SYGbNmgW9Xo+OHTtCqVTCYDDg7bffxpgxY+SO1iAcHR0RERGBN998E506dYKnpyc2btyIxMREtGvXruEDNfg5MqoXU6ZMEX5+fiInJ0fuKA2uvLxcZGRkiCNHjohZs2aJFi1aiBMnTsgdq0FkZ2cLDw8PcfToUWlZc/sq8I8KCgqEk5NTs/k62MbGRkRERJgsmzp1qggPD5cpkbwGDhwoHnvsMbljNKiNGzcKb29vsXHjRnHs2DGxdu1a4ebmJlavXi13tAZz9uxZ8eCDDwoAQqlUip49e4oxY8aIjh07NngWFqsmICYmRnh7e4vz58/LHcUi9O/fX0yePFnuGA1iy5Yt0l8ktx8AhEKhEEqlUlRVVckdURYhISFi1qxZcsdoEL6+vmLixIkmyz766CPh5eUlUyL5XLhwQVhZWYmtW7fKHaVBeXt7i2XLlpkse/PNN0WHDh1kSiSf4uJikZubK4QQYsSIEeLRRx9t8Ay8xqoRE0Lgueeew5YtW7B79274+/vLHckiGI1GlJeXyx2jQfTv3x/Hjx9HWlqa9AgJCcGYMWOQlpYGpVIpd8QGV1xcjHPnzqFVq1ZyR2kQvXv3rjbNyq+//go/Pz+ZEsln1apV8PDwwKBBg+SO0qBu3rwJKyvTj3OlUgmj0ShTIvnY29ujVatWKCgowI4dOzBkyJAGz8BrrBqxmJgYbNiwAd988w0cHR2Rl5cHAHB2doZGo5E5XcOYPXs2HnnkEfj6+qKoqAgbNmzAnj17sGPHDrmjNQhHR8dq19TZ29vD3d292Vxr9/LLL2Pw4MHw8/NDbm4u4uLioFQqMWrUKLmjNYgXX3wRvXr1wjvvvIMRI0bg0KFD+OSTT/DJJ5/IHa1BGY1GrFq1CtHR0c1qug0AGDx4MN5++234+voiMDAQqampeP/99zFhwgS5ozWYHTt2QAiBDh064OzZs5g+fTo6duyIp59+uuHDNPg5MjIbADU+Vq1aJXe0BjNhwgTh5+cnVCqVaNmypejfv7/48ccf5Y4lq+Z2jdVTTz0lWrVqJVQqlWjdurV46qmnxNmzZ+WO1aC+/fZbcf/99wu1Wi06duwoPvnkE7kjNbgdO3YIAOLMmTNyR2lwer1evPDCC8LX11fY2tqKgIAA8corr4jy8nK5ozWY+Ph4ERAQIFQqldBqtSImJkYUFhbKkkUhRDOampWIiIioHvEaKyIiIiIzYbEiIiIiMhMWKyIiIiIzYbEiIiIiMhMWKyIiIiIzYbEiIiIiMhMWKyIiIiIzYbEiIiIiMhMWKyKiO7hw4QIUCgXS0tLqfV9CCEyePBlubm7SPmtaRkSWjcWKiBql8ePHQ6FQYP78+SbLt27dCoVCIVOqu7d9+3asXr0a3333HS5fvoz777+/xmVEZNlYrIio0bK1tcWCBQtQUFAgd5R7du7cObRq1Qq9evWCVquFtbV1jcvqSgiBqqqqekhMRDVhsSKiRisyMhJarRbz5s2rcf3169cxatQotG7dGnZ2dujSpQs2btxoMsZoNGLhwoVo164d1Go1fH198fbbb5uMOX/+PPr27Qs7OzsEBQUhMTFRWrd69Wq4uLhg69ataN++PWxtbREVFYWcnBxpzPjx4zF06FCTbU6bNg1/+9vfpPVTp05FdnY2FAoF2rRpU+Oy23nnzZsHf39/aDQaBAUF4auvvpK2u2fPHigUCvzwww/o0aMH1Go19u3bV9e3lojuUt3/84eIyEIolUq88847GD16NJ5//nl4e3ubrC8rK0OPHj0wc+ZMODk5Ydu2bRg3bhzatm2L0NBQAMDs2bPx6aef4oMPPkCfPn1w+fJlnD592mQ7r7zyCt599120b98er7zyCkaNGoWzZ89KZ5Bu3ryJt99+G2vXroVKpcKzzz6LkSNHYv/+/bU6jiVLlqBt27b45JNPcPjwYSiVSqhUqmrLAGDevHlYt24dVqxYgfbt22Pv3r0YO3YsWrZsiYceekja5qxZs/Duu+8iICAArq6ud/0eE1HdsFgRUaP2+OOPIzg4GHFxcfj8889N1rVu3Rovv/yy9Hzq1KnYsWMHNm3ahNDQUBQVFWHJkiVYtmwZoqOjAQBt27ZFnz59TLbz8ssvY9CgQQCA119/HYGBgTh79iw6duwIAKisrMSyZcsQFhYGAFizZg06deqEQ4cOSQXuzzg7O8PR0RFKpRJarVZa/sdl5eXleOedd7Br1y5EREQAAAICArBv3z6sXLnSpFi98cYbGDBgQO3eRCIyGxYrImr0FixYgH79+pmUKAAwGAx45513sGnTJly6dAkVFRUoLy+HnZ0dAODUqVMoLy9H//79/3T7Xbt2lf65VatWAIArV65Ixcra2ho9e/aUxnTs2BEuLi44depUrYpVbZ09exY3b96sVpgqKirQrVs3k2UhISFm2y8R1R6LFRE1eg8++CCioqIwe/ZsjB8/Xlq+aNEiLFmyBIsXL0aXLl1gb2+PadOmoaKiAgCg0WhqtX0bGxvpn2/fcWg0Gmudz8rKCkIIk2WVlZW1fv1txcXFAIBt27ahdevWJuvUarXJc3t7+zpvn4juHYsVETUJ8+fPR3BwMDp06CAt279/P4YMGYKxY8cCuFWGfv31V3Tu3BkA0L59e2g0GiQkJGDSpEl3ve+qqiocOXJEOjt15swZFBYWolOnTgCAli1bIj093eQ1aWlpJoWtNjp37gy1Wo3s7GyTr/2IyHKwWBFRk9ClSxeMGTMGS5culZa1b98eX331FQ4cOABXV1e8//77yM/Pl4qVra0tZs6ciRkzZkClUqF37964evUqTpw4gYkTJ9Z63zY2Npg6dSqWLl0Ka2trPPfccwgPD5eKVr9+/bBo0SKsXbsWERERWLduHdLT06t9ffdXHB0d8fLLL+PFF1+E0WhEnz59oNPpsH//fjg5OUnXiRGRfDjdAhE1GW+88YbJV3SvvvoqunfvjqioKPztb3+DVqutNu3BnDlz8NJLL2Hu3Lno1KkTnnrqKVy5cqVO+7Wzs8PMmTMxevRo9O7dGw4ODoiPj5fWR0VFYc6cOZgxYwZ69uyJoqIi/P3vf7+rY3zzzTcxZ84czJs3D506dcLDDz+Mbdu2wd/f/662R0TmpRB//OKfiIhqbfXq1Zg2bRoKCwvljkJEFoBnrIiIiIjMhMWKiIiIyEz4VSARERGRmfCMFREREZGZsFgRERERmQmLFREREZGZsFgRERERmQmLFREREZGZsFgRERERmQmLFREREZGZsFgRERERmcn/A2EjNTVN+L9gAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":1,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":4,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2,\n", " \"Neuenhauser-Putzmaschine\":0,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":0,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":0,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":0,\n", " \"Turm_Anzahl_Wendlungen\":0,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(2, 10):\n", " Anzahl_MG.update({\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "print(\"Vorpuffer sollte > 1 sein\")\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Nachpuffer\")\n", "plt.show()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Neuenhauser-Putzmaschine Vorpuffer" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{2: 111554.98, 3: 111670.54, 4: 111945.72, 5: 112017.72, 6: 112292.9, 7: 112408.46, 8: 112640.08, 9: 112755.64}\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.summary_costs(hw).get(\"GESAMT\")\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":0,\n", " \"Neuenhauser-Putzmaschine\":1,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":2,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":2,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":0,\n", " \"Turm_Anzahl_Wendlungen\":0,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(2, 10):\n", " Anzahl_MG.update({\"Neuenhauser-Putzmaschine_Vorpuffer\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Vorpuffer\")\n", "plt.show()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Neuenhauser-Putzmaschine Nachpuffer" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{2: 111554.97666666667, 3: 111734.09666666666, 4: 111985.71666666667, 5: 112164.83666666667, 6: 112416.45666666667, 7: 112552.01666666666, 8: 112847.19666666667, 9: 112982.75666666667}\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlYAAAGwCAYAAABrUCsdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABevElEQVR4nO3deXwU9eH/8dfm2E2AJNyEIwkEkEsOOYIRRFFMwEjBWzkMh6W0iFJUDrWGShVR2opC8cIEpFpAgVpQEAKISpQzQLiPQIAYICbs5oBcO78/+LHfpoAmsMnkeD8fj33gznxm5j0ryb6ZnZ2xGIZhICIiIiI3zMPsACIiIiJVhYqViIiIiJuoWImIiIi4iYqViIiIiJuoWImIiIi4iYqViIiIiJuoWImIiIi4iZfZAaoTp9NJamoqfn5+WCwWs+OIiIhICRiGQVZWFk2aNMHD45ePSalYlaPU1FSCgoLMjiEiIiLX4eTJkzRr1uwXx6hYlSM/Pz/g0v8Yf39/k9OIiIhISTgcDoKCglzv479ExaocXf74z9/fX8VKRESkkinJaTw6eV1ERETETVSsRERERNxExUpERETETVSsRERERNxExUpERETETVSsRERERNzE1GK1adMmBg4cSJMmTbBYLKxYsaLY/GXLlhEREUG9evWwWCwkJiZesY7f/e53tGzZEl9fXxo0aMCgQYM4cOBAsTEpKSlERUVRo0YNGjZsyPPPP09hYWGxMRs3bqRr167YbDZatWpFXFzcFduaO3cuzZs3x8fHh549e7Jly5YbfQlERESkCjG1WOXk5NC5c2fmzp17zfm9e/dm5syZ11xHt27diI2NZf/+/axZswbDMIiIiKCoqAiAoqIioqKiyM/PZ/PmzSxYsIC4uDhefvll1zqSk5OJioqib9++JCYmMmHCBJ588knWrFnjGrN48WImTpxITEwMO3bsoHPnzkRGRnL27Fk3vRoiIiJS6RkVBGAsX778qvOSk5MNwNi5c+evrmfXrl0GYBw5csQwDMP48ssvDQ8PDyMtLc01Zt68eYa/v7+Rl5dnGIZhTJo0yejQoUOx9Tz66KNGZGSk63lYWJgxbtw41/OioiKjSZMmxowZM0q6i4bdbjcAw263l3gZERERMVdp3r+r1DlWOTk5xMbG0qJFC9c9+RISEujYsSONGjVyjYuMjMThcLB3717XmH79+hVbV2RkJAkJCQDk5+ezffv2YmM8PDzo16+fa8zV5OXl4XA4ij1ERESk6qoSxeof//gHtWrVolatWnz11VesXbsWq9UKQFpaWrFSBbiep6Wl/eIYh8PBhQsXSE9Pp6io6KpjLq/jambMmEFAQIDroRswi4iIVG1VolgNHTqUnTt38s0333DTTTfxyCOPcPHiRbNjMXXqVOx2u+tx8uRJsyOJiIhIGaoSN2G+fESodevW3HrrrdSpU4fly5fz+OOPExgYeMW3986cOQNAYGCg68/L0/57jL+/P76+vnh6euLp6XnVMZfXcTU2mw2bzeaOXRQREZFfkZyegwVoXr+maRmqxBGr/2YYBoZhkJeXB0B4eDh79uwp9u29tWvX4u/vT/v27V1j4uPji61n7dq1hIeHA2C1WunWrVuxMU6nk/j4eNcYERERMcfRc9lMXJzI3X/dyGtf7jc1i6lHrLKzszly5IjreXJyMomJidStW5fg4GAyMjJISUkhNTUVgIMHDwKXjjAFBgZy7NgxFi9eTEREBA0aNODUqVO8/vrr+Pr6cu+99wIQERFB+/btGT58OG+88QZpaWm89NJLjBs3znU0aezYscyZM4dJkyYxatQo1q9fz5IlS1i1apUr28SJE4mOjqZ79+6EhYXx1ltvkZOTw8iRI8vr5RIREZH/cuRsFu+sP8J/dqXiNC5NK3Ia5Bc6sXqZdOyozL+j+As2bNhgAFc8oqOjDcMwjNjY2KvOj4mJMQzDME6fPm0MGDDAaNiwoeHt7W00a9bMGDJkiHHgwIFi2zl+/LgxYMAAw9fX16hfv77x7LPPGgUFBVdk6dKli2G1Wo3Q0FAjNjb2irzvvPOOERwcbFitViMsLMz44YcfSrW/utyCiIjIjTuU5jCe+mSH0XzKSiNk8qXH6Lgtxq6TmWWyvdK8f1sMwzDMqXTVj8PhICAgALvdjr+/v9lxREREKpWDaVm8HX+YL5N+4nJ7uad9I565uzU3Nw0os+2W5v27Spy8LiIiIlXX/p8cvB1/mK+S/u8SR/07BDL+7lZ0aFJ2hep6qFiJiIhIhbQ31c7b8YdZs/f/vpV/b8dAxt/VmnaNK+YnPypWIiIiUqHsOWVndvxh1u2/VKgsFojq2Jjxd7WmTaCfyel+mYqViIiIVAi7Tp7n7fjDxB+4dIkkiwUGdmrC+Lta0bpRxS5Ul6lYiYiIiKl2pmQyO/4wGw+eA8DDAoO6NGVc31a0aljL5HSlo2IlIiIipth+4lKh2nToUqHy9LAwqEsTnurbitAGlatQXaZiJSIiIuVq6/EMZq87zHdH0oFLheqBWy4doTLzdjTuoGIlIiIi5eLHYz8zO/4wm4/+DICXh4UHuzZjXN9WBNerYXI691CxEhERkTJjGAYJx35m9rrD/JicAYC3p4WHugXxhztbElS3ahSqy1SsRERExO0Mw2Dz0UuFasvx/ytUj3QP4vd3tqRZnapVqC5TsRIRERG3MQyDbw+n83b8YbadyATA6unBY2FBjL2jJU1q+5qcsGypWImIiMgNMwyDbw6dY3b8YXamnAfA6uXBkLBgxt7RksAAH3MDlhMVKxEREbluhmGw8eClQpV48jwANi8PhvYM4Xd3hNLIv3oUqstUrERERKTUDMMgfv9Z3l5/mN2n7AD4eHswrGcIY+4IpaFf9SpUl6lYiYiISIkZhsHafWd4e/1hkk47APD19mR4eAi/vT2UBn42kxOaS8VKREREfpXTafD1vjRmxx9h/0+XClUNqydPhDfnt7e3oF6t6l2oLlOxEhERkWtyOg1W703j7fjDHEjLAqCm1ZPo25rz5O2h1K1pNTlhxaJiJSIiIlcochp8uecn3ll/mENnsgHws3kxoldzRvduQe0aKlRXo2IlIiIiLkVOg5W7U3ln/RGOnP3/hcrHi5G9WjC6VwsCanibnLBiU7ESERERCoucrNx96QjV0XM5APj7eDG6dygjejUnwFeFqiRUrERERKqxwiIn/05MZc6GIySnXypUAb7ePNm7BdG9muPvo0JVGipWIiIi1VBBkZMVO08zd8MRjv+cC0DtGt789vZQnggPwU+F6rqoWImIiFQjBUVOlu04xdwNR0nJuFSo6ta08tvbQxkeHkItm6rBjdCrJyIiUg3kFzr5fMcp5m44wqnMCwDUq2llTJ9Qht0aQk0VKrfQqygiIlKF5RUW8dn2U/xjw1FOn79UqOrXsjH2jlCG9AymhlVVwJ30aoqIiFRBeYVFLNl6knkbj5JqvwhAAz8bY+9oyZCwYHytniYnrJpUrERERKqQiwVFLP7/hSrNcalQNfK38fs7WvJYWDA+3ipUZUnFSkREpAq4WFDEJz+m8O43RzmblQdA4wAffn9nSx7pHqRCVU5UrERERCq5C/lFPPHRj2w9nglAkwAf/tC3FQ93b4bNS4WqPKlYiYiIVGL5hU5+/8/tbD2eib+PF1MGtOOhbs2wenmYHa1aUrESERGppIqcBs8u3cXGg+fw9fYkdmQPuoXUNTtWtaY6KyIiUgkZhkHMF0n8Z1cq3p4W3h3eTaWqAlCxEhERqYT+tvYQi35IwWKBvz/ahTtuamB2JEHFSkREpNL58NtjvLP+CACvDu7IfZ2amJxILlOxEhERqUSWbjvJX1btB+D5yDYM6RlsciL5bypWIiIilcSavWlM/nw3AGP6hPKHO1uanEj+l6nFatOmTQwcOJAmTZpgsVhYsWJFsfnLli0jIiKCevXqYbFYSExMLDY/IyOD8ePH06ZNG3x9fQkODubpp5/GbrcXG7d161buvvtuateuTZ06dYiMjGTXrl3FxuzevZvbb78dHx8fgoKCeOONN67Iu3TpUtq2bYuPjw8dO3bkyy+/dMvrICIi8ms2H01n/Cc7cRrwSPdmTB3QFovFYnYs+R+mFqucnBw6d+7M3Llzrzm/d+/ezJw586rzU1NTSU1NZdasWSQlJREXF8fq1asZPXq0a0x2djb9+/cnODiYH3/8ke+++w4/Pz8iIyMpKCgAwOFwEBERQUhICNu3b+fNN99k2rRpvP/++671bN68mccff5zRo0ezc+dOBg8ezODBg0lKSnLjKyIiInKl3afO89sF28gvctK/QyCv3d9RpaqCshiGYZgdAsBisbB8+XIGDx58xbzjx4/TokULdu7cSZcuXX5xPUuXLmXYsGHk5OTg5eXFtm3b6NGjBykpKQQFBQGwZ88eOnXqxOHDh2nVqhXz5s3jxRdfJC0tDavVCsCUKVNYsWIFBw4cAODRRx8lJyeHlStXurZ166230qVLF959990S7aPD4SAgIAC73Y6/v3+JlhERkertyNksHn43gczcAnq1qsdHI3roaurlrDTv31XuHKvLO+3ldenap23atKFevXrMnz+f/Px8Lly4wPz582nXrh3NmzcHICEhgT59+rhKFUBkZCQHDx4kMzPTNaZfv37FthUZGUlCQsI1s+Tl5eFwOIo9RERESupUZi7D528hM7eAzs0CeG94d5WqCq5KFav09HSmT5/OmDFjXNP8/PzYuHEjixYtwtfXl1q1arF69Wq++uorV/lKS0ujUaNGxdZ1+XlaWtovjrk8/2pmzJhBQECA63H5iJmIiMivSc/OY/j8Lfxkv0jrhrWIGxlGLZtumFLRVZli5XA4iIqKon379kybNs01/cKFC4wePZpevXrxww8/8P3333PzzTcTFRXFhQsXyjTT1KlTsdvtrsfJkyfLdHsiIlI1OC4WEP3RFpLTc2ha25ePR/ekTk3rry8opqsS1TcrK4v+/fvj5+fH8uXL8fb2ds375JNPOH78OAkJCXh4eLim1alTh3//+9889thjBAYGcubMmWLrvPw8MDDQ9efVxlyefzU2mw2bzeaWfRQRkerhYkERTy7Yxt5UB/VrWVn0ZE8CA3zMjiUlVOmPWF3+Rp/VauWLL77Ax6f4X77c3Fw8PDyKfXvi8nOn0wlAeHg4mzZtcn1LEGDt2rW0adOGOnXquMbEx8cXW/fatWsJDw8vq10TEZFqpqDIybh/7mBLcgZ+Ni8WjAqjRf2aZseSUjC1WGVnZ5OYmOi6PlVycjKJiYmkpKQAl65TlZiYyL59+wA4ePAgiYmJrvOaLpeqnJwc5s+fj8PhIC0tjbS0NIqKigC45557yMzMZNy4cezfv5+9e/cycuRIvLy86Nu3LwBDhgzBarUyevRo9u7dy+LFi5k9ezYTJ050ZX3mmWdYvXo1f/3rXzlw4ADTpk1j27ZtPPXUU+X1comISBXmdBpM+mw38QfOYvPyYP6IHnRoEmB2LCktw0QbNmwwgCse0dHRhmEYRmxs7FXnx8TE/OLygJGcnOzaztdff2306tXLCAgIMOrUqWPcddddRkJCQrEsu3btMnr37m3YbDajadOmxuuvv35F3iVLlhg33XSTYbVajQ4dOhirVq0q1f7a7XYDMOx2e6mWExGRqs3pdBox/04yQiavNFpOXWXE708zO5L8l9K8f1eY61hVB7qOlYiIXM1b6w7x1rrDWCzw1qNdGNSlqdmR5L9U6+tYiYiIVCZx3yfz1rrDAPz5Nx1Uqio5FSsRERGTLN95imn/uXQe8cR7buKJ8ObmBpIbpmIlIiJignX7zvDc0t0AjOzVnPF3tTI5kbiDipWIiEg5+/HYz4z7ZAdFToMHujblT1HtdVPlKkLFSkREpBwlnbbz5IJt5BU66deuEW882AkPD5WqqkLFSkREpJwcO5dN9EdbyMorpGeLuswZcgtennorrkr0f1NERKQcpJ6/wPD5W/g5J5+bm/rzYXR3fLw9zY4lbqZiJSIiUsYycvIZPv9HTp+/QGiDmiwYGYafj/evLyiVjoqViIhIGcrOK2RE7BaOnsuhSYAPH4/uSb1aNrNjSRlRsRIRESkjFwuK+O2Cbew+ZaduTSsfP9mTprV9zY4lZUjFSkREpAwUFjl5+tOdJBz7mVo2LxaMDKNlg1pmx5IypmIlIiLiZk6nwZRle/h63xmsXh588ER3OjYLMDuWlAMVKxERETcyDINXv9zPZ9tP4elhYe6QroS3rGd2LCknKlYiIiJuNHfDEeZ/lwzAGw924p72jUxOJOVJxUpERMRNPv7hBLO+PgTAy/e158FuzUxOJOVNxUpERMQNvtiVysv/TgLg6btaMap3C5MTiRlUrERERG7QhoNnmbg4EcOAJ8JD+OM9N5kdSUyiYiUiInIDth3P4PeLtlPoNBjUpQnTBnbAYtFNlasrFSsREZHrtC/Vwci4rVwscNK3TQNmPdwZDw+VqupMxUpEROQ6HE/P4YmPtpB1sZAezevwj6Hd8PbU22p1p78BIiIipZRmv8iw+T+Snp1Hu8b+fBjdA1+rp9mxpAJQsRIRESmF87n5PPHRj5zKvEDzejVYOCqMAF9vs2NJBaFiJSIiUkI5eYWMiN3KoTPZBPr78PHonjTws5kdSyoQFSsREZESyCss4ncfbyfx5Hlq1/Dm49FhBNWtYXYsqWBUrERERH5FkdNgwr8S+e5IOjWsnsSNDKN1Iz+zY0kFpGIlIiLyCwzD4IVle/gqKQ2rpwcfPNGdLkG1zY4lFZSKlYiIyC94ffUBFm87iYcF3n68C71a1Tc7klRgKlYiIiLXMG/jUd775hgArz/Qif43NzY5kVR0KlYiIiJX8emWFGauPgDAC/e25ZEeQSYnkspAxUpEROR/rNr9Ey8s3wPAH+5syZg+LU1OJJWFipWIiMh/2XToHBMW78QwYEjPYJ6PbGN2JKlEVKxERET+vx0pmfzu4+0UFBlEdWrM9EE3Y7HopspScipWIiIiwMG0LEbGbuVCQRF9bmrA3x/pgqeHSpWUjoqViIhUeyk/5zJ8/o/YLxTQNbg27w7ritVLb5FSevpbIyIi1dpZx0WGzf+Rs1l5tA30I3ZEGDWsXmbHkkpKxUpERKote24BT3y0hZSMXILr1mDhqDACanibHUsqMVOL1aZNmxg4cCBNmjTBYrGwYsWKYvOXLVtGREQE9erVw2KxkJiYWGx+RkYG48ePp02bNvj6+hIcHMzTTz+N3W6/YltxcXF06tQJHx8fGjZsyLhx44rN3717N7fffjs+Pj4EBQXxxhtvXLGOpUuX0rZtW3x8fOjYsSNffvnlDb8GIiJijtz8QkYt2MqBtCwa+tlYNLonDf19zI4llZypxSonJ4fOnTszd+7ca87v3bs3M2fOvOr81NRUUlNTmTVrFklJScTFxbF69WpGjx5dbNzf/vY3XnzxRaZMmcLevXtZt24dkZGRrvkOh4OIiAhCQkLYvn07b775JtOmTeP99993jdm8eTOPP/44o0ePZufOnQwePJjBgweTlJTkhldCRETKU36hk98v2sH2E5n4+3ixcHQYwfVqmB1LqgCLYRiG2SEALBYLy5cvZ/DgwVfMO378OC1atGDnzp106dLlF9ezdOlShg0bRk5ODl5eXmRmZtK0aVP+85//cPfdd191mXnz5vHiiy+SlpaG1WoFYMqUKaxYsYIDBy5ddffRRx8lJyeHlStXupa79dZb6dKlC++++26J9tHhcBAQEIDdbsff379Ey4iIiHsVOQ2e+ddOVu7+CV9vTxY92ZNuIXXMjiUVWGnev6vcOVaXd9rL69KJh2vXrsXpdHL69GnatWtHs2bNeOSRRzh58qRrmYSEBPr06eMqVQCRkZEcPHiQzMxM15h+/foV21ZkZCQJCQnXzJKXl4fD4Sj2EBER8xiGwcv/TmLl7p/w9rTw7vBuKlXiVlWqWKWnpzN9+nTGjBnjmnbs2DGcTievvfYab731Fp999hkZGRncc8895OfnA5CWlkajRo2Krevy87S0tF8cc3n+1cyYMYOAgADXIyhI95kSETHTrK8P8s8fU7BY4O+PduGOmxqYHUmqmCpTrBwOB1FRUbRv355p06a5pjudTgoKCnj77beJjIzk1ltv5dNPP+Xw4cNs2LChTDNNnToVu93uevz3UTIRESlfH357jLkbjgLw6uCO3NepicmJpCqqEhfqyMrKon///vj5+bF8+XK8vf/vq7KNGzcGoH379q5pDRo0oH79+qSkpAAQGBjImTNniq3z8vPAwMBfHHN5/tXYbDZsNtsN7JmIiLjDkm0n+cuq/QBM6t+GIT2DTU4kVVWlP2J1+Rt9VquVL774Ah+f4l+V7dWrFwAHDx50TcvIyCA9PZ2QkBAAwsPD2bRpEwUFBa4xa9eupU2bNtSpU8c1Jj4+vti6165dS3h4eJnsl4iIuMfqpDSmfL4bgDF9Qvn9HS1NTiRVmanFKjs7m8TERNf1qZKTk0lMTHQdScrIyCAxMZF9+/YBl8pRYmKi67ymy6UqJyeH+fPn43A4SEtLIy0tjaKiIgBuuukmBg0axDPPPMPmzZtJSkoiOjqatm3b0rdvXwCGDBmC1Wpl9OjR7N27l8WLFzN79mwmTpzoyvrMM8+wevVq/vrXv3LgwAGmTZvGtm3beOqpp8rr5RIRkVL6/kg6T3+6E6cBj3YPYuqAtrqpspQtw0QbNmwwgCse0dHRhmEYRmxs7FXnx8TE/OLygJGcnOzajt1uN0aNGmXUrl3bqFu3rnH//fcbKSkpxbLs2rXL6N27t2Gz2YymTZsar7/++hV5lyxZYtx0002G1Wo1OnToYKxatapU+2u32w3AsNvtpVpORERKLzEl02j/p6+MkMkrjd8t3GYUFBaZHUkqqdK8f1eY61hVB7qOlYhI+ThyNouH300gM7eAXq3q8dGIHti8PM2OJZVUtb6OlYiIVG+nMnMZ9uEWMnML6BxUm/eGd1epknKjYiUiIlXGuaw8hs/fQprjIq0b1iJuRA9q2arEF+ClklCxEhGRKsFxsYDoj7aQnJ5D09q+fDy6J3VqWn99QRE3UrESEZFKb2+qneiPtrDvJwf1a1lZ9GRPAgN8fn1BETfT8VEREam0kk7bmR1/mLX7Ll3A2c/mxYJRYbSoX9PkZFJdqViJiEils/vUeWavO0z8gbMAWCwwsFMTJvRrTWiDWiank+pMxUpERCqNxJPnmb3uEBsOngPAwwK/6dyEp+5qTauGKlRiPhUrERGp8LafyGR2/GE2Hfq/QjX4lqY81beVjlBJhaJiJSIiFda24xnMjj/Mt4fTAfD0sHD//y9UzXUelVRAKlYiIlLh/HjsZ2bHH2bz0Z8B8PKw8GDXZvyhb0tC6qlQScWlYiUiIhVGwtGfmR1/iB+OZQCXCtXD3ZvxhztbEVS3hsnpRH6dipWIiJjKMAwSjv7MW/GH2ZJ8qVB5e1p4pHsQv7+zJc3qqFBJ5aFiJSIipjAMg++OpPN2/GG2Hs8EwOrpwaM9LhWqJrV9TU4oUnoqViIiUq4Mw2DT4XRmrzvEjpTzAFi9PBgSFszv7gilcYAKlVReKlYiIlIuDMNg48FzzI4/TOLJ8wDYvDwY0jOYsXe0pJG/bkEjlZ+KlYiIlCnDMFh/4Cxvxx9m1yk7AD7eHgztGcLv+oTSUIVKqhAVKxERKROGYbB23xneXn+YpNMOAHy9PRl2azBj+rSkgZ/N5IQi7qdiJSIibuV0Gny97wxvxx9m30+XClUNqyfDw0P47e2h1K+lQiVVl4qViIi4hdNpsHpvGm/HH+ZAWhYANa2ePHFbc357eyh1a1pNTihS9lSsRETkhjidBl8m/cQ78Uc4eOZSoapl82LEbc0Z3bsFdVSopBpRsRIRketS5DRYuTuVOeuPcPhsNgB+Ni9G9mrOqN4tqF1DhUqqHxUrEREplSKnwX92pfLO+sMcPZcDgL+PF6N6t2BkrxYE+HqbnFDEPCpWIiJSIoVFTr7YdekI1bH0S4UqwNeb0b1bMKJXc/x9VKhEVKxEROQXFRY5WZGYypz1hzn+cy4AtWt489vbQ3kiPAQ/FSoRFxUrERG5qoIiJ8t3nGbOhiOkZFwqVHVqePPbPqE8Ed6cWja9hYj8L/1UiIhIMfmFTpbtOMXcjUc4mXEBgHo1rfy2TyjDbw2hpgqVyDXpp0NERIBLhWrp9pP8Y8NRTp+/VKjq17Lyuz4tGXprMDWsessQ+TX6KRERqebyCotYsu0U8zYcIdV+EYAGfjZ+1yeUoT1D8LV6mpxQpPJQsRIRqaYuFhSxeOtJ5m08SprjUqFq6Gfj93e25PGwYHy8VahESkvFSkSkmrlYUMSnW1J495ujnHHkARDo78Pv72zJoz2CVKhEboCKlYhINXEhv4h//niC9zYd41zWpULVJMCH3/dtxSPdm2HzUqESuVEqViIiVVxufiH//CGF9zYdIz37UqFqWtuXP/RtyUPdVKhE3EnFSkSkisrJK+TjH07wwaZj/JyTD0CzOr481bcVD3RthtXLw+SEIlWPipWISBWTnVfIwoTjfPhtMhn/v1AF163BU31bcX/Xpnh7qlCJlBUVKxGRKiLrYgELE07wwbfHOJ9bAEBIvUuFavAtKlQi5UHFSkSkCvhyz09MXbYH+4VLhSq0fk2euqsVv+ncBC8VKpFyY+pP26ZNmxg4cCBNmjTBYrGwYsWKYvOXLVtGREQE9erVw2KxkJiYWGx+RkYG48ePp02bNvj6+hIcHMzTTz+N3W6/6vZ+/vlnmjVrhsVi4fz588Xmbdy4ka5du2Kz2WjVqhVxcXFXLD937lyaN2+Oj48PPXv2ZMuWLTew9yIi7rHohxOM+2QH9gsFhDaoyVuPdmHtxDt4oGszlSqRcmbqT1xOTg6dO3dm7ty515zfu3dvZs6cedX5qamppKamMmvWLJKSkoiLi2P16tWMHj36quNHjx5Np06drpienJxMVFQUffv2JTExkQkTJvDkk0+yZs0a15jFixczceJEYmJi2LFjB507dyYyMpKzZ89ex56LiNw4wzB4J/4wL61IwjBgSM9g1v7xDgbf0hRPD4vZ8USqJYthGIbZIQAsFgvLly9n8ODBV8w7fvw4LVq0YOfOnXTp0uUX17N06VKGDRtGTk4OXl7/90nnvHnzWLx4MS+//DJ33303mZmZ1K5dG4DJkyezatUqkpKSXOMfe+wxzp8/z+rVqwHo2bMnPXr0YM6cOQA4nU6CgoIYP348U6ZMKdE+OhwOAgICsNvt+Pv7l2gZEZGrcToNXlm5j7jNxwF4+q5W/PGem7BYVKhE3K00799V7hjx5Z3+71K1b98+XnnlFRYuXIiHx5W7nJCQQL9+/YpNi4yMJCEhAYD8/Hy2b99ebIyHhwf9+vVzjbmavLw8HA5HsYeIyI0qKHIycUmiq1TFDGzPxIg2KlUiFUCVKlbp6elMnz6dMWPGuKbl5eXx+OOP8+abbxIcHHzV5dLS0mjUqFGxaY0aNcLhcHDhwgXS09MpKiq66pi0tLRr5pkxYwYBAQGuR1BQ0A3snYjIpaunj1m4jRWJqXh5WHjr0S6M7NXC7Fgi8v9VmWLlcDiIioqiffv2TJs2zTV96tSptGvXjmHDhpV7pqlTp2K3212PkydPlnsGEak67LkFDJv/IxsOnsPH24MPnujO4Fuamh1LRP5LlShWWVlZ9O/fHz8/P5YvX463t7dr3vr161m6dCleXl54eXlx9913A1C/fn1iYmIACAwM5MyZM8XWeebMGfz9/fH19aV+/fp4enpedUxgYOA1c9lsNvz9/Ys9RESuxxnHRR55L4HtJzLx9/Fi0eie9G3b0OxYIvI/Kv11rBwOB5GRkdhsNr744gt8fHyKzf/888+5cOGC6/nWrVsZNWoU3377LS1btgQgPDycL7/8sthya9euJTw8HACr1Uq3bt2Ij493nVzvdDqJj4/nqaeeKsO9ExGB4+k5DJv/I6cyL9DQz8bC0WG0DdQ/1EQqohIVq+s56bokR2eys7M5cuSI63lycjKJiYnUrVuX4OBgMjIySElJITU1FYCDBw8Cl44wBQYG4nA4iIiIIDc3l0WLFhU7QbxBgwZ4enq6ytNl6enpALRr1871rcCxY8cyZ84cJk2axKhRo1i/fj1Llixh1apVruUmTpxIdHQ03bt3JywsjLfeeoucnBxGjhxZ6tdGRKSkkk7bGRG7hfTsfELq1WDR6J4E1a1hdiwRuRajBCwWi+Hh4VHih6enp3H06NFfXe+GDRsM4IpHdHS0YRiGERsbe9X5MTExv7g8YCQnJ//iNjMzM6+Y3qVLF8NqtRqhoaFGbGzsFcu+8847RnBwsGG1Wo2wsDDjhx9+KMnL52K32w3AsNvtpVpORKqnhKPpxs0vrzZCJq80Bry1yTjruGh2JJFqqTTv3yW6jpWHhweff/45devWLUlR49577yUpKYnQ0NDSN70qTNexEpGS+npvGk99upP8QidhLeryYXR3/H28f31BEXG70rx/l+ijwJCQEPr06UO9evVKFCA0NLTYCeQiIlJyS7adZMrnu3Ea0K9dI+YMuQUfb0+zY4lICZSoWCUnJ5dqpf99BXMRESm59745yoyvDgDwULdmvP5AR93vT6QSqfTfChQRqQoMw+D11Qd475tjAIzpE8rUAW11NXWRSqbE/wxavXo1jz322FXnnTp1irCwML7//nu3BRMRqS4Ki5xM/ny3q1RNGdCWF+5tp1IlUgmVuFi98sorDBkyBIDXX3+dixcvuuY1a9aMp556qsQ3IxYRkUsuFhTxh3/uYMm2U3hY4I0HOzH2jpa/vqCIVEglLlY7d+6kY8eOALz22mukpqYya9YsV8Hq06cP27ZtK5uUIiJVUNbFAkbEbuHrfWewenkwb1g3Humhe4qKVGYlLlb/e8NhwzB45ZVXXBfv3LdvH/Xr13d/QhGRKig9O4/H3v+BH45lUMvmxYKRYUR2uPYtskSkcihxserfvz+vvPIKBQUFAFgsFgzDwGKxkJSUxDPPPOP6qFBERK7tZEYuD83bzN5UB/VqWvnXmFsJb1myy9mISMVW4mI1bdo0kpOTadGiBRcvXmT69Onk5eVx77330qVLF3r06MH06dPLMquISKV3MC2Lh97dzPGfc2la25elY8O5uWmA2bFExE1KXKwCAwP58ccfmTRpEgD79+/HMAwiIiL49ttv+eSTT7BarWUWVESkstt+IoNH3kvgjCOPmxrV4vPf30Zog1pmxxIRNyrRLW3+V9euXVm6dCkPP/wwn332mW5dU0K6pY1I9bXh4Fl+v2g7FwucdA2uzUcjelC7hv4xKlIZuP2WNv9rx44dxf4UEZFr+3fiaZ5dsotCp8EdNzVg3rCu1LDq+swiVVGJPgp84IEHcDgcJV7p0KFDOXv27HWHEhGpKuK+T+aZfyVS6DT4TecmfPBEd5UqkSqsRB8Fenp6cujQIRo0aPCrKzQMg6CgIBITE/UR4f/QR4Ei1YdhGPx93WHejj8MQHR4CDEDO+Dhoaupi1Q2bv8o0DAMbrrpJreEExGp6oqcBjFfJLHohxQA/tjvJp6+u5VuUSNSDZSoWG3YsKHUK27atGmplxERqezyC51MXJLIyt0/YbHAK4NuZvitIWbHEpFyUqJidccdd5R1DhGRSi8nr5Cxi7bz7eF0vD0t/O2RLgzs3MTsWCJSjnQGpYiIG2Tm5DMybiuJJ8/j6+3Je8O70eemXz8vVUSqFhUrEZEb9JP9AsPnb+HI2Wxq1/AmdkQPbgmuY3YsETGBipWIyA04ei6bJ+Zv4fT5CwT6+/Dx6DBaN/IzO5aImETFSkTkOu0+dZ4RsVvJyMkntH5NFo4Oo1mdGmbHEhETlfhegZdduHCB3Nxc1/MTJ07w1ltv8fXXX7s1mIhIRbb5SDqPv/8DGTn5dGwawNKx4SpVIlL6YjVo0CAWLlwIwPnz5+nZsyd//etfGTRoEPPmzXN7QBGRiuarPT8xInYrOflF3NayHp+OuZV6tWxmxxKRCqDUxWrHjh3cfvvtAHz22Wc0atSIEydOsHDhQt5++223BxQRqUg+3ZLCuE92kF/kpH+HQGJH9qCWTWdViMglpf5tkJubi5/fpRMzv/76ax544AE8PDy49dZbOXHihNsDiohUBIZh8I+NR3lzzUEAHg8L4i+DO+KpW9SIyH8p9RGrVq1asWLFCk6ePMmaNWuIiIgA4OzZs7r/nYhUSU6nwV9W7XeVqnF9W/La/SpVInKlUherl19+meeee47mzZvTs2dPwsPDgUtHr2655Ra3BxQRMVNBkZPnPtvF/O+SAXgpqh3PR7bVff9E5KoshmEYpV0oLS2Nn376ic6dO+PhcambbdmyBX9/f9q2bev2kFVFae6OLSLmu1hQxLh/7iD+wFk8PSy88WAnHuzWzOxYIlLOSvP+fV1nXAYGBhIYGFhsWlhY2PWsSkSkQrJfKODJBVvZejwTm5cHc4d0pV/7RmbHEpEKrkTF6oEHHiAuLg5/f38eeOCBXxy7bNkytwQTETHL2ayLPDF/CwfSsvDz8WJ+dA/CWtQ1O5aIVAIlKlYBAQGu8wkCAgLKNJCIiJlO/JzD8PlbSMnIpYGfjQUjw2jfRB/di0jJXNc5VnJ9dI6VSMW2L9XBEx9tIT07j+C6Nfh4dBgh9WqaHUtETFaa9+9SfysQoLCwkHXr1vHee++RlZUFQGpqKtnZ2dezOhER021JzuDR9xNIz86jbaAfn40NV6kSkVIr9cnrJ06coH///qSkpJCXl8c999yDn58fM2fOJC8vj3fffbcscoqIlJn4/Wf4wz93kFfopEfzOnwY3YMAX2+zY4lIJVTqI1bPPPMM3bt3JzMzE19fX9f0+++/n/j4eLeGExEpa59vP8WYj7eTV+jk7rYNWTiqp0qViFy3Uh+x+vbbb9m8eTNWq7XY9ObNm3P69Gm3BRMRKWsffnuMv6zaD8ADXZsy88FOeHte1xkSIiLAdRQrp9NJUVHRFdNPnTrluoegiEhFZhgGb645yD82HgXgyd4teOHednjoFjUicoNK/U+ziIgI3nrrLddzi8VCdnY2MTEx3HvvvaVa16ZNmxg4cCBNmjTBYrGwYsWKYvOXLVtGREQE9erVw2KxkJiYWGx+RkYG48ePp02bNvj6+hIcHMzTTz+N3W53jdm1axePP/44QUFB+Pr60q5dO2bPnn1Flo0bN9K1a1dsNhutWrUiLi7uijFz586lefPm+Pj40LNnT7Zs2VKq/RUR8xU5DV5YvsdVqib1b8OLUSpVIuIepS5Ws2bN4vvvv6d9+/ZcvHiRIUOGuD4GnDlzZqnWlZOTQ+fOnZk7d+415/fu3fua601NTSU1NZVZs2aRlJREXFwcq1evZvTo0a4x27dvp2HDhixatIi9e/fy4osvMnXqVObMmeMak5ycTFRUFH379iUxMZEJEybw5JNPsmbNGteYxYsXM3HiRGJiYtixYwedO3cmMjKSs2fPlmqfRcQ8eYVFPPXJDj7dchIPC8x4oCN/uLOV7vsnIm5zXdexKiwsZPHixezatYvs7Gy6du3K0KFDi53MXuogFgvLly9n8ODBV8w7fvw4LVq0YOfOnXTp0uUX17N06VKGDRtGTk4OXl5X/6Rz3Lhx7N+/n/Xr1wMwefJkVq1aRVJSkmvMY489xvnz51m9ejUAPXv2pEePHq5C5nQ6CQoKYvz48UyZMuWq28nLyyMvL8/13OFwEBQUpOtYiZggO6+QMQu3sfnoz1g9PZj9WBcGdGxsdiwRqQTK7F6BBQUFtG3blpUrVzJ06FCGDh16Q0HLwuWdvlapujymbt3/uz1FQkIC/fr1KzYmMjKSCRMmAJCfn8/27duZOnWqa76Hhwf9+vUjISHhmtuZMWMGf/7zn69zT0TEXX7OzmNE7Fb2nLZT0+rJB09057ZW9c2OJSJVUKk+CvT29ubixYtlleWGpaenM336dMaMGXPNMZs3b2bx4sXFxqSlpdGoUfGbqzZq1AiHw8GFCxdIT0+nqKjoqmPS0tKuua2pU6dit9tdj5MnT17nnonI9Tp9/gIPv5vAntN26ta08umYW1WqRKTMlPocq3HjxjFz5kwKCwvLIs91czgcREVF0b59e6ZNm3bVMUlJSQwaNIiYmBgiIiLKPJPNZsPf37/YQ0TKz+EzWTz4j80cS8+haW1flo4Np1Oz2mbHEpEqrNSXW9i6dSvx8fF8/fXXdOzYkZo1i9/yYdmyZW4LV1JZWVn0798fPz8/li9fjrf3lRf327dvH3fffTdjxozhpZdeKjYvMDCQM2fOFJt25swZ/P398fX1xdPTE09Pz6uOCQwMdP8OicgN25mSyci4rZzPLaBVw1p8PDqMxgHXfx6oiEhJlLpY1a5dmwcffLAsslwXh8NBZGQkNpuNL774Ah8fnyvG7N27l7vuuovo6GheffXVK+aHh4fz5ZdfFpu2du1awsPDAbBarXTr1o34+HjXyfVOp5P4+Hieeuop9++UiNyQTYfOMXbRdnLzi+gSVJvYET2oU9P66wuKiNygUher2NhYt208OzubI0eOuJ4nJyeTmJhI3bp1CQ4OJiMjg5SUFFJTUwE4ePAgcOkIU2BgIA6Hg4iICHJzc1m0aBEOhwOHwwFAgwYN8PT0JCkpibvuuovIyEgmTpzoOifK09OTBg0aADB27FjmzJnDpEmTGDVqFOvXr2fJkiWsWrXKlW3ixIlER0fTvXt3wsLCeOutt8jJyWHkyJFuez1E5Mb9Z1cqE5ckUlBkcHvr+rw7rBs1baX+VScicn2MEioqKjJef/1147bbbjO6d+9uTJ482cjNzS3p4le1YcMGA7jiER0dbRiGYcTGxl51fkxMzC8uDxjJycmGYRhGTEzMVeeHhIRckaVLly6G1Wo1QkNDjdjY2CvyvvPOO0ZwcLBhtVqNsLAw44cffijV/trtdgMw7HZ7KV8pESmJhZuTjeZTVhohk1ca4/653cgrKDI7kohUAaV5/y7xdaymT5/OtGnT6NevH76+vqxZs4bHH3+cjz76yG0lr6orzXUwRKTkCoqczF53mDkbLh0BH35rCNN+0wFPXU1dRNygNO/fJS5WrVu35rnnnuN3v/sdAOvWrSMqKooLFy7g4aGblpaEipWI++1NtTPps93sTb10GsAzd7dmQr/Wupq6iLhNmVwgNCUlpdi9APv164fFYiE1NZVmzZpdf1oRkeuQV1jE3PVH+MfGoxQ6DQJ8vfnzbzow+JamZkcTkWqsxMWqsLDwim/ceXt7U1BQ4PZQIiK/ZGdKJpM+283hs9kADLg5kD8P6kBDvyu/FSwiUp5KXKwMw2DEiBHYbDbXtIsXLzJ27Nhi17Iy4zpWIlI9XMgv4u/rDvHht8dwGlC/lpVXBt3Mvbrnn4hUECUuVtHR0VdMGzZsmFvDiIhcy4/Hfmby57s5/nMuAPff0pSX72uv61OJSIVS4mLlzutXiYiUVHZeITO/OsDHP5wAINDfh9ceuJm72jb6lSVFRMqfrponIhXWN4fO8cKyPZw+fwGAx8OCmXpvW/x9rrxtlYhIRaBiJSIVjj23gL+s2sfS7acACKrry8wHOnFbq/omJxMR+WUqViJSoXy9N40XVyRxLisPiwVG3Nac5yPbUMOqX1ciUvHpN5WIVAg/Z+cR88VeVu7+CYDQBjV586FOdAupa3IyEZGSU7ESEVMZhsEXu1KZ9sVeMnML8PSw8Ls+oTx9d2t8vD3NjiciUioqViJimjOOi7y4PIl1+88A0DbQj1kPd+bmpgEmJxMRuT4qViJS7gzDYOm2U0xftY+si4V4e1oYf1drxt7REquX7j0qIpWXipWIlKuTGbm8sHwP3x5OB6BzswDeeKgzbQL9TE4mInLjVKxEpFw4nQYf/3CCmasPkJtfhM3Lg2cjbmJUrxZ4eeoolYhUDSpWIlLmjp3LZvLnu9l6PBOAsOZ1mflQJ1rUr/krS4qIVC4qViJSZgqLnMz/Lpm/rT1EXqGTmlZPpgxoy9CeIXh4WMyOJyLidipWIlImDqQ5mPTZbnafsgNwe+v6zHigI83q1DA5mYhI2VGxEhG3yi90Mm/jUeZsOExBkYG/jxcv3deeh7s1w2LRUSoRqdpUrETEbXafOs+kz3ZzIC0LgHvaN+Ivg2+mkb+PyclERMqHipWI3LCLBUW8te4w7286itOAujWt/Pk3HbivU2MdpRKRakXFSkRuyLbjGUz6bDfH0nMA+E3nJsQMbE+9WjaTk4mIlD8VKxG5Ljl5hby55iALEo5jGNDQz8ar93fknvaNzI4mImIaFSsRKbXvDqczZdluTmVeAOCR7s14Mao9Ab7eJicTETGXipWIlJjjYgGvrdrPv7aeBKBpbV9mPNCRPjc1MDmZiEjFoGIlIiUSv/8MLyzfwxlHHgDR4SFM6t+Wmjb9GhERuUy/EUXkF2Xk5PPKf/ayIjEVgBb1azLzwU6EtahrcjIRkYpHxUpErsowDL7ck8bL/07i55x8PCzw29tD+eM9N+Hj7Wl2PBGRCknFSkSucNZxkT/9O4k1e88AcFOjWrz5UGc6B9U2N5iISAWnYiUiLoZh8PmO07zyn704Lhbi5WHhD31bMa5vS2xeOkolIvJrVKxEBIDT5y/wwrI9fHPoHAAdmwbwxkOdaNfY3+RkIiKVh4qVSDXndBp8siWFGV/uJye/CKuXB3/sdxO/vb0FXp4eZscTEalUVKxEqrHj6TlM/nw3PyZnANAtpA5vPNSJlg1qmZxMRKRyUrESqYaKnAax3ycz6+uDXCxw4uvtyaT+bXgivDmeHrppsojI9VKxEqlmDp/J4vnPdpN48jwAvVrVY8b9nQiuV8PcYCIiVYCKlUg1UVDk5L1vjvJ2/BHyi5z42bx4Maodj/YIwmLRUSoREXcw9czUTZs2MXDgQJo0aYLFYmHFihXF5i9btoyIiAjq1auHxWIhMTGx2PyMjAzGjx9PmzZt8PX1JTg4mKeffhq73V5sXEpKClFRUdSoUYOGDRvy/PPPU1hYWGzMxo0b6dq1KzabjVatWhEXF3dF3rlz59K8eXN8fHzo2bMnW7ZsccfLIFLmkk7bGTTne2Z9fYj8Iid3t23I1xP78FhYsEqViIgbmVqscnJy6Ny5M3Pnzr3m/N69ezNz5syrzk9NTSU1NZVZs2aRlJREXFwcq1evZvTo0a4xRUVFREVFkZ+fz+bNm1mwYAFxcXG8/PLLrjHJyclERUXRt29fEhMTmTBhAk8++SRr1qxxjVm8eDETJ04kJiaGHTt20LlzZyIjIzl79qybXg0R98srLGLWmoMMmvs9+35yULuGN2892oUPo7vTOMDX7HgiIlWOxTAMw+wQABaLheXLlzN48OAr5h0/fpwWLVqwc+dOunTp8ovrWbp0KcOGDSMnJwcvLy+++uor7rvvPlJTU2nUqBEA7777LpMnT+bcuXNYrVYmT57MqlWrSEpKcq3nscce4/z586xevRqAnj170qNHD+bMmQOA0+kkKCiI8ePHM2XKlKtmycvLIy8vz/Xc4XAQFBSE3W7H31/XBpKytSMlk0mf7ebI2WwAojo2ZtpvOtDAz2ZyMhGRysXhcBAQEFCi9+8qd5Gayzvt5XXp9LGEhAQ6duzoKlUAkZGROBwO9u7d6xrTr1+/YuuJjIwkISEBgPz8fLZv315sjIeHB/369XONuZoZM2YQEBDgegQFBbltP0Wu5UJ+EdNX7uPBeZs5cjab+rVsvDusK3OHdlWpEhEpY1WqWKWnpzN9+nTGjBnjmpaWllasVAGu52lpab84xuFwcOHCBdLT0ykqKrrqmMvruJqpU6dit9tdj5MnT97Q/on8ms1H04l8axPzv0vGMODBrs1YN7EP/W9ubHY0EZFqocp8K9DhcBAVFUX79u2ZNm2a2XEAsNls2Gw6QiBl70J+EX9ZtY9//pgCQJMAH159oCN92zQ0OZmISPVSJYpVVlYW/fv3x8/Pj+XLl+Pt7e2aFxgYeMW3986cOeOad/nPy9P+e4y/vz++vr54enri6el51TGX1yFiFntuAaMXbGXbiUwAhvYMZsqAtvj5eP/KkiIi4m6V/qNAh8NBREQEVquVL774Ah8fn2Lzw8PD2bNnT7Fv761duxZ/f3/at2/vGhMfH19subVr1xIeHg6A1WqlW7duxcY4nU7i4+NdY0TMcNZxkUffT2DbiUz8fbxYNLonr97fUaVKRMQkph6xys7O5siRI67nycnJJCYmUrduXYKDg8nIyCAlJYXU1FQADh48CFw6whQYGOgqVbm5uSxatAiHw4HD4QCgQYMGeHp6EhERQfv27Rk+fDhvvPEGaWlpvPTSS4wbN871Md3YsWOZM2cOkyZNYtSoUaxfv54lS5awatUqV7aJEycSHR1N9+7dCQsL46233iInJ4eRI0eW18slUszx9ByGf/QjJzMu0NDPxoJRYbRrrG+bioiYyjDRhg0bDOCKR3R0tGEYhhEbG3vV+TExMb+4PGAkJye7tnP8+HFjwIABhq+vr1G/fn3j2WefNQoKCq7I0qVLF8NqtRqhoaFGbGzsFXnfeecdIzg42LBarUZYWJjxww8/lGp/7Xa7ARh2u71Uy4n8r6TT541u09caIZNXGn3eWG+cSM8xO5KISJVVmvfvCnMdq+qgNNfBELmWH4/9zJMLtpGVV0i7xv4sGNWDhn4+v76giIhcl9K8f1eJk9dFqou1+87w1Cc7yCt0EtaiLh9Gd8df51OJiFQYKlYilcTSbSeZsmwPRU6Dfu0aMWfILfh4e5odS0RE/ouKlUgl8MGmY7z65X7g0kU/Zz7YES/PSv+lXhGRKkfFSqQCMwyDmasP8u43RwH47e0tmDqgHR4eFpOTiYjI1ahYiVRQhUVOXlyexOJtl26FNGVAW8be0dLkVCIi8ktUrEQqoIsFRTzzr52s2XsGDwvMeKAjj/YINjuWiIj8ChUrkQom62IBYxZuJ+HYz1g9PXj78Vvof7NunSQiUhmoWIlUIOnZeYyI3ULSaQe1bF68/0Q3bmtZ3+xYIiJSQipWIhXEqcxchs/fQnJ6DvVqWlkwKoybmwaYHUtEREpBxUqkAjh0Josn5m8hzXGRprV9+Xh0GKENapkdS0RESknFSsRkO1IyGRm7FfuFAlo3rMXHo3sSGKBb1IiIVEYqViIm+ubQOcZ+vJ0LBUXcElyb2BE9qF3DanYsERG5TipWIib5Ylcqzy5JpKDI4I6bGjBvWFdqWPUjKSJSmem3uIgJFiYcJ+aLvRgG/KZzE2Y93Bmrl25RIyJS2alYiZQjwzB4a91hZscfBiA6PISYgR10ixoRkSpCxUqknDidBtP+s5eFCScAmNCvNc/c3RqLRaVKRKSqULESKQf5hU6eXbqL/+xKxWKBV37TgeHhzc2OJSIibqZiJVLGcvMLGbtoB5sOncPb08JfH+nCbzo3MTuWiIiUARUrkTJ0PjefkXFb2ZlyHl9vT94d3o07bmpgdiwRESkjKlYiZSTNfpHh83/k8Nlsatfw5qMRPegaXMfsWCIiUoZUrETKwLFz2Qyfv4XT5y8Q6O/Dx6PDaN3Iz+xYIiJSxlSsRNxszyk7I2K38HNOPqH1a7JwdBjN6tQwO5aIiJQDFSsRN9p8NJ0xC7eTnVdIx6YBxI3sQb1aNrNjiYhIOVGxEnGT1Uk/8fSnieQXObmtZT3eG94NPx9vs2OJiEg5UrEScYN/bUnhheV7cBrQv0Mgbz3WBR9vT7NjiYhIOVOxErkBhmHw7jfHmLn6AACP9Qji1fs74qlb1IiIVEsqViLXyek0mPHVfj74NhmA39/ZkkmRbXSLGhGRakzFSuQ6FBY5mfz5Hj7fcQqAF+9tx2/7hJqcSkREzKZiJVJKFwuKeOqTHazbfxZPDwszH+zEQ92amR1LREQqABUrkVJwXCzgybhtbDmegc3Lg7lDutKvfSOzY4mISAWhYiVSQmezLhL90Vb2/+TAz+bFh9Hd6Rlaz+xYIiJSgahYiZRAys+5DP/oR078nEv9WjYWjOpBhyYBZscSEZEKRsVK5Ffs/8nBEx9t4VxWHkF1fVk0uich9WqaHUtERCogFSuRX7D1eAaj4raSdbGQtoF+LBwVRkN/H7NjiYhIBaViJXIN6w+c4feLdpBX6KR7SB3mR/cgoIZuUSMiItemYiVyFct2nOL5z3ZT5DS4q21D5g7piq9Vt6gREZFf5mHmxjdt2sTAgQNp0qQJFouFFStWFJu/bNkyIiIiqFevHhaLhcTExCvW8f7773PnnXfi7++PxWLh/PnzV4w5dOgQgwYNon79+vj7+9O7d282bNhQbExKSgpRUVHUqFGDhg0b8vzzz1NYWFhszMaNG+natSs2m41WrVoRFxd3g6+AVETzv0tm4pJdFDkNHrilKe8N76ZSJSIiJWJqscrJyaFz587MnTv3mvN79+7NzJkzr7mO3Nxc+vfvzwsvvHDNMffddx+FhYWsX7+e7du307lzZ+677z7S0tIAKCoqIioqivz8fDZv3syCBQuIi4vj5Zdfdq0jOTmZqKgo+vbtS2JiIhMmTODJJ59kzZo117n3UtEYhsGsNQeZvnIfAKN6tWDWw53x9jT1x0RERCoRi2EYhtkhACwWC8uXL2fw4MFXzDt+/DgtWrRg586ddOnS5arLb9y4kb59+5KZmUnt2rVd09PT02nQoAGbNm3i9ttvByArKwt/f3/Wrl1Lv379+Oqrr7jvvvtITU2lUaNLF3t89913mTx5MufOncNqtTJ58mRWrVpFUlKSa92PPfYY58+fZ/Xq1VfNlJeXR15enuu5w+EgKCgIu92Ov79/KV8hKUtFToM//TuJT35MAeD5yDb84c6Wuu+fiIjgcDgICAgo0ft3lf+neL169WjTpg0LFy4kJyeHwsJC3nvvPRo2bEi3bt0ASEhIoGPHjq5SBRAZGYnD4WDv3r2uMf369Su27sjISBISEq657RkzZhAQEOB6BAUFlcEeyo3KKyxi/Kc7+OTHFCwWeO3+jozr20qlSkRESq3KFyuLxcK6devYuXMnfn5++Pj48Le//Y3Vq1dTp04dANLS0oqVKsD1/PLHhdca43A4uHDhwlW3PXXqVOx2u+tx8uRJd++e3KDsvEJGxW3lyz1pWD0v3aJmSM9gs2OJiEglVeW/FWgYBuPGjaNhw4Z8++23+Pr68uGHHzJw4EC2bt1K48aNy2zbNpsNm81WZuuXG5ORk8/I2C3sOmWnptWT95/oTq9W9c2OJSIilViVP2K1fv16Vq5cyb/+9S969epF165d+cc//oGvry8LFiwAIDAwkDNnzhRb7vLzwMDAXxzj7++Pr69vOeyJuNPp8xd46N3N7Dplp25NK5/89laVKhERuWFVvljl5uYC4OFRfFc9PDxwOp0AhIeHs2fPHs6ePeuav3btWvz9/Wnfvr1rTHx8fLF1rF27lvDw8LKML2XgyNksHpq3mWPncmgS4MOS34XTOai22bFERKQKMPWjwOzsbI4cOeJ6npycTGJiInXr1iU4OJiMjAxSUlJITU0F4ODBg8Clo0eXjySlpaWRlpbmWs+ePXvw8/MjODiYunXrEh4eTp06dYiOjubll1/G19eXDz74wHX5BICIiAjat2/P8OHDeeONN0hLS+Oll15i3Lhxro/yxo4dy5w5c5g0aRKjRo1i/fr1LFmyhFWrVpXb6yU3LvHkeUbGbiEzt4BWDWuxcFQYTWrriKOIiLiJYaINGzYYwBWP6OhowzAMIzY29qrzY2JiXOuIiYm56pjY2FjXmK1btxoRERFG3bp1DT8/P+PWW281vvzyy2JZjh8/bgwYMMDw9fU16tevbzz77LNGQUHBFXm7dOliWK1WIzQ0tNg2SsJutxuAYbfbS7WcuMemQ2eNdn/6ygiZvNL4zZzvjIzsPLMjiYhIJVCa9+8Kcx2r6qA018EQ91q1+ycmLN5JQZHB7a3r8+6wbtS0VfnvboiIiBuU5v1b7yxS5S364QR/+ncShgFRnRrzt0c6Y/PSLWpERMT9VKykyjIMgznrj/DXtYcAGNozmFcG3Yynhy78KSIiZUPFSqokp9PglZX7iNt8HICn727NH/u11tXURUSkTKlYSZVTUOTk+aW7WJF46dukMQPbM7JXC5NTiYhIdaBiJVXKhfwi/vDP7Ww4eA4vDwuzHu7M4Fuamh1LRESqCRUrqTLsuQWMWrCV7Scy8fH2YN6wbvRt09DsWCIiUo2oWEmVcMZxkSfmb+HgmSz8fbyIHdmDbiF1zY4lIiLVjIqVVGqGYbBy90/EfLGXjJx8GvrZWDg6jLaBuk6YiIiUPxUrqbTOOi7y4ook1u67dHPstoF+fPBEd4Lq1jA5mYiIVFcqVlLpGIbB0u2n+MvKfTguFuLtaWFc31b84c5WWL2q/H3FRUSkAlOxkkrlVGYuU5ft4dvD6QB0ahbAGw910kd/IiJSIahYSaXgdBr888cTvP7VAXLyi7B5eTDxnpsY3bsFXp46SiUiIhWDipVUeMnpOUz+fDdbkjMA6NG8DjMf7ERog1omJxMRESlOxUoqrCKnwUffJTPr64PkFTqpYfVkcv+2DL81BA/d709ERCogFSupkA6dyeL5z3az6+R5AHq3qs+MBzrqG38iIlKhqVhJhVJQ5GTexqO8s/4wBUUGfj5evBTVjke6B+kGyiIiUuGpWEmFkXTazvOf7Wb/Tw4A+rVryF8GdyQwwMfkZCIiIiWjYiWmu1hQxNvxh3lv0zGKnAZ1angz7Tcd+E3nJjpKJSIilYqKlZhq+4kMJn22m6PncgC4r1Njpv2mA/Vr2UxOJiIiUnoqVmKK3PxC3lxzkLjNxzEMaOBn4y+DbyayQ6DZ0URERK6bipWUu81H0pm8bDcnMy4A8FC3Zvwpqj0BNbxNTiYiInJjVKyk3DguFjDjywN8uiUFgKa1fXntgY7ccVMDk5OJiIi4h4qVlIv1B87wwrIk0hwXARh+awiTB7Sllk1/BUVEpOrQu5qUqcycfKav3MeynacBaF6vBq8/2IlbQ+uZnExERMT9VKykzHy55yde/ncS6dn5eFhgdO8WTLynDb5WT7OjiYiIlAkVK3G7s1kXifn3Xr5KSgOgdcNavPFQJ24JrmNyMhERkbKlYiVuYxgGy3ee5s//2Yf9QgFeHhZ+f2dLnrqrFTYvHaUSEZGqT8VK3CL1/AVeXL6HDQfPAdChiT9vPtSZ9k38TU4mIiJSflSs5IYYhsGnW07y2pf7yc4rxOrpwTP9WjOmTyjenh5mxxMRESlXKlZy3U78nMOUz/eQcOxnALoG1+aNhzrRqqGfyclERETMoWIlpVbkNIjbfJw31xzgYoETH28Pno9sy4jbmuPpoZsmi4hI9aViJaVy5GwWkz7bzY6U8wCEh9bj9Qc7ElKvprnBREREKgAVKymRgiIn7286xux1h8kvclLL5sUL97bj8bAgLBYdpRIREQEVKymBval2Jn22m72pDgD6tmnAq/d3pEltX5OTiYiIVCwqVnJNeYVFzFl/hHkbj1LoNAjw9SZmYHvuv6WpjlKJiIhchYqVXNXOlEwmfbabw2ezARhwcyB/HtSBhn4+JicTERGpuEy90NCmTZsYOHAgTZo0wWKxsGLFimLzly1bRkREBPXq1cNisZCYmHjFOt5//33uvPNO/P39sVgsnD9//qrbWrVqFT179sTX15c6deowePDgYvNTUlKIioqiRo0aNGzYkOeff57CwsJiYzZu3EjXrl2x2Wy0atWKuLi469/5CupCfhGvrtrHg/M2c/hsNvVrWfnH0K7MG9ZNpUpERORXmFqscnJy6Ny5M3Pnzr3m/N69ezNz5sxrriM3N5f+/fvzwgsvXHPM559/zvDhwxk5ciS7du3i+++/Z8iQIa75RUVFREVFkZ+fz+bNm1mwYAFxcXG8/PLLrjHJyclERUXRt29fEhMTmTBhAk8++SRr1qy5jj2vmH449jMDZm/ig2+TcRrwwC1NWfvHO7i3Y2Ozo4mIiFQKFsMwDLNDAFgsFpYvX37FkSSA48eP06JFC3bu3EmXLl2uuvzGjRvp27cvmZmZ1K5d2zW9sLCQ5s2b8+c//5nRo0dfddmvvvqK++67j9TUVBo1agTAu+++y+TJkzl37hxWq5XJkyezatUqkpKSXMs99thjnD9/ntWrV191vXl5eeTl5bmeOxwOgoKCsNvt+PtXnFu9ZOcVMvOrA3z8wwkAGgf48Nr9HenbtqHJyURERMzncDgICAgo0ft3lb/nyI4dOzh9+jQeHh7ccsstNG7cmAEDBhQrSAkJCXTs2NFVqgAiIyNxOBzs3bvXNaZfv37F1h0ZGUlCQsI1tz1jxgwCAgJcj6CgIDfv3Y375tA5Iv++yVWqHg8LZs0f+6hUiYiIXIcqX6yOHTsGwLRp03jppZdYuXIlderU4c477yQjIwOAtLS0YqUKcD1PS0v7xTEOh4MLFy5cddtTp07Fbre7HidPnnTrvt0Ie24Bzy3dRfRHWzh9/gJBdX355MmezHigI/4+3mbHExERqZSq/LcCnU4nAC+++CIPPvggALGxsTRr1oylS5fyu9/9rsy2bbPZsNlsZbb+67VmbxovrUjiXFYeFguMuK05z0e2oYa1yv91EBERKVNV/p20ceNLJ163b9/eNc1msxEaGkpKSgoAgYGBbNmypdhyZ86ccc27/Oflaf89xt/fH1/fynGhzJ+z84j5Yi8rd/8EQMsGNXnjoU50C6lrcjIREZGqocp/FNitWzdsNhsHDx50TSsoKOD48eOEhIQAEB4ezp49ezh79qxrzNq1a/H393cVsvDwcOLj44ute+3atYSHh5fDXtwYwzD4d+Jp+v3tG1bu/glPDwt/uLMlq56+XaVKRETEjUw9YpWdnc2RI0dcz5OTk0lMTKRu3boEBweTkZFBSkoKqampAK5yFBgY6DqSlJaWRlpamms9e/bswc/Pj+DgYOrWrYu/vz9jx44lJiaGoKAgQkJCePPNNwF4+OGHAYiIiKB9+/YMHz6cN954g7S0NF566SXGjRvn+ihv7NixzJkzh0mTJjFq1CjWr1/PkiVLWLVqVfm8WNcpzX6Rl1bsYd3+S6WxbaAfsx7uzM1NA0xOJiIiUgUZJtqwYYMBXPGIjo42DMMwYmNjrzo/JibGtY6YmJirjomNjXWNyc/PN5599lmjYcOGhp+fn9GvXz8jKSmpWJbjx48bAwYMMHx9fY369esbzz77rFFQUHBF3i5duhhWq9UIDQ0tto2SsNvtBmDY7fZSLXc9nE6n8a8tJ4ybY1YbIZNXGq1eWGXMXnfIyCsoKvNti4iIVCWlef+uMNexqg5Kcx2MG3EyI5epy/bw3ZF0ADoH1eaNBzvRJtCvzLYpIiJSVZXm/bvKn7xenTidBh//cIKZqw+Qm1+EzcuD5yLaMKp3Czw9dNNkERGRsqZiVUUcO5fN5M93s/V4JgBhLeoy88FOtKhf0+RkIiIi1YeKVRWwOimNZ/61k7xCJzWtnkwZ0JahPUPw0FEqERGRcqViVQV0CaqN1dODsBZ1mfFAR5rVqWF2JBERkWpJxaoKCAzw4YvxvWlerwYWi45SiYiImEXFqorQuVQiIiLmq/JXXhcREREpLypWIiIiIm6iYiUiIiLiJipWIiIiIm6iYiUiIiLiJipWIiIiIm6iYiUiIiLiJipWIiIiIm6iYiUiIiLiJipWIiIiIm6iYiUiIiLiJipWIiIiIm6iYiUiIiLiJl5mB6hODMMAwOFwmJxERERESury+/bl9/FfomJVjrKysgAICgoyOYmIiIiUVlZWFgEBAb84xmKUpH6JWzidTlJTU/Hz88Nisbh13Q6Hg6CgIE6ePIm/v79b110ZVPf9B70G2v/qvf+g16C67z+U3WtgGAZZWVk0adIED49fPotKR6zKkYeHB82aNSvTbfj7+1fbHyjQ/oNeA+1/9d5/0GtQ3fcfyuY1+LUjVZfp5HURERERN1GxEhEREXETFasqwmazERMTg81mMzuKKar7/oNeA+1/9d5/0GtQ3fcfKsZroJPXRURERNxER6xERERE3ETFSkRERMRNVKxERERE3ETFSkRERMRNVKwqsRkzZtCjRw/8/Pxo2LAhgwcP5uDBg2bHKlfz5s2jU6dOrovBhYeH89VXX5kdyzSvv/46FouFCRMmmB2l3EybNg2LxVLs0bZtW7NjlavTp08zbNgw6tWrh6+vLx07dmTbtm1mxyo3zZs3v+LvgMViYdy4cWZHKxdFRUX86U9/okWLFvj6+tKyZUumT59eovvaVRVZWVlMmDCBkJAQfH19ue2229i6daspWXTl9Ursm2++Ydy4cfTo0YPCwkJeeOEFIiIi2LdvHzVr1jQ7Xrlo1qwZr7/+Oq1bt8YwDBYsWMCgQYPYuXMnHTp0MDteudq6dSvvvfcenTp1MjtKuevQoQPr1q1zPffyqj6/2jIzM+nVqxd9+/blq6++okGDBhw+fJg6deqYHa3cbN26laKiItfzpKQk7rnnHh5++GETU5WfmTNnMm/ePBYsWECHDh3Ytm0bI0eOJCAggKefftrseOXiySefJCkpiY8//pgmTZqwaNEi+vXrx759+2jatGn5hjGkyjh79qwBGN98843ZUUxVp04d48MPPzQ7RrnKysoyWrdubaxdu9a44447jGeeecbsSOUmJibG6Ny5s9kxTDN58mSjd+/eZseoUJ555hmjZcuWhtPpNDtKuYiKijJGjRpVbNoDDzxgDB061KRE5Ss3N9fw9PQ0Vq5cWWx6165djRdffLHc8+ijwCrEbrcDULduXZOTmKOoqIh//etf5OTkEB4ebnaccjVu3DiioqLo16+f2VFMcfjwYZo0aUJoaChDhw4lJSXF7Ejl5osvvqB79+48/PDDNGzYkFtuuYUPPvjA7Fimyc/PZ9GiRYwaNcrtN7uvqG677Tbi4+M5dOgQALt27eK7775jwIABJicrH4WFhRQVFeHj41Nsuq+vL999912556k+x8urOKfTyYQJE+jVqxc333yz2XHK1Z49ewgPD+fixYvUqlWL5cuX0759e7NjlZt//etf7Nixw7TzCczWs2dP4uLiaNOmDT/99BN//vOfuf3220lKSsLPz8/seGXu2LFjzJs3j4kTJ/LCCy+wdetWnn76aaxWK9HR0WbHK3crVqzg/PnzjBgxwuwo5WbKlCk4HA7atm2Lp6cnRUVFvPrqqwwdOtTsaOXCz8+P8PBwpk+fTrt27WjUqBGffvopCQkJtGrVqvwDlfsxMikTY8eONUJCQoyTJ0+aHaXc5eXlGYcPHza2bdtmTJkyxahfv76xd+9es2OVi5SUFKNhw4bGrl27XNOq20eB/yszM9Pw9/evNh8He3t7G+Hh4cWmjR8/3rj11ltNSmSuiIgI47777jM7Rrn69NNPjWbNmhmffvqpsXv3bmPhwoVG3bp1jbi4OLOjlZsjR44Yffr0MQDD09PT6NGjhzF06FCjbdu25Z5FxaoKGDdunNGsWTPj2LFjZkepEO6++25jzJgxZscoF8uXL3f9Irn8AAyLxWJ4enoahYWFZkc0Rffu3Y0pU6aYHaNcBAcHG6NHjy427R//+IfRpEkTkxKZ5/jx44aHh4exYsUKs6OUq2bNmhlz5swpNm369OlGmzZtTEpknuzsbCM1NdUwDMN45JFHjHvvvbfcM+gcq0rMMAyeeuopli9fzvr162nRooXZkSoEp9NJXl6e2THKxd13382ePXtITEx0Pbp3787QoUNJTEzE09PT7IjlLjs7m6NHj9K4cWOzo5SLXr16XXGZlUOHDhESEmJSIvPExsbSsGFDoqKizI5SrnJzc/HwKP527unpidPpNCmReWrWrEnjxo3JzMxkzZo1DBo0qNwz6ByrSmzcuHF88skn/Pvf/8bPz4+0tDQAAgIC8PX1NTld+Zg6dSoDBgwgODiYrKwsPvnkEzZu3MiaNWvMjlYu/Pz8rjinrmbNmtSrV6/anGv33HPPMXDgQEJCQkhNTSUmJgZPT08ef/xxs6OViz/+8Y/cdtttvPbaazzyyCNs2bKF999/n/fff9/saOXK6XQSGxtLdHR0tbrcBsDAgQN59dVXCQ4OpkOHDuzcuZO//e1vjBo1yuxo5WbNmjUYhkGbNm04cuQIzz//PG3btmXkyJHlH6bcj5GJ2wBXfcTGxpodrdyMGjXKCAkJMaxWq9GgQQPj7rvvNr7++muzY5mqup1j9eijjxqNGzc2rFar0bRpU+PRRx81jhw5YnascvWf//zHuPnmmw2bzWa0bdvWeP/9982OVO7WrFljAMbBgwfNjlLuHA6H8cwzzxjBwcGGj4+PERoaarz44otGXl6e2dHKzeLFi43Q0FDDarUagYGBxrhx44zz58+bksViGNXo0qwiIiIiZUjnWImIiIi4iYqViIiIiJuoWImIiIi4iYqViIiIiJuoWImIiIi4iYqViIiIiJuoWImIiIi4iYqViIiIiJuoWImIXMPx48exWCwkJiaW+bYMw2DMmDHUrVvXtc2rTRORik3FSkQqpREjRmCxWHj99deLTV+xYgUWi8WkVNdv9erVxMXFsXLlSn766Sduvvnmq04TkYpNxUpEKi0fHx9mzpxJZmam2VFu2NGjR2ncuDG33XYbgYGBeHl5XXVaaRmGQWFhYRkkFpGrUbESkUqrX79+BAYGMmPGjKvO//nnn3n88cdp2rQpNWrUoGPHjnz66afFxjidTt544w1atWqFzWYjODiYV199tdiYY8eO0bdvX2rUqEHnzp1JSEhwzYuLi6N27dqsWLGC1q1b4+PjQ2RkJCdPnnSNGTFiBIMHDy62zgkTJnDnnXe65o8fP56UlBQsFgvNmze/6rTLeWfMmEGLFi3w9fWlc+fOfPbZZ671bty4EYvFwldffUW3bt2w2Wx89913pX1pReQ6lf6fPyIiFYSnpyevvfYaQ4YM4emnn6ZZs2bF5l+8eJFu3boxefJk/P39WbVqFcOHD6dly5aEhYUBMHXqVD744AP+/ve/07t3b3766ScOHDhQbD0vvvgis2bNonXr1rz44os8/vjjHDlyxHUEKTc3l1dffZWFCxditVr5wx/+wGOPPcb3339fov2YPXs2LVu25P3332fr1q14enpitVqvmAYwY8YMFi1axLvvvkvr1q3ZtGkTw4YNo0GDBtxxxx2udU6ZMoVZs2YRGhpKnTp1rvs1FpHSUbESkUrt/vvvp0uXLsTExDB//vxi85o2bcpzzz3nej5+/HjWrFnDkiVLCAsLIysri9mzZzNnzhyio6MBaNmyJb179y62nueee46oqCgA/vznP9OhQweOHDlC27ZtASgoKGDOnDn07NkTgAULFtCuXTu2bNniKnC/JCAgAD8/Pzw9PQkMDHRN/99peXl5vPbaa6xbt47w8HAAQkND+e6773jvvfeKFatXXnmFe+65p2Qvooi4jYqViFR6M2fO5K677ipWogCKiop47bXXWLJkCadPnyY/P5+8vDxq1KgBwP79+8nLy+Puu+/+xfV36tTJ9d+NGzcG4OzZs65i5eXlRY8ePVxj2rZtS+3atdm/f3+JilVJHTlyhNzc3CsKU35+Prfcckuxad27d3fbdkWk5FSsRKTS69OnD5GRkUydOpURI0a4pr/55pvMnj2bt956i44dO1KzZk0mTJhAfn4+AL6+viVav7e3t+u/L3/j0Ol0ljifh4cHhmEUm1ZQUFDi5S/Lzs4GYNWqVTRt2rTYPJvNVux5zZo1S71+EblxKlYiUiW8/vrrdOnShTZt2rimff/99wwaNIhhw4YBl8rQoUOHaN++PQCtW7fG19eX+Ph4nnzyyevedmFhIdu2bXMdnTp48CDnz5+nXbt2ADRo0ICkpKRiyyQmJhYrbCXRvn17bDYbKSkpxT72E5GKQ8VKRKqEjh07MnToUN5++23XtNatW/PZZ5+xefNm6tSpw9/+9jfOnDnjKlY+Pj5MnjyZSZMmYbVa6dWrF+fOnWPv3r2MHj26xNv29vZm/PjxvP3223h5efHUU09x6623uorWXXfdxZtvvsnChQsJDw9n0aJFJCUlXfHx3a/x8/Pjueee449//CNOp5PevXtjt9v5/vvv8ff3d50nJiLm0eUWRKTKeOWVV4p9RPfSSy/RtWtXIiMjufPOOwkMDLzisgd/+tOfePbZZ3n55Zdp164djz76KGfPni3VdmvUqMHkyZMZMmQIvXr1olatWixevNg1PzIykj/96U9MmjSJHj16kJWVxRNPPHFd+zh9+nT+9Kc/MWPGDNq1a0f//v1ZtWoVLVq0uK71iYh7WYz//eBfRERKLC4ujgkTJnD+/Hmzo4hIBaAjViIiIiJuomIlIiIi4ib6KFBERETETXTESkRERMRNVKxERERE3ETFSkRERMRNVKxERERE3ETFSkRERMRNVKxERERE3ETFSkRERMRNVKxERERE3OT/Aed5T30h9n0VAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":0,\n", " \"Neuenhauser-Putzmaschine\":1,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":2,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":2,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":0,\n", " \"Turm_Anzahl_Wendlungen\":0,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(2, 10):\n", " Anzahl_MG.update({\"Neuenhauser-Putzmaschine_Nachpuffer\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Nachpuffer\")\n", "plt.show()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Turm Wendlungen" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{0: 106893.90666666668, 1: 107046.02666666667, 2: 107154.58666666667, 3: 107306.70666666667, 4: 107458.82666666666, 5: 107610.94666666667, 6: 107763.06666666667, 7: 107871.62666666668, 8: 108023.74666666667, 9: 108175.86666666667}\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlYAAAG2CAYAAAC9CcgAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABOCUlEQVR4nO3dfVxUZd4/8M+AzjAiIA8ywzCgGKT5EAgEopaaJBlaKPS8LWt5bw+2xWKZ3oVWa1l6t7mmaW0ltr/d0kDN1DRCXTURFcQ0U0HxYZQBUZiRZ5i5fn+gRyc0QQ8OD5/36zWv+z7Xueac7wy182m+1zmjEEIIEBEREdFNc7B3AUREREQdBYMVERERkUwYrIiIiIhkwmBFREREJBMGKyIiIiKZMFgRERERyYTBioiIiEgmDFZEREREMmGwIiIiIpIJgxURERGRTOwarLZu3Yrx48dDp9NBoVBg9erVNvuFEJg5cyZ8fHygVqsRHR2N/Px8mzm5ubm477770KNHD3h6euLPf/4zKioqbOacPHkSsbGx6NatG7y9vfHqq6+ioaHBZs6WLVsQGhoKlUqFwMBApKamNql30aJF6N27N5ycnBAZGYldu3bJ8j4QERFRx2DXYFVZWYng4GAsWrToqvvnzp2LBQsWYMmSJcjOzoazszNiYmJQU1MDADhz5gyio6MRGBiI7OxsbNiwAb/88gv+9Kc/ScewWCyIjY1FXV0dduzYgWXLliE1NRUzZ86U5hQWFiI2NhajRo1CXl4ekpKSMHnyZGzcuFGas3z5ciQnJ2PWrFnIzc1FcHAwYmJiUFJS0jpvDhEREbU/oo0AIFatWiVtW61WodVqxbx586Sx8vJyoVKpxFdffSWEEOKTTz4R3t7ewmKxSHN+/vlnAUDk5+cLIYRYv369cHBwEEajUZqzePFi4erqKmpra4UQQkybNk0MGDDApp5HH31UxMTESNsRERFiypQp0rbFYhE6nU7MmTNHhldPREREHUEXewe7ayksLITRaER0dLQ05ubmhsjISGRlZeGxxx5DbW0tlEolHBwuf/GmVqsBANu3b0dgYCCysrIwaNAgaDQaaU5MTAyef/55/PLLLxg8eDCysrJsznNpTlJSEgCgrq4OOTk5mDFjhrTfwcEB0dHRyMrKuuZrqK2tRW1trbRttVpx/vx5eHp6QqFQ3NgbQ0RERLeUEAIXLlyATqezyRxX02aDldFoBACbQHRp+9K+e++9F8nJyZg3bx5efvllVFZWYvr06QCAoqIi6ThXO8aV57jWHLPZjOrqapSVlcFisVx1zqFDh675GubMmYO33nqrRa+biIiI2qZTp05Br9f/7pw2G6yaY8CAAVi2bBmSk5MxY8YMODo64qWXXoJGo7luorwVZsyYgeTkZGnbZDLB398fp06dgqurqx0rIyIiouYym83w8/ODi4vLdee22WCl1WoBAMXFxfDx8ZHGi4uLERISIm0/8cQTeOKJJ1BcXAxnZ2coFAr8/e9/R58+faTj/PbqveLiYptzaLVaaezKOa6urlCr1XB0dISjo+NV51w6xtWoVCqoVKom466urgxWRERE7UxzlvHY/2udawgICIBWq0VmZqY0ZjabkZ2djaioqCbzNRoNunfvjuXLl8PJyQn33XcfACAqKgr79++3uXovIyMDrq6u6N+/vzTnyvNcmnPpPEqlEmFhYTZzrFYrMjMzr1oLERERdU52/caqoqICBQUF0nZhYSHy8vLg4eEBf39/JCUlYfbs2QgKCkJAQABSUlKg0+kQFxcnPWfhwoUYOnQounfvjoyMDLz66qt477330KNHDwDAmDFj0L9/fzz11FOYO3cujEYj3njjDUyZMkX6Num5557DwoULMW3aNDz99NPYtGkTVqxYgXXr1knnSU5ORmJiIsLDwxEREYH58+ejsrISkyZNuiXvFREREbUD9rwkcfPmzQJAk0diYqIQovGWCykpKUKj0QiVSiVGjx4tDh8+bHOMp556Snh4eAilUinuvPNO8eWXXzY5z/Hjx8XYsWOFWq0WXl5eYurUqaK+vr5JLSEhIUKpVIo+ffqIpUuXNjnORx99JPz9/YVSqRQRERFi586dLXq9JpNJABAmk6lFzyMiIiL7acnnt0IIIeyY6zoVs9kMNzc3mEwmrrEiIiJqJ1ry+d1m11gRERERtTcMVkREREQyYbAiIiIikgmDFREREZFMGKyIiIiIZMJgRURERCQTBisiIiIimTBYEREREcmEwYqIiIhIJgxWRERERDJhsCIiIiKSCYMVERERkUwYrIiIiIhkwmBFREREJBMGKyIiIiKZMFgRERERyYTBioiIiEgmDFZEREREMmGwIiIiIpIJgxURERGRTBisiIiIiGTCYEVEREQkEwYrIiIi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PYdZs2bBz88PvXr1wrx58wAADz/8MADgu+++Q3FxMYYMGQInJydkZGTg3XffxSuvvCKd97nnnsPChQsxbdo0PP3009i0aRNWrFiBdevWSXOSk5ORmJiI8PBwREREYP78+aisrMSkSZNuwTtFRERE7ULrX6R4bZs3bxYAmjwSExOFEI23XEhJSREajUaoVCoxevRocfjwYZtj1NXVialTpwpvb2/h4uIioqOjxYEDB6T933//vQgJCRHdu3cXzs7OIjg4WCxZskRYLJYmtYSEhAilUin69Okjli5d2qTejz76SPj7+wulUikiIiLEzp07W/R6ebsFIiKi9qcln98KIa647wC1KrPZDDc3N5hMJq63IiIiaida8vndZtdYEREREbU3DFZEREREMmGwIiIiIpIJgxURERGRTBisiIiIiGTCYEVEREQkEwYrIiIiIpkwWBERERHJhMGKiIiISCYMVkREREQyYbAiIiIikgmDFREREZFMGKyIiIiIZMJgRURERCQTBisiIiIimTBYEREREcmEwYqIiIhIJgxWRERERDJhsCIiIiKSCYMVERERkUwYrIiIiIhkwmBFREREJBMGKyIiIiKZMFgRERERyYTBioiIiEgmDFZEREREMmGwIiIiIpIJgxURERGRTBisiIiIiGTCYEVEREQkEwYrIiIiIpkwWBERERHJhMGKiIiISCYMVkREREQyYbAiIiIikgmDFREREZFMGKyIiIiIZMJgRURERCQTBisiIiIimTBYEREREcmEwYqIiIhIJgxWRERERDJhsCIiIiKSCYMVERERkUwYrIiIiIhkwmBFREREJBMGKyIiIiKZMFgRERERyYTBioiIiEgmDFZEREREMmGwIiIiIpKJXYPV1q1bMX78eOh0OigUCqxevdpmvxACM2fOhI+PD9RqNaKjo5Gfn9/kOOvWrUNkZCTUajXc3d0RFxdns//kyZOIjY1Ft27d4O3tjVdffRUNDQ02c7Zs2YLQ0FCoVCoEBgYiNTW1yXkWLVqE3r17w8nJCZGRkdi1a9fNvgVERETUgdg1WFVWViI4OBiLFi266v65c+diwYIFWLJkCbKzs+Hs7IyYmBjU1NRIc9LT0/HUU09h0qRJ2LdvH3766Sc88cQT0n6LxYLY2FjU1dVhx44dWLZsGVJTUzFz5kxpTmFhIWJjYzFq1Cjk5eUhKSkJ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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":0,\n", " \"Neuenhauser-Putzmaschine\":0,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":0,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":0,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":1,\n", " \"Turm_Anzahl_Wendlungen\":1,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range (10):\n", " Anzahl_MG.update({\"Turm_Anzahl_Wendlungen\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Windungen\")\n", "plt.ylim(106000, 109000)\n", "plt.show()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### Turm" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{0: 105333.16666666666, 1: 107046.02666666667, 2: 108758.88666666666, 3: 110428.18666666666, 4: 112141.04666666666, 5: 113853.90666666666, 6: 115566.76666666666, 7: 117279.62666666666, 8: 118992.48666666666, 9: 120705.34666666666}\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlYAAAGwCAYAAABrUCsdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABbEUlEQVR4nO3deVxU9f4/8NcMMMM6bAqIAmq4ociiSZjaRqCRZZYLmplaV+/FLcqtm0srqZWmoN5u92r9SnNJzVArQg1NcmETXHBDQREQkRkWgWHm8/uDL3MjUUEHDsvr+Xicx71zzmfOeZ+Z6Lw673POyIQQAkRERET0wORSF0BERETUWjBYERERERkJgxURERGRkTBYERERERkJgxURERGRkTBYERERERkJgxURERGRkZhKXUBbotfrkZOTAxsbG8hkMqnLISIionoQQqC4uBiurq6Qy+9+TorBqgnl5OTAzc1N6jKIiIjoPmRnZ6NTp053HcNg1YRsbGwAVH8xKpVK4mqIiIioPjQaDdzc3AzH8bthsGpCNe0/lUrFYEVERNTC1OcyHl68TkRERGQkDFZERERERsJgRURERGQkDFZERERERsJgRURERGQkDFZERERERsJgRURERGQkDFZERERERsJgRURERGQkDFZERERERsJgRURERGQkDFZERERERsJgRURERK3CwXPXUa7VSVoDgxURERG1aJVVerwfcwoT/nMU78eckrQWU0m3TkRERPQAsgvLMH1TMlKziwAA5mYm0OsF5HKZJPUwWBEREVGL9FN6LuZsS0VxeRVsLczwySgfPO3lLGlNDFZERETUolRU6RC55ww2HL4EAPBzt8PqMD90sreUtjAwWBEREVELknWjDOEbk5B2VQ0A+NuQrpgT0gNmJs3jsnEGKyIiImoR9qRdw7xtJ1BcUQU7SzN8OsoHT/WStvX3VwxWRERE1KyVa3X4aM9pfJ1wGQDQz8Meq8P84GpnIXFlt2OwIiIiombrUkEpwjcm4WSOBgAw7bGH8GZw92bT+vsrBisiIiJqlmJO5GD+92koqaiCvaUZPhvtiyd6Okld1l0xWBEREVGzUq7V4f2YU/j2SBYA4OHO9lgV5ocOts2v9fdXDFZERETUbFy8XoLwjck4fa269fePxx9CxNPdYdpMW39/xWBFREREzcIPKVfx9vY0lFbq4GilwGdj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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", " rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":0,\n", " \"Neuenhauser-Putzmaschine\":0,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":0,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":0,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":1,\n", " \"Turm_Anzahl_Wendlungen\":1,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(10):\n", " Anzahl_MG.update({\"Turm\": k})\n", " erg = eine_anlage(Anzahl_MG)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Türme\")\n", "plt.show()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### rsm fa sensor optisch Traverse" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{0: 107046.02666666667, 1: 107046.02666666667, 2: 107046.02666666667, 3: 107046.02666666667, 4: 107046.02666666667, 5: 107046.02666666667, 6: 107046.02666666667, 7: 107046.02666666667, 8: 107046.02666666667, 9: 107046.02666666667}\n" ] }, { "data": { "image/png": "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3Xnnnfr5z3+umpoa9e3bV//4xz+UmpoqSYqMjNSSJUv0+9//XhkZGerYsaNyc3N1zz33OMdNTk7W0qVLdeutt+rRRx9Vjx499PTTTys7O9upueKKK7R3715NnjxZ5eXl6tevn5YvX37MBe0AAKDtchljzDcVJScna/369eratWujFv3hD3+oV155RYmJid+5wdYkGAwqNjZWgUCA660AAGghmvL+3agzVqWlpU1qYMuWLU2qBwAAaA2a7bcCAQAAWppGB6vly5fryiuvbHDuP//5j9LS0vTmm29aawwAAKClaXSwuueee3T11VdLkh588MGQH0Lu0aOHbrzxRk2YMMF+hwAAAC1Eo4PVpk2blJKSIkl64IEHVFZWpoceesgJWBdeeKHWr19/croEAABoARodrI7+jT7pq9sq3HPPPSorK5Mkvffee4qLi7PfIQAAQAvR6GA1dOhQ3XPPPaqpqZH01Q8gG2Pkcrm0ZcsW3XLLLc5HhQAAAG1Ro4PVlClTVFpaquTkZB0+fFj33nuvqqqqdPHFF6tfv34677zzdO+9957MXgEAAJq1Rgcrn8+nkpISjR8/XpK0bds2GWOUlZWlN954Q88++6zcbvdJaxQAAKC5a9Sd17+uf//+WrhwoUaOHKkXX3xRp59++snordXhzusAALQ81u+8/nUbN24M+V8AAAA08qPAESNGKBgMNnrRa665Rnv27PnWTQEAALREjfooMDIyUh988IFOPfXUb1zQGKPExET5/X4+IvwaPgoEAKDlsf5RoDFGZ511lpXmAAAAWqtGBavVq1c3eeHTTjutyY8BAABoyRoVrH7605+e7D4AAABavEbfxwoAAAAnRrACAACwhGAFAABgCcEKAADAkiYHq0OHDunLL7909j/55BPNmDFDr776qtXGAAAAWpom/6TNpZdeqhEjRmjMmDHav3+/0tPT1b59e33++ef605/+pN///vcno0+cgDFGh2pqw90GAABhF90+Ui6XK2zHb3Kw2rhxox555BFJ0osvvqj4+Hht2rRJf//73zV58mSCVRgcqqlVn8krwt0GAABh99492erg/lY/hWxFkz8K/PLLLxUTEyNJevXVVzVixAhFREToxz/+sT755BPrDQIAALQUTY50Z555phYvXqzLLrtMK1as0K233ipJ2rNnD79/FybR7SP13j3Z4W4DAICw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nhmyxcXFNXo9l8ulQYMG6e6779amTZvkdru1aNEieb1eJSQkHHNrhzfffFN9+vQ57nrx8fFKSEjQxx9/fExfycnJ3/p5A/h+ccYKQKvy3//+VyNHjtT111+vH/3oR4qJidH69etVWFioSy+9VJmZmcrIyNDw4cNVWFios846S2VlZVq6dKkuu+yykI/njqekpERFRUXKyspSt27dVFJSor179+qcc86RJI0bN04FBQU644wz1K9fP82dO1d+v9/55t/x3H333br55psVGxuroUOHqqqqSuvXr9e+ffuUn59v5fUBcHIRrAC0Kp06dVJ6eroeeeQRffTRR6qpqVFiYqJuuOEG3XHHHXK5XFq2bJnuvPNOXXfdddq7d698Pp8uvPBCxcfHN+oYXq9Xa9as0YwZMxQMBtWzZ089/PDDuuiiiyRJN998swKBgG677Tbt2bNHffr00csvv6wf/OAHJ1x39OjR6tChg6ZPn65x48apY8eOSklJ0dixY7/rywLge+Iy5v++HwwAAIDvhGusAAAALCFYAQAAWEKwAgAAsIRgBQAAYAnBCgAAwBKCFQAAgCUEKwAAAEsIVgAAAJYQrAAAACwhWAEAAFhCsAIAALDk/wGsToKkmhI9NwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import rieter_ekalk as rek\n", "import matplotlib.pyplot as plt\n", "\n", "def eine_anlage(Anzahl_MG, rsm_fa_eingabe):\n", "\n", " rsm_direct_eingabe = {\n", " }\n", "\n", " flyer_f40_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0, #wird in deckblatt-Klasse berechnet\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Korrektur\":0,\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":2, #wird in deckblatt-Klasse berechnet\n", " #\"Anzahl_Schienen\":0,\n", " \"Single_Line_Durchfahrt\":False,\n", " \"Nachpuffer\":False,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenhalter\":0,\n", " \"Sensor_induktiv_Spulenhalter_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Doffer\":0,\n", " \"Interface_Doffer_Korrektur\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Weiche_nach_Flyer_bipolar_Korrektur\":0,\n", " \"Dreifachweiche\":0,\n", " \"Wechsel\":0,\n", " \"Stopper\":0,\n", " \"RA_uni\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"RRA_BI_abhebbar\":0,\n", " \"RRA_BI_abhebbar_Korrektur\":0,\n", " \"RRA_bi\":0,\n", " #\"RRA_bi_Korrektur\":0,\n", " #\"RRA_bi_ohne_SPS_Ansteuerung\":0,\n", " \"RRA_bi_ohne_SPS_Ansteuerung_Korrektur\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"Doppelstreckenantrieb_Korrektur\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " neuenhauser_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Neuenhauser-Putzmaschine\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Vorpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Neuenhauser-Putzmaschine_Nachpuffer\":0, #wird in deckblatt-Klasse zugewiesen\n", " #\"Anzahl_Vorstaustrecken\":0,\n", " #\"Anzahl_Nachstaustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensorik_Zugpositionierung\":0,\n", " #\"Sensor_WT18_Spulenprüfung_voll_leer\":0,\n", " #\"Bedientableau_2fach\":0,\n", " \"Bedientableau_2fach_Korrektur\":0,\n", " #\"Interface_Putzmaschine\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_PM_bipolar\":0,\n", " #\"RA_uni_abhebbar\":0,\n", " \"RA_uni_abhebbar_Korrektur\":0,\n", " #\"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " #\"RA_uni_abhebbar_unger_Sch\":0,\n", " #\"Doppelstreckenantrieb\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " flyer_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Flyer\":0, # äquivalent zu 'Anzahl'\n", " #\"Anzahl_Schienen:\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\":0,\n", " #\"Sensor_induktiv_Spulenalter_Zug_positionierung\":0,\n", " #\"Bedientableau_2fach\":0,\n", " #\"Interface_Doffer\":0,\n", " #\"Weiche\":0,\n", " \"Weiche_Korrektur\":0,\n", " #\"Weiche_nach_Flyer_bipolar\":0,\n", " \"Dreifachweiche\":0,\n", " #\"Wechsel\":0,\n", " \"Wechsel_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " #\"RA_bi_abhebbar\":0,\n", " \"RA_bi_abhebbar_Korrektur\":0,\n", " \"RA_bi\":4,\n", " #\"Doppelstreckenantrieb\":0,\n", " \"RA_bi_abhebbar_unger_Schiene\":0,\n", " #\"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " #\"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " #\"Werma_Rundumleuchte_Störung\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " }\n", " verbindungsstrecken_w_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Sensor_optisch_Traverse\":0,\n", " \"Bedientableau_1fach\":0,\n", " \"Bedientableau_2fach\":0,\n", " \"Bedientableau_14fach\":0,\n", " \"Weiche\":0,\n", " \"Dreifachweiche\":0,\n", " \"Kreuzungsweiche\":1,\n", " \"Werma_Rundumleuchte_Störung\":0,\n", " \"RA_uni\":0,\n", " \"RA_uni_ohne_SPS_Ansteuerung\":0,\n", " \"RA_bi\":0,\n", " \"RA_bi_ohne_SPS-Ansteuerung\":0,\n", " \"Doppelstreckenantrieb\":0\n", " }\n", " puffer_eingabe = {\n", " # auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " # \"Anzahl\":0,\n", " # \"Puffer\":0, #äquivalent zu Anzahl\n", " # \"Anzahl_Pufferstrecken\":0, #äquivalent zu Anzahl_Staustrecken\n", " # \"Anzahl_Staustrecken\":0,\n", " # \"Sensor_optisch_Traverse\":0,\n", " \"Sensor_optisch_Traverse_Korrektur\": 1,\n", " # \"Weiche\":0,\n", " \"Weiche_Korrektur\": 0,\n", " \"RA_bi_ungerade_Schiene\": 2,\n", " # \"Doppelstreckenantrieb\":0,\n", " # \"Meldelampe_Überstrom\":0,\n", " \"Meldelampe_Überstrom_Korrektur\": 0,\n", " # \"Hauptschalter_Ein_Meldung\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\": 0,\n", " }\n", " turm_eingabe = {\n", " #auskommentiert => kein Übergabeparameter, wird in Klasse berechnet\n", " #\"Anzahl\":0,\n", " #\"Turm\":0, #äquivalent zu Anzahl\n", " #\"Anzahl_Wendlungen\":0, #äquivalent zu Anzahl_Staustrecken\n", " #\"Anzahl_Staustrecken\":0,\n", " #\"Sensor_optisch_Traverse\":0,\n", " #\"Weiche\":0,\n", " #\"RA_bi\":0,\n", " \"RA_bi_Korrektur\":0,\n", " #\"RA_bi_ohne_SPS\":0,\n", " \"RA_bi_ohne_SPS_Korrektur\":0,\n", " #\"Bedientableau_2fach\":0,\n", " }\n", " mg = rek.MG(Anzahl_MG,\n", " rsm_direct=rsm_direct_eingabe,\n", " rsm_fa=rsm_fa_eingabe,\n", " flyer_f40=flyer_f40_eingabe,\n", " neuenhauser=neuenhauser_eingabe,\n", " flyer=flyer_eingabe,\n", " verbindungsstrecken_w=verbindungsstrecken_w_eingabe,\n", " puffer=puffer_eingabe,\n", " turm=turm_eingabe)\n", " Anzahl_EAS = {\n", " \"schaltschrank\":1\n", " }\n", " eas = rek.EA(Anzahl_EAS, mg)\n", "\n", " Anzahl_HW = {\n", " \"schaltschrankgehaeuse_b1x1200+1x800_zubehoer\": 1,\n", " \"sps_simatic_s7_1515_2\": 1,\n", " \"et200_sp_ea_ebene\":1,\n", " \"netzwerk_fernwartung\":1,\n", " \"anlagenrechner\":1,\n", " \"unterverteiler_fuer_2flyer\":2,\n", " \"unterverteiler_fuer_puffer\":1,\n", "\n", " \"korrektur_5_rsm_zusaetzlich_im_unterverteiler\":-1,\n", "\n", " \"korrektur_10_rsm_zusaetzlich_im_unterverteiler\":-2,\n", "\n", " \"ET200_SP\":1,\n", " \"et200_sp_base_unit_neue_last_mit_potKlemmen_or_et200_sp_base_unit_neue_last\":\"et200_sp_base_unit_neue_last_mit_potKlemmen\",\n", "\n", " # MATERIAL VOR ORT\n", " \"kabelpritschen_leitern_200_60\":348,\n", " \"kleinteile_rohre_schellen_kabelbinder_ect\":1.5,\n", " \"zuleitung_75_m_unterverteiler_12x4mm2_24_vdc_or_zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\":\"zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc\"\n", " }\n", "\n", " hw = rek.HW(Anzahl_HW, mg, eas)\n", "\n", " emo = rek.EMO(eas, hw, mg)\n", " Anzahl_DL = {\n", " \"Bedienerhandbuch\": 16,\n", " \"SPS_Doku\": 15\n", " }\n", " dl = rek.Dienstleistung(Anzahl_DL, hw)\n", " Anzahl_Ergebnis = {\n", " \"SPS_Programmierung\":150,\n", " \"SPS_Inbetriebsetzung\":130\n", " }\n", " erg = rek.Ergebnis(Anzahl_Ergebnis, hw, dl, emo)\n", " return erg.get_sum_of_costs(hw)\n", "\n", "\n", "Anzahl_MG = {\n", " \"SYSTEM\": \"FA\",\n", " \"RSM\":14,\n", " \"Flyer\":4,\n", " \"Flyer_Puffer\":2,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Vorpuffer\":0,\n", " \"Flyer_Electrojet_incl_intergrierte_Putzmaschine_Nachpuffer\":0,\n", " \"Neuenhauser-Putzmaschine\":0,\n", " \"Neuenhauser-Putzmaschine_Vorpuffer\":0,\n", " \"Neuenhauser-Putzmaschine_Nachpuffer\":0,\n", " \"Cason-Putzmaschine\":0,\n", " \"Cason-Putzmaschine_Vorpuffer\":0,\n", " \"Cason-Putzmaschine_Nachpuffer\":0,\n", " \"Puffer\":1,\n", " \"Anzahl_der_Pufferstrecken_pro_Puffer\":5,\n", " \"Begegnungsstrecke_Bypass\":2,\n", " \"Turm\":1,\n", " \"Turm_Anzahl_Wendlungen\":1,\n", " }\n", "rsm_fa_eingabe = {\n", " \"Flex_A_Premium\":False, # braucht man das noch?\n", " \"Getriebe_in_der_Mitte\":False, # braucht man das noch?\n", " \"RSM_Einfahrt_Ein_Beidseitig\":False, # braucht man das noch?\n", " \"Sensor_optisch_Traverse_zusätzlich\":6,\n", " \"Bedientableau_1fach_Korrektur\":0,\n", " \"Bedientableau_2fach_Korrektur\":4,\n", " \"Weiche_Korrektur\":4,\n", " \"RRA_bi_Korrektur\":0,\n", " \"RRA_bi_auf_Haupstrecke\":10,\n", " \"RRA_uni_Begegnung\":4,\n", " \"gemeinsame_Wendung\":0,\n", " \"Mit_Drucktaster_Korrektur\":0,\n", " \"Meldelampe_Überstrom_Korrektur\":0,\n", " \"Hauptschalter_Ein-Meldung_Korrektur\":0,\n", " \"Werma_Rundumleuchte_Störung_Korrektur\":0,\n", " \"klemmkasten_rsm\":2,\n", " }\n", "\n", "\n", "variationen = {}\n", "for k in range(10):\n", " Anzahl_MG.update({\"Sensor_optisch_Traverse_zusätzlich\": k})\n", " erg = eine_anlage(Anzahl_MG, rsm_fa_eingabe)\n", " variationen.update({k: erg})\n", "print(variationen)\n", "lists = sorted(variationen.items()) # sorted by key, return a list of tuples\n", "\n", "x, y = zip(*lists) \n", "\n", "plt.plot(x, y)\n", "plt.ylabel(\"Preis [€]\")\n", "plt.xlabel(\"Sensoren\")\n", "plt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.0" }, "orig_nbformat": 4, "vscode": { "interpreter": { "hash": "c261aea317cc0286b3b3261fbba9abdec21eaa57589985bb7a274bf54d6cc0a7" } } }, "nbformat": 4, "nbformat_minor": 2 }