FANDOM


سائیلیب ایک سافٹ وئیر پیکج ہے، جو کہ ریاضی، سائنس، اور انجنیرنگ کے میدانوں میں شمارندہ کاری کے لیے لازم و ملزوم کا درجہ رکھتا ہے۔ یہ آزاد مصدر ہے، اور خاص و عام کیلئے وقف، یعنی بغیر قیمت یا اجرت کے دستیاب ہے۔ عام پروگرامنگ زبانوں کے برعکس اس میں "کھلے ڈُلے" ا نداز میں کمپوٹنگ کی جاتی ہے۔ اسے کے علاوہ اس میں ایک سکرپٹنگ زبان میں پروگرام بھی لکھے جا سکتے ہیں۔ ڈیٹا کو پلاٹ کر کے مختلف روپ میں دیکھا جا سکتا ہے۔ طاقتور ٹول باکس پہلے سے موجود ہیں جن کی مدد سے مختلف میدانوں کے مسائل بآسانی حل کیے جا سکتے ہیں۔ قارئین کو سائیلیب کا ذائقہ دینے کیلئے ہم اس میں کمپوٹنگ کے ابتدائی گُر بتاتے ہیں۔ سائیلیب میں متغیر کو پہلے سے متعین کرنا ضروری نہیں ہوتا، اور نہ ہی اس کی قسم بتانا ہوتا ہے۔ مثلاً


--> a = 2 * %pi  
a= 
6.28318 
--> a = a + 10; 
--> a 
a = 
16.28318 

اگر سطر کے بعد ; نہ لگایا جائے، تو جواب خود بخود دکھائی دیتا ہے۔ وگرنہ آپ متغیر کا نام دے کر اس کی قیمت معلوم کر سکتے ہو۔ سائیلیب میں اعداد کو میٹرکس کی شکل میں لکھا جاتا ہے۔ قطاروں کو ; سے علیحدہ کیا جاتا ہے۔ مثلاً ہم تین قطاروں اور چار ستونوں کی میٹرکس لکھتے ہیں:


--> C = [  0    11    -2    1   ; 1   12    -3   0   ; -1    10    3    7  ]  ; 
--> C 

C = \begin{bmatrix}
0 &  11 &  -2  & 1 \\
1  & 12 & -3   & 0 \\
 -1&   10 & 3 &  7
\end{bmatrix}

اس میٹرکس کو دو نکتہ اوزار..، جو جاری رکھنے کے معٰنی میں استعمال ہوتا ہے، کے زریعہ بھی لکھا جا سکتا تھا:

--> C = [0    11   -2    1     .. 
-->          1    12    -3   0    .. 
-->         -1    10   3   7  ]   ; 

عام طور پر ریاضی میں میٹرکس کی قطاروں اور ستونوں کا شمار صفر (0) سے شروع کرتے ہیں، مگر سائیلیب میں یہ شمار ایک (1) سے شروع ہوتا ہے۔ میٹرکس کے کسی جُز کو اس کے قطار اور ستون کے زریعہ مخاطب کیا جا سکتا ہے، جیسے:

--> C(2,3) 
ans =
-3.  
--> C(2,3)=100 
C = 

C = \begin{bmatrix}
0 &  11 &  -2  & 1 \\
1  & 12 & 100   & 0 \\
 -1&   10 & 3 &  7
\end{bmatrix}  

میٹرکس کا سائیز دیکھنے کیلئے یوں کرتے ہیں (یہاں میٹرکس C کا سائیز 3 \times 4 ہے):

--> size(C) 
ans = 
3.    4. 
-->  length(C) 
ans =
12. 

میٹرکس کی لمبائی length() ستونوں کے رُخ ناپی جاتی ہے۔ اس لحاظ سے 100 میٹرکس C کا آٹھواں جُز ہے:

--> find(C==100)  
ans = 
8.  
--> find(C==1) 
ans =
2.    10. 

کولن : کا اوزار، دو اعداد کے حدود میں اعداد پیدا کرنے کے لیے استعمال کیا جاتا ہے:

--> 1:7 
ans=
\begin{matrix}
1 & 2 & 3 & 4 & 5 & 6 & 7
\end{matrix} 
--> 7:-1:1 
ans=
\begin{matrix}
7 & 6 & 5 & 4 & 3 & 2 & 1
\end{matrix}
--> 0:2:8 
ans=
\begin{matrix}
0 & 2 &  4  & 6 & 8
\end{matrix} 

اس لیے میٹرکس C کے دوسرے ستون کو : اوزار کے استعمال سے یوں مخاطب کریں گے:

