Subscripting
Vensim’s subscripting language enables construction of very advanced arrayed models
Seringkali sepotong struktur model perlu diulang lagi dan lagi. Misalnya, toko ritel mungkin direplikasi untuk banyak wilayah yang berbeda, atau proses produksi pabrik mungkin diulang beberapa kali. Salah satu metode untuk mengulang struktur adalah dengan membuat dan men-debug satu struktur, lalu menyalin dan mereplikasi struktur tersebut sebanyak yang diperlukan. Namun, hal ini dapat menyebabkan diagram yang kompleks dan hard-wiring nilai konstan dan jumlah struktur. Cara yang lebih baik untuk mengulang struktur adalah dengan menggunakan subskrip. Subskrip dibuat dan ditambahkan ke satu struktur asli, membuat struktur sebanyak elemen subskrip. Sekarang jumlah struktur dan nilai numerik untuk semua struktur dapat dengan mudah diubah. Diagram juga lebih rapi.
Example
Outlet ritel seperti pengecer sepatu mungkin memiliki toko di tiga lokasi. Sebuah model dapat dibangun untuk satu toko dengan struktur untuk staf, inventaris, penjualan, dll. Setelah model tersebut disimulasikan dengan benar, subskrip dibuat yang disebut Lokasi, dengan elemen subskrip Boston, New York, dan San Francisco. Lokasi subskrip ditambahkan ke struktur satu toko, konstanta dimodifikasi untuk mencerminkan nilai untuk setiap lokasi, dan sekarang model satu berisi tiga struktur.
Setiap struktur subskrip dapat dikustomisasi secara individual, dengan konstanta yang berbeda, beberapa persamaan, bahkan beberapa subskrip. Vensim mendukung hingga delapan subskrip yang berbeda, memungkinkan untuk struktur yang sangat kompleks.
Subscript Equations
Di sebuah perusahaan yang berisi tenaga kerja, subskrip [jenis kerja] mungkin mewakili jenis pekerja di perusahaan, dan subskrip [lokasi] mungkin mewakili lokasi fisik kantor atau pabrik. Jadi persamaan
mempekerjakan[jenis kerja, lokasi] = pekerja yang diinginkan[jenis kerja, lokasi] / waktu untuk mempekerjakan pekerja[jenis kerja]
memungkinkan satu persamaan untuk mewakili perekrutan pekerja untuk semua jenis pekerjaan dan untuk semua lokasi (hanya menggunakan dua subskrip). Perhatikan bahwa waktu untuk mempekerjakan pekerja dalam persamaan di atas dianggap berbeda tergantung pada jenis pekerjaan, tetapi tidak pada lokasi (oleh karena itu subskrip hanya untuk jenis pekerjaan).
Further Examples
Subskrip dapat memungkinkan konstruksi satu stok yang mewakili banyak segmen berbeda dari proses fisik yang sama. Misalnya, rantai penuaan populasi dibangun dari beberapa stok di mana orang menua dan pindah ke stok berikutnya, seperti di bawah ini:
Struktur yang sama ini dapat dibangun menggunakan subskrip untuk mewakili setiap kategori usia (kohor), seperti di bawah ini:
Keuntungan menggunakan subskrip adalah Anda dapat dengan mudah mengubah jumlah atau karakteristik kategori usia dengan mengubah nama dan nilai subskrip, daripada mengubah struktur fisik dengan menghapus atau menambahkan stok (seperti yang harus Anda lakukan dalam beberapa struktur stok di atas). Juga, Anda dapat mewakili sejumlah besar kategori usia (katakanlah 100) tanpa harus membuat 100 saham.
Subscript Functions
Subscript memiliki beberapa fungsi khusus yang dirancang untuk memanipulasi persamaan. Fungsi SUM menjumlahkan semua nilai subskrip yang ditandai dengan tanda seru (!). Fungsi lainnya termasuk produk, maksimum, dan minimum.
total pekerja[tipe kerja] = SUM ( Pekerja[tipe kerja, lokasi!])
Persamaan ini menjelaskan penjumlahan pekerja dari setiap jenis pekerjaan tertentu (misalnya, staf kantor, operator pabrik) di semua lokasi. Dengan kata lain, total staf kantor dijumlahkan di semua lokasi, total operator pabrik dijumlahkan di semua lokasi. Fungsi SUM berfungsi pada lokasi subskrip karena lokasi ditandai dengan tanda seru.