Evaluate DAT

پرش به ناوبری | پرش به جستجو

خلاصه (Summary)

Evaluate DAT سلول‌های DAT ورودی را با استفاده از ویرایش رشته (string-editing) و عبارات ریاضی تغییر می‌دهد.

در ساده‌ترین حالت، وقتی هیچ DAT ورودی‌ای به آن وصل نباشد، می‌توانید هر عبارت پایتون را در پارامتر Expression وارد کنید.
اگر می‌خواهید این عبارت در هر فریم ارزیابی شود، ممکن است لازم باشد پارامتر را در حالت Expression Parameter Mode قرار دهید.

وقتی یک DAT به ورودی متصل باشد، خروجی جدولی با همان تعداد سطر و ستون ورودی خواهد بود.

از صفحه Scope می‌توان برای محدود کردن سطرها و ستون‌هایی که تحت تأثیر قرار می‌گیرند استفاده کرد.

وقتی منوی Output روی حالت Expressions تنظیم شود، سلول‌های ورودی به‌عنوان عبارات پایتون ارزیابی می‌شوند.
me.inputCell.val مقدار سلول ورودی را برمی‌گرداند.

ورودی اختیاری دوم (DAT دوم)، آرایه‌ای از عبارات است که با سلول‌های ورودی تطبیق داده شده، سپس ارزیابی و خروجی داده می‌شوند.
اگر تعداد سطرهای DAT دوم کمتر از اول باشد، آخرین سطر DAT دوم تکرار می‌شود.
اگر تعداد ستون‌های DAT دوم کمتر باشد، آخرین ستون تکرار خواهد شد.

عبارات با ذخیره‌ی نسخه‌ی کامپایل‌شده‌ی داخلی بهینه می‌شوند که باعث اجرای بسیار سریع‌تر می‌شود. هر جا ممکن است از این روش استفاده کنید.
اگر عباراتی را در جدول تکرار می‌کنید، داشتن یک جدول جداگانه برای عبارات (به‌جای ترکیب با داده‌ها) عملکرد را بهبود می‌دهد.

اگر DAT دوم فقط یک سلول داشته باشد (مثل پارامتر Expression)، آن عبارت روی همه‌ی سلول‌های ورودی اعمال می‌شود.
مثلاً یک DAT تک‌سلولی با مقدار
me.inputCell.val+1
عدد ۱ را به تمام سلول‌های ورودی اضافه می‌کند.

اگر DAT دوم به شکل زیر باشد:

me.inputCell.val me.inputCell.val
me.inputCell.val math.sin(math.radians(float(me.inputCell.val)))

در این حالت، سطر اول و ستون اول بدون تغییر می‌مانند و روی بقیه‌ی سلول‌ها تابع sin() اعمال می‌شود.

EvaluateDAT ex.png

Evaluate DAT قالب DAT ورودی اول (جدولی یا متنی) را حفظ می‌کند، مگر این‌که از پارامتر Output Table Size استفاده شود.

همچنین ببینید: Substitute DAT، Expression CHOP

PythonIcon.png evaluateDAT_Class


فهرست مطالب (Contents)

  1. خلاصه

  2. عبارات (Expressions)

  3. پارامترها – صفحه Evaluate

  4. پارامترها – صفحه Scope

  5. پارامترها – صفحه Common

  6. ورودی‌های اپراتور

  7. کانال‌های Info CHOP
      7.1 کانال‌های اطلاعات عمومی DAT
      7.2 کانال‌های اطلاعات عمومی Operator


عبارات (Expressions)

Evaluate DAT برای دو کار اصلی استفاده می‌شود:

  1. ساخت و ویرایش رشته‌ها

  2. انجام محاسبات ریاضی

me.inputCell به سلول متناظر ورودی اشاره می‌کند که برای ارزیابی سلول فعلی استفاده می‌شود.
در evaluateDAT_Class لیستی از اعضا برای دسترسی به داده‌های ورودی وجود دارد.

می‌توانید با پایتون داده‌ها را بخوانید، مثلاً:

  • دسترسی به DAT:

op('datpath')[row,col]
  • دسترسی به CHOP:

op('choppath')['channame'][sampleindex]

چند مثال:

# دسترسی به داده‌ی یک سطر خاص در ستون فعلی
me.inputTable['rowname', me.inputCol]
# اضافه کردن پیشوند [row,col] به محتوای سلول
'['+str(me.inputRow)+','+str(me.inputCol)+']:'+me.inputCell
# جمع داده عددی سلول فعلی با داده عددی از DAT دیگر
op('datpath')[me.inputRow, 'colname'] + me.inputCell
# اتصال عدد سلول فعلی به رشته از DAT دیگر
op('datpath')[me.inputRow, 'colname'] + ' ' + me.inputCell
# اتصال شماره سطر به داده‌ی رشته‌ای
op('datpath')[me.inputRow, 'colname'] + ' ' + str(me.inputRow)
# اتصال مقدار یک نمونه از CHOP به سلول فعلی
me.inputCell + ':' + str(op('choppath')['channame'][me.inputRow])

برای مثال‌های بیشتر به
Working with DATs in Python و Working with CHOPs in Python مراجعه کنید.


عبارات Tscript