-->// دوسرے ستون کو مخاطب  
--> C(:,2) 
ans = 

\begin{matrix}
  11.  \\
 12.  \\
  10. 
\end{matrix}  
-->// دوسری قطار کو مخاطب  
--> C(2,:) 
ans = 

\begin{matrix}
1. & 12. & 100. & 0.
\end{matrix}  

میٹرکس کا رخ بدلنے (پلٹ) کو transpose کہتے ہیں، یعنی ستونوں اور قطاروں کا باہمی تبادلہ۔ اس کے لیے ' کا اوزار ہے۔

--> B = [1:3;  4:6] 
B = 
\begin{bmatrix}
1 & 2 &  3 \\
4  & 5 & 6
\end{bmatrix} 
--> B' 
ans = 
\begin{bmatrix}
1   & 4 \\
2  & 5  \\
3 & 6
\end{bmatrix}

سائیلیب کی سکرپٹنگ زبان میں آسانی سے پروگرام لکھا جا سکتا ہے۔ مثلاً اگر ہمیں ایک سے لے کر دس تک نمبروں کا مربع لے کر ان سب کو جمع کرنا ہے تو یوں سکرپٹ لکھا جا سکتا ہے:

--> v = [1:10] ;  
--> s = 0 ; 
--> for k=1:10 
--> s = s + v(k) * v(k) ;    
--> end  
--> s 
s = 
385 

یہ سکرپٹ عام پروگرامنگ زبانوں کی طرح ہے۔ مگر میٹرکس کی زبان میں اس کے زیادہ آسان طریقے ہیں، جو سائیلیب میں فوقیت پاتے ہیں۔ دیکھو:

--> v=[1:10] ;  
--> v2 = v .^ 2 ;  
v2 = 
\begin{bmatrix}
1 & 4 & 9 & 16 & 25 & 36 & 49 & 64 & 81 & 100
\end{bmatrix}  
--> sum(v2) 
ans = 
385 

اوپر مربع کے اوزار ^ سے پہلے ڈاٹ . ڈالنے سے مراد ہے کہ میٹرکس کے ہر عنصر کا علیحدہ علیحدہ مربع نکالا جائے۔ اس سے بھی آسان طریقہ " میٹرکس ضرب" کے زریعہ ہے:

--> v=[1:10] ;  
--> v 
ans =
 \begin{bmatrix}
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10
\end{bmatrix} 
--> v' 
ans = 
\begin{bmatrix}
1 \\ 2 \\ 3 \\ 4 \\ 5 \\ 6 \\ 7 \\ 8 \\ 9 \\ 10
\end{bmatrix} 
--> v * v' 
ans = 
385 

عام طور پر کسی بھی اوزار سے پہلے ڈاٹ ڈالنے کا مطلب یہی ہوتا ہے کہ میٹرکس کے ہر عنصر پر علیحدہ علیحدہ عمل کیا جائے۔ مثلاً، نیچے پہلی ضرب میٹرکس کے ہر عنصر کی اپنے ہم منصب عنصر سے ضرب ہے۔ جبکہ دوسری صورت " میٹرکس ضرب" ہے:


A=\begin{bmatrix}
1 & 2  \\
3  & 4
\end{bmatrix}

A   .*  A =\begin{bmatrix}
1 & 4  \\
9  & 16
\end{bmatrix}
\,\,,\,
A * A =\begin{bmatrix}
7 & 10  \\
15  & 22
\end{bmatrix}

سائیلیب اعداد کو مختلط (کمپلکس) تصور کرتی ہے۔ مختلط نمبر یوں لکھتے ہیں:

--> x = 7 + 5 * %i  
x = 
7 + 5.i 
--> sqrt(-64) 
ans = 
   8.i  

اب ہم ایک سائین (sine) لہر کا ایک وقفہ بناتے ہیں، اور اس کو پلاٹ کرتے ہیں۔ اس کے بعد اس لہر کا "جزر اوسط مربع" نکالتے ہیں:

--> t=[0: .001: 1] ;  
--> x = sin(2 * %pi  .* t) ;  
--> plot(t, x) ; 
--> sqrt( x * x' / length(x) ) 
ans = 
0.7067535 
Scilab plt1 Scilab axes

پلاٹ کرنے کے بعد گراف کے خصائل میں ردّوبدّل کیا جا سکتا ہے، مینو EDIT/FIGURE PROPERTIES کے زریعہ۔‬

کسی موضوع پر مدد درکار ہو تو

--> help

مدد کا براؤزر کھل جائے گا۔

روابط עריכה

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

ברחבי אתר Wikia

ויקי אקראית