# إضافة منحنيات التحكم في الخزان وتوفير الطلب (التخفيضات)

## مقدمة

يمكن استخدام منحنيات التحكم لتنفيذ تخفيضات الطلب عندما تقل مستويات الخزان عن عتبات معينة. وهذا يمثل تنفيذ تدابير إدارة الطلب المؤقتة. في هذا التمرين، سيتم تقليل الطلب بشكل تدريجي حيث يقل الخزان عن عتبات تخزين معينة. سيوضح هذا التمرين[ معلمة مؤشر منحنى التحكم](https://water-strategy.gitbook.io/water-strategy/modelling-fundamentals/parameters/control-curve-index-parameter)، ال [معلمة مصفوفة الفهرسة](https://water-strategy.gitbook.io/water-strategy/modelling-fundamentals/parameters/indexed-array-parameter) بالإضافة إلى [المعلمة المجمعة](https://water-strategy.gitbook.io/water-strategy/modelling-fundamentals/parameters/aggregated-parameter) بالإضافة إلى تداخل المعلمات.

## استنساخ السيناريو وتحديد منحنى التحكم

1. قم باستنساخ **«مصادر متوازنة»** السيناريو وتسمية السيناريو الجديد **«تخفيضات الطلب»**
2. أولاً سنحدد **منحنى التحكم** والتي تستخدم عتبات حجم التخزين لتقليل الطلب تدريجيًا لنمذجة قيود الطلب المفروضة على الطلب. المنحنى الأول هو [الملف الشخصي الشهري](https://water-strategy.gitbook.io/water-strategy/modelling-fundamentals/parameters/monthly-profile) (60٪ في الأشهر القادمة و 45٪ في حالات أخرى) مما يسمح بالتغييرات الموسمية في حين أن المنحنيين اللاحقين هما [الثوابت ](https://water-strategy.gitbook.io/water-strategy/modelling-fundamentals/parameters/constant)(40٪ و 10٪ من سعة تخزين الخزان).

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-bab33ad7f70504b7d4b9907dafe5514e0c33554e%2Fimage%20(191).png?alt=media" alt=""><figcaption><p>منحنى التحكم في الخزان</p></figcaption></figure>

سيتم تحديد منحنى التحكم في **البارامترات** علامة تبويب. في علامة تبويب المعلمات، أضف **بيور\_المعلمة**.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-44c6302ba7ffee95819750da0697a1870493f81d%2Fimage%20(192).png?alt=media" alt="" width="375"><figcaption><p>إضافة معلمة_Pywr</p></figcaption></figure>

قم بتسمية المعلمة **«منحنى التحكم في التخزين»** ثم اضغط *أدخل*\*\*. \*\*

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-e627f0872fd82c2f1dc8d8a4f20da3a6a2889484%2Fimage%20(194).png?alt=media" alt="" width="335"><figcaption><p><strong>منحنى التحكم في التخزين</strong></p></figcaption></figure>

قم بلصق مقتطف شفرة JSON التالي أدناه. يرجى ملاحظة كيفية الإشارة إلى «مثال الخزان» في السمة «storage\_node».

```
{
	«النوع»: «معامل مؤشر منحنى التحكم»،
	«storage_node»: «مثال للخزان»،
	«منحنيات التحكم»: [
		{
			«النوع»: «معلمة الملف الشخصي الشهرية»،
			«القيم»: [
				0.45،
				0.45،
				0.45،
				0.45،
				0.45،
				0.45،
				0.45،
				0.45،
				0.45،
				0.45،
				0.06،
				0.6
			]
		}،
		{
			«النوع»: «ثابت»،
			«القيمة»: 0.4
		}،
		{
			«النوع»: «ثابت»،
			«القيمة»: 0.1
		}
	]،
	«__مسجل__«: {
		«السلاسل الزمنية»: صحيح
	}
}
```

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-42ee8ff4ed1b7b6c3dc4e943726ea65d1befd08d%2Fimage%20(195).png?alt=media" alt=""><figcaption><p>قم بلصق الكود وحفظه</p></figcaption></figure>

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-4eb5c41ff93c5840dd10420159803fe8b1d4116b%2Fimage%20(196).png?alt=media" alt=""><figcaption><p>حدد التسلسل الزمني للتسجيل واحفظه</p></figcaption></figure>

في كل مرة، قم بخطوة [معلمة مؤشر منحنى التحكم](https://water-strategy.gitbook.io/water-strategy/modelling-fundamentals/parameters/control-curve-index-parameter) ستقوم بإرجاع قيمة الفهرس كما هو موضح أدناه:

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-fc738783e2f74cd69c55e9b1b15d843780a3d843%2Fimage%20(197).png?alt=media" alt=""><figcaption><p>منحنى التحكم في الخزان</p></figcaption></figure>

يمكن ربط هذه المؤشرات بعامل الطلب الذي سيتم تحديده باستخدام [معلمة المصفوفة المفهرسة](https://water-strategy.gitbook.io/water-strategy/modelling-fundamentals/parameters/indexed-array-parameter). سيتم استخدام عامل الطلب لتقليل الطلب عند تجاوز كل حد لمنحنى التحكم.

## عامل الطلب المساعد

1. سنقوم بربط ما يلي **عوامل الطلب** إلى مستويات فشل منحنى التحكم المختلفة:

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-8489f0840b3bfaa29119f4cd3fcc7deb4abd7ada%2Fimage%20(198).png?alt=media" alt=""><figcaption><p>منحنى التحكم في الخزان</p></figcaption></figure>

سيؤدي ذلك إلى خفض الطلب إلى 90٪، 80٪ و 50٪ من الطلب الأساسي المقابل لـ 10٪، 20٪ و **1234567890**\_\_ 5\_\_٪.

2. قم بإنشاء ملف جديد **بيور\_المعلمة**

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-817a2e1e358d8a48920b79b6f0ef0dd4d57eabe4%2Fimage%20(199).png?alt=media" alt=""><figcaption><p>قم بإنشاء معلمة Pywr_جديدة</p></figcaption></figure>

3. قم بتسمية المعلمة **«عامل الطلب على منحنى التحكم»** ثم اضغط *أدخل*\*\*. \*\*

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-97b9e167ecc5f41e7688b436c790b39682aaab9c%2Fimage%20(200).png?alt=media" alt="" width="275"><figcaption><p>قم بتسمية المعلمة</p></figcaption></figure>

4. قم بلصق مقتطف شفرة JSON التالي أدناه. يرجى ملاحظة كيفية الإشارة إلى «`منحنى التحكم في التخزين» في السمة` index\_parameter"\`.

```
{
	«النوع»: «indexedarrayparameter»،
	«index_parameter»: «منحنى التحكم في التخزين»،
	«المعلمات»: [
		1،
		0.9،
		0.8،
		0.5
	]،
}
```

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-451786a7db32c504bb4bba194e5746d22b15ad62%2Fimage%20(201).png?alt=media" alt=""><figcaption><p>قم بلصق الكود وحفظه</p></figcaption></figure>

تأخذ سمة `params` إما المقاييس القياسية أو معاملات Pywr ويتوافق فهرس المصفوفة مع الفهرس في المعلمة المشار إليها في **الفهرس\_المعلمة** وهي في هذه الحالة منحنى التحكم.

5. حدد هذا الإخراج الخاص بالمعلمة.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-2f2e7d710387239023de9428b6a61cfa2f75878f%2Fimage%20(202).png?alt=media" alt=""><figcaption><p>حدد التسلسل الزمني للتسجيل واحفظه</p></figcaption></figure>

## تحديد الطلب الأساسي

بعد ذلك سنحدد الطلب الأساسي. هذا هو الطلب الذي يحتاج إليه الخزان قبل تنفيذ أي تخفيضات. في البرنامج التعليمي السابق، يتم تعريف نموذج الطلب على أنه رقم قياسي (0.1) على سمة Max\ \_flow لعقدة مخرجات الطلب النموذجية:

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-dd735af992eccbc5c107e27897cc6accb493b186%2Fimage%20(203).png?alt=media" alt=""><figcaption><p>مثال الطلب</p></figcaption></figure>

سنستبدل هذا بـ **مرجع المعلمة.**

1. أولاً، سنحدد الطلب الأساسي باستخدام **المعلمة الثابتة.**

إضافة جديد \*\*بيور\_المعلمة. \*\*

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-0c291e642a757a907c2ea16af661dd15eafdbad0%2Fimage%20(205).png?alt=media" alt=""><figcaption><p>إضافة معلمة pyWR_جديدة</p></figcaption></figure>

وقم بتسميته **الطلب الأساسي** ثم اضغط *أدخل*.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-78fb7b4320fe5da19fbd92672fdb7e3d1e6b9230%2Fimage%20(206).png?alt=media" alt="" width="274"><figcaption><p>قم بتسمية المعلمة pyWR_الجديدة</p></figcaption></figure>

2. سيظل الطلب الأساسي 0.1 مم 3/يوم. انسخ مقتطف شفرة JSON والصقه في علامة تبويب JSON.

```
{
	«النوع»: «ثابت»،
	«القيمة»: 0.1
}
```

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-06752aaf2ece009e3264208681d81ec7277e6a18%2Fimage%20(207).png?alt=media" alt=""><figcaption><p>قم بلصق الكود وحفظه</p></figcaption></figure>

في كل خطوة زمنية، سيكون الطلب النموذجي هو الطلب الأساسي مضروبًا في عامل الطلب:

«الطلب بالخطوة الزمنية = الطلب الأساسي × عامل الطلب»

## احسب **الطلب بخطوةٍ زمنية**

يمكن تحقيق ذلك باستخدام [المعلمة المجمعة](https://water-strategy.gitbook.io/water-strategy/modelling-fundamentals/parameters/aggregated-parameter).

1. إضافة جديد \*\*بيور\_المعلمة. \*\*

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-a8515683ec0d8e08842d11ba9e5e6ac7d441e91b%2Fimage%20(208).png?alt=media" alt=""><figcaption><p>إضافة معلمة pyWR_جديدة</p></figcaption></figure>

قم بتسمية المعلمة الجديدة **«الطلب بالخطوة الزمنية»**

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-147d44abcd8b603f3bc1330bac3cc49ae18a4df1%2Fimage%20(209).png?alt=media" alt="" width="274"><figcaption><p>قم بتسمية المعلمة الجديدة</p></figcaption></figure>

2. انسخ مقتطف شفرة JSON والصقه في علامة تبويب JSON.

```
{
	«النوع»: «المعلمة المجمعة»،
	«agg_func»: «المنتج»،
	«المعلمات»: [
		«الطلب الأساسي»،
		«عامل الطلب على منحنى التحكم»
	]
}
```

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-e49fd7ce61fad69fb6fce0ced157c706c7588dcb%2Fimage%20(210).png?alt=media" alt=""><figcaption><p>قم بلصق الكود وحفظه</p></figcaption></figure>

حدد لجعل قيمة المعلمة هذه يتم إخراجها في كل خطوة زمنية.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-db46ee2926b20e3f8abc8660c25c934ab34316c3%2Fimage%20(211).png?alt=media" alt=""><figcaption><p>حدد تسجيل السلاسل الزمنية</p></figcaption></figure>

3. ال **«الطلب بالخطوة الزمنية»** يحدد الطلب في كل خطوة زمنية مع مراعاة الحالة (أي التخزين في الوقت الفعلي) في الخزان.

هذه **المعلمة** يحتاج إلى الرجوع إليه في **الحد الأقصى\_سمة التدفق** لعقدة الطلب.

4. انقر فوق عقدة الطلب واكتب أو الصق '**الطلب بالخطوة الزمنية»** في سمة max\ \_flow لتحل محل القيمة العددية (0.1).

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-fcd38a4ad69d276e085cbc967620801c4fc3b0b9%2Fimage%20(218).png?alt=media" alt=""><figcaption><p>أدخل اسم سمة max_flow</p></figcaption></figure>

يرجى ملاحظة أنه إذا لم يتم حفظ اسم المعلمة، قم بتغيير نوع الإدخال إلى **«الواصف»**.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-dcd39ed02f0f35044135fafab4e27e0715259e14%2Fimage%20(219).png?alt=media" alt=""><figcaption><p>انقر فوق تحرير max_flow</p></figcaption></figure>

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-70bfdd4ca9a1916eff474c5415eae2188f6eaf67%2Fimage%20(214).png?alt=media" alt=""><figcaption><p>حدد الواصف</p></figcaption></figure>

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-936b7cc452ca4bf346309e98c2770b9be16e7f98%2Fimage%20(220).png?alt=media" alt=""><figcaption><p>أدخل الاسم</p></figcaption></figure>

لا تنس حفظ التغييرات.

## قم بتشغيل النموذج وعرض النتائج

1. **اركض** النموذج.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-23a397691922fca45756ec6315af0e23b00c4f5b%2Fimage%20(224).png?alt=media" alt="" width="327"><figcaption><p>انقر فوق لتشغيل النموذج</p></figcaption></figure>

2. اعرض **محاكاة** \ \_الحجم على الخزان

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-66f21a32ee8e19d22c5cae2b0a609b47f221f543%2Fimage%20(216).png?alt=media" alt=""><figcaption><p>الحجم المحاكي على الخزان</p></figcaption></figure>

يمكنك **تكبير** في الجفاف، على سبيل المثال هذا هو الجفاف الذي حدث في 2042-\_\_-2044.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-9d1e7382a6ae09faf012f9c873a39d9223fc1740%2Fimage%20(217).png?alt=media" alt=""><figcaption><p>تمت محاكاة الحجم على الخزان في 2042-__-2044</p></figcaption></figure>

في السيناريو مع انخفاض الطلب، لم ينخفض الخزان إلى مستوى التخزين المنخفض (9.4 مقابل 8.17 Mm3).

3. انقر فوق التدفق المحاكي\ \_لعقدة الطلب. يمكن رؤية تخفيضات الطلب.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-33b30a5ef57b5518c21948184426b0b591369ce4%2Fimage%20(221).png?alt=media" alt=""><figcaption><p>التدفق المحاكي لعقدة الطلب</p></figcaption></figure>

4. يمكنك عرض إخراج معلمة علاج التحكم من خلال النقر على **بيانات الشبكة** منظر.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-f79adfff87cace6450c9fb3870a77359b6a15a5c%2Fimage%20(222).png?alt=media" alt=""><figcaption><p>انقر لعرض إخراج معلمة علاج التحكم</p></figcaption></figure>

النقر على **محاكاة\_يُظهر منحنى التحكم في التخزين** الفهرس الذي يعود إليه منحنى التحكم في التخزين في كل خطوة زمنية. هذا يختلف بين 0-2.

<figure><img src="https://3021411535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Frrf5uqVTUdMhNxpVrDQF%2Fuploads%2Fgit-blob-136770d7c8cbd70370bb0e5fedbae3ad1b1154c4%2Fimage%20(223).png?alt=media" alt=""><figcaption><p>إخراج معلمة علاج التحكم</p></figcaption></figure>

## تمرين <a href="#exercise" id="exercise"></a>

1. قم بزيادة معامل الطلب الأساسي. ما مدى ارتفاع الطلب الأساسي قبل تفريغ الخزان بالكامل؟