می‌توانید از عبارات Tscript هم استفاده کنید، مثل:

tab("tabpath", row, col)
chop("choppath")

متغیرهای محلی مثل $V (مقدار سلول)، $R (سطر)، $C (ستون) در دسترس هستند.
همچنین می‌توانید از متغیرهای عمومی مثل $F و $SYS_XRES استفاده کنید.

توابع خاص Evaluate DAT:

  • v()

  • vs()

هر دو به تمام سلول‌های ورودی دسترسی دارند، اما vs() همیشه رشته (string) برمی‌گرداند، نه عدد.

مثال‌ها:

  • v($R,$C) معادل $V

  • v($C,$R) ترانهاده‌ی جدول

  • v($R,0) سلول ستون اول

نسخه‌های مبتنی بر نام:

vr(rowname,colnum)
vc(rownum,colname)
vrc(rowname,colname)

نسخه‌های رشته‌ای:

vsr(rowname,colnum)
vsc(rownum,colname)
vsrc(rowname,colname)

مثال:

vrc("john","august")

متغیرهای محلی:

  • NR تعداد سطرها

  • NC تعداد ستون‌ها


پارامترها – صفحه Evaluate

Input Data DAT (dat)
DAT جایگزین برای داده‌های ورودی.

Expressions DAT (datexpr)
DAT جایگزین برای جدول فرمول‌ها.

Output (output)
فرمت خروجی DAT را تعیین می‌کند.

Expression (expr)
عبارتی که برای ارزیابی هر سلول استفاده می‌شود (در صورت نبود DAT ورودی).

Output Table Size (outputsize)
اگر خروجی روی Strings، Expressions یا Commands باشد و ورودی دوم وجود داشته باشد، می‌توانید اندازه جدول خروجی را برابر DAT ورودی یا DAT فرمول قرار دهید.
اگر DAT فرمول بزرگ‌تر باشد، آخرین سلول هر سطر یا ستون برای ارزیابی بقیه استفاده می‌شود.

Monitor Data Dependencies (dependency)
اگر خروجی Strings یا Expressions باشد، DAT وابستگی‌های داده و زمان را بررسی کرده و بر همان اساس Cook می‌شود.
به‌طور پیش‌فرض فعال است. برای جلوگیری از Cookهای اضافی می‌توان آن را غیرفعال کرد.

Convert Backslash Characters (backslash)
تبدیل \n به خط جدید، \t به تب و…
در DAT جدولی، \n و \t به فاصله تبدیل می‌شوند.


پارامترها – صفحه Scope

Exclude First Row (xfirstrow)
سطر اول را حتی اگر در انتخاب مشخص نشده باشد، مجبور به انتخاب می‌کند.

Exclude First Col (xfirstcol)
ستون اول را حتی اگر در انتخاب مشخص نشده باشد، مجبور به انتخاب می‌کند.

انتخاب سطرها

Select Rows (extractrows)
روش انتخاب سطرها را مشخص می‌کند.

  • Start / End Row Name

  • Start / End Row Index

Row Select Values (rownames)
انتخاب سطرها با نام (پشتیبانی از Pattern Matching)

Row Select Condition (rowexpr)
عبارت شرطی؛ اگر true شود، سطر انتخاب می‌شود.

به‌طور پیش‌فرض:

re.match('.*', me.inputCell.val) != None

در Tscript:

  • $V مقدار سلول

  • $R سطر

  • $C ستون

From Column (fromcol)
مشخص می‌کند هنگام تطبیق مقادیر سطر، از کدام ستون استفاده شود.


انتخاب ستون‌ها

Select Cols (extractcols)
روش انتخاب ستون‌ها.

  • Start / End Col Name

  • Start / End Col Index

Col Select Values (colnames)
انتخاب ستون‌ها بر اساس نام.

Col Select Condition (colexpr)
عبارت شرطی برای انتخاب ستون.

From Row (fromrow)
هنگام انتخاب ستون بر اساس نام، مشخص می‌کند کدام سطر برای تطبیق استفاده شود.


پارامترها – صفحه Common

Language (language)
زبان اسکریپت DAT را مشخص می‌کند.

Edit/View Extension (extension)
پسوند فایل برای ویرایشگرهای خارجی.

Custom Extension (customext)
پسوند سفارشی.

Word Wrap (wordwrap)
فعال‌سازی شکستن خودکار خطوط متن.


ورودی‌های اپراتور (Operator Inputs)

  • Input 0:

  • Input 1:


کانال‌های Info CHOP

اطلاعات اضافی Evaluate DAT از طریق Info CHOP در دسترس است.

کانال‌های اطلاعات عمومی DAT

  • num_rows – تعداد سطرها

  • num_cols – تعداد ستون‌ها

کانال‌های اطلاعات عمومی Operator

  • total_cooks – تعداد دفعات Cook

  • cook_time – زمان آخرین Cook (ms)

  • cook_frame – فریم Cook نسبت به تایم‌لاین

  • cook_abs_frame – فریم Cook نسبت به زمان مطلق

  • cook_start_time – زمان شروع Cook

  • cook_end_time – زمان پایان Cook

  • cooked_this_frame – اگر در این فریم Cook شده باشد = 1

  • warnings – تعداد هشدارها

  • errors – تعداد خطاها