OpenModelica/C2/Functions-and-Types/Tamil
From Script | Spoken-Tutorial
Time | Narration |
00:01 | Functionகள் மற்றும் typeகள் குறித்த ஸ்போகன் டுடோரியலுக்கு நல்வரவு. |
00:06 | இந்த டுடோரியலில் நாம் கற்கப்போவது: ஒரு functionஐ எப்படி வரையறுப்பது. |
00:12 | Algorithmஐ எப்படி பயன்படுத்துவது. ஒரு typeஐ எப்படி வரையறுப்பது. |
00:17 | இந்த டுடோரியலை பதிவு செய்வதற்கு, நான், OpenModelica 1.9.2 மற்றும் Ubuntu Operating system பதிப்பு 14.04ஐ பயன்படுத்துகிறேன். |
00:27 | ஆனால், இந்த செயல்முறை , Windows, Mac OS X அல்லதுFOSSEE OSல்,ஒரே மாதிரியாக இருக்கிறது. |
00:35 | இந்த டுடோரியலை புரிந்து கொள்ள, Modelicaவில், ஒரு classஐ வரையறுக்க உங்களுக்கு தெரிந்து இருக்க வேண்டும். |
00:41 | ஏதேனும் programming languageல், functionகள் பற்றி தெரிந்து இருக்க வேண்டும். |
00:46 | இதற்கான முன்நிபந்தனை டுடோரியல்கள், எங்கள் வலைதளத்தில் கூறப்பட்டுள்ளன. அவற்றை பார்க்கவும். |
00:52 | இப்போது, ஒரு functionஐ விவாதிப்போம். |
00:55 | Function, inputஐ எடுத்துக் கொண்டு, outputஐ திருப்பித் தரக்கூடிய ஒரு தனித்திறன் கொண்டclass ஆகும். |
01:01 | இது algorithm பிரிவை கொண்டிருக்கிறது. |
01:04 | ஒரு function, equationகளை கொண்டிருக்க முடியாது, மேலும், அதை simulate செய்ய முடியாது. |
01:10 | ஒரு functionனின் syntax பின்வருமாறு. |
01:15 | இப்போது, polynomialEvaluator என்று பெயர் கொண்ட ஒரு functionஐ எழுதுவோம். இது, inputஆக xஐ எடுத்துக் கொண்டு, f(x) = a x (squared) (plus) b x (plus) cஐ outputஆக திருப்பிக் கொடுக்கிறது. இதில், a=1, b=2 மற்றும், c=1. |
01:36 | PolynomialEvaluator file, எங்களது வலைதளத்தில் உள்ளது. |
01:40 | Code Files இணைப்பில் இருக்கின்ற எல்லா fileகளையும் download செய்து, சேமிக்கவும். |
01:46 | polynomialEvaluator functionஐ விளக்க, OMEditக்கு செல்கிறேன். |
01:52 | OMEdit, Welcome perspectiveல், இப்போது திறந்துவிட்டது. |
01:56 | நான் பெரிதாக்கியுள்ளதால், OMEdit windowன் ஒரு பகுதியை மட்டுமே நீங்கள் காண்கிறீர்கள். |
02:02 | தேவையான போதெல்லாம், windowஐ நகர்த்தி, தொடர்புடைய பகுதிகளை நான் உங்களுக்கு காட்டுகிறேன். |
02:09 | நீங்கள் தரவிறக்கிய fileகளை திறக்க, Open Model/Library File toolஐ க்ளிக் செய்யவும். |
02:16 | நான் எல்லா fileகளையும் ஒரு folderலில் சேமித்துள்ளேன். |
02:19 | அவை எல்லாவற்றையும் ஒன்றாக தேர்ந்தெடுத்து, openஐ க்ளிக் செய்கிறேன். |
02:24 | இந்த fileகளை, வெவ்வேறு folderகளில் நாம் சேமித்திருந்தால், அவை ஒவ்வொன்றையும் தனித்தனியாக நீங்கள் திறக்கலாம். |
02:31 | பின்வரும் classகள் அல்லது folderகள், இப்போது, OMEditல் திறந்திருப்பதை கவனிக்கவும்: bouncingBallWithUserTypes , functionTester ,multipleFunctionTester, multiplePolynomialEvaluator மற்றும்polynomialEvaluator. |
02:51 | PolynomialEvaluator functionஐ திறந்து, காண, Libraries Browserல் இருக்கின்ற iconஐ ரைட்-க்ளிக் செய்து, View Classஐ தேர்ந்தெடுக்கவும். |
03:02 | Function, Text Viewல் திறக்கவில்லையெனில், அதை Text Viewல் திறக்கவும். |
03:08 | நாம் முன்பு விவாதித்தது போல், இந்த functionனின் பெயர் polynomialEvaluator ஆகும். |
03:14 | x, ஒரு real variable ஆகும். |
03:17 | input என்பது, input variableகளை குறிப்பிட பயன்படுத்தப்படும் ஒரு keyword ஆகும். |
03:22 | அதே போல், output என்பது, output variableகளை குறிப்பிட பயன்படுத்தப்படும் ஒரு keyword ஆகும். |
03:28 | fx, ஒரு real variable ஆகும். இது, f(x)ஐ குறியீட்டுக்காட்டுகிறது. |
03:33 | inputஉம் ஆக இல்லாமல், outputஉம் ஆக இல்லாமல், இருக்கின்ற எந்த parameter அல்லது variableஉம், protected keywordஐ பயன்படுத்தி குறிப்பிடப்படுகிறது. |
03:42 | a, 1 மதிப்புடன் கூடிய, ஒரு real parameter ஆகும். |
03:47 | a, b மற்றும்cன் மதிப்புகள், ஏற்கனவே slideகளில் விவாதிக்கப்பட்டவையே ஆகும். |
03:53 | a, b மற்றும்c, protected parameterகள் என்பதை கவனிக்கவும். |
03:59 | Algorithm, ஒரு functionனின், algorithm பகுதியின் தொடக்கத்தை குறியீட்டுக்காட்டுகிறது. |
04:05 | Algorithm பிரிவு, assignment statementகளை மட்டுமே கொண்டிருக்கலாம். |
04:10 | இந்த குறி, assignmentஐ சுட்டிக்காட்டுகிறது. |
04:14 | ஒரு assignment statementல், வலது பக்கத்தின் மதிப்பு, இடது பக்கத்திற்கு ஒதுக்கப்படுகிறது. |
04:20 | இடது பக்கம், வழக்கமாக, ஒரு unknown expressionஐ கொண்டிருக்கிறது. |
04:25 | இந்த caseல், fx, ஒரு unknown variable ஆகும். |
04:29 | xன் மதிப்பு தெரிந்தால், வலது பக்க expressionனின் மதிப்பை கணக்கிடலாம். |
04:36 | Call செய்யப்படும் போதெல்லாம், வழக்கமாக, x, functionக்கு, ஒரு input argumentஆக கொடுக்கப்படுகிறது. |
04:43 | இப்போது, functionTester classஐ பயன்படுத்தி, ஒரு functionஐ எப்படிcall செய்வது என்று பார்ப்போம். |
04:49 | நான் ஏற்கனவே அதை திறந்துள்ளதால், Libraries Browserல் functionTester iconஐ காண முடியும். |
04:56 | இந்த classஐ திறக்க, அதன் iconஐ டபுள்-க்ளிக் செய்யவும். |
05:01 | இது, classஐ பார்ப்பதற்கு, ஒரு மாற்று வழியாகும். |
05:05 | அதன் icon மீது ரைட்-க்ளிக் செய்தும், View Classஐ நீங்கள் தேர்தெடுக்கலாம். |
05:11 | z, ஒருreal variable ஆகும். |
05:14 | 10 unitகளுடன் கூடிய input argumentஉடன், polynomialEvaluator function call செய்யப்பட்டு, zக்கு சமமாக வைக்கப்படுகிறது. |
05:23 | polynomialEvaluatorன், input மதிப்பு(variable), அதாவது, x, 10 unitகள் மதிப்பை எடுத்துக் கொள்கிறது. |
05:31 | இப்போது, இந்த classஐ simulate செய்வோம். |
05:34 | இந்த classஐ simulate செய்ய, Libraries Browserல், functionTester iconஐ ரைட்-க்ளிக் செய்து, Simulateஐ நீங்கள் தேர்ந்தெடுக்கலாம். |
05:45 | Class, இப்போது simulate செய்துவிட்டது. |
05:47 | ஒரு classஐ simulate செய்ய, toolbarல் இருக்கின்ற, Simulate பட்டனையும் நீங்கள் பயன்படுத்தலாம். |
05:53 | OMEdit windowஐ இடது பக்கம் நகர்த்தி, Plotting perspectiveஐ முழுமையாக இப்போது நான் உங்களுக்கு காட்டுகிறேன். |
06:00 | Variables browserல், zஐ தேர்ந்தெடுக்கவும். |
06:04 | zன் மதிப்பு, x = 10ல், f(x)ன் மதிப்புக்கு சமமாக இருப்பதை கவனிக்கவும். |
06:12 | இப்போது, zஐ de-select செய்து, இந்த முடிவை நீக்குகிறேன். |
06:18 | Modeling perspectiveக்கு திரும்பச் செல்கிறேன். |
06:21 | மேலிருக்கும், polynomialEvaluator tabஐ க்ளிக் செய்யவும். |
06:25 | PolynomialEvaluator function, ஒரு output variableஐ மட்டும் கொண்டிருப்பதை கவனிக்கவும். |
06:31 | இப்போது, ஒரு functionஐ பயன்படுத்தி, இரண்டு அல்லது அதற்கும் மேற்பட்ட variableகளை, எப்படி output செய்வது என்று நான் உங்களுக்கு காட்டுகிறேன். |
06:38 | multiplePolynomialEvaluator என்று பெயரிடப்பட்ட ஒரு functionஐ நான் உருவாக்கியுள்ளேன். அது இரண்டு output variableகளை கொண்டிருக்கிறது. |
06:45 | அந்த functionஐ பார்ப்பதற்கு முன்பு, PolynomialEvaluator மற்றும் FunctionTesterனின் tabகளை நான் மூடுகிறேன். |
06:54 | Libraries Browser தெரியாததனால், windowஐ வலது பக்கம் நகர்த்துகிறேன். |
07:01 | multiplePolynomialEvaluator, multipleFunctionTester மற்றும் bouncingBallWithUserTypesஐ டபுள்-க்ளிக் செய்யவும். |
07:11 | Windowஐ மீண்டும் அதன் இடத்திற்கு நகர்த்தவும். |
07:15 | MultiplePolynomialEvaluator tabக்கு செல்லவும். |
07:19 | ஒரு கூடுதலான output variableஐ தவிர, இந்த function, polynomialEvaluator functionக்கு ஓத்ததேயாகும். |
07:27 | ஒரு output variableன் பெயர், gx declare செய்யப்பட்டுள்ளது. |
07:32 | gxக்கு, a x (squared) (minus) b x (plus) c என்ற மதிப்பு ஓடுத்தக்கப்பட்டுள்ளது. |
07:38 | Output, அல்லது input variableகள் declare செய்யப்படுகின்ற வரிசைமுறை, முக்கியமானதாகும். |
07:45 | multipleFunctionTester classஐ விவாதிக்கும் போது, இதைப் பற்றி மேலும் புரிந்துகொள்வோம். |
07:51 | இப்போது, multipleFunctionTester tabக்கு மாறுகிறேன். |
07:56 | y மற்றும்z, real variableகளாக declare செய்யப்படுகின்றன. |
08:01 | 10 unitகள் கூடிய, ஒரு input argumentஉடன், multiplePolynomialEvaluator function, call செய்யப்படுகிறது. |
08:08 | இதன் பொருள், multiplePolynomialEvaluatorன், input variable, 10 unitகள் மதிப்பை எடுத்துக்கொள்கிறது. |
08:17 | x = 10ல், y மற்றும்z, முறையே, f(x) மற்றும்g(x) மதிப்புகளை எடுத்துக் கொள்கின்றன. |
08:26 | Functionல், gxனின் declarationக்கு முன், fxனின் declaration வருவதால், y, output variable fxன் மதிப்பை எடுத்துக்கொள்கிறது. |
08:37 | இப்போது இந்த classஐ simulate செய்கிறேன். |
08:40 | Simulate பட்டனை க்ளிக் செய்யவும். Pop up windowஐ மூடவும். |
08:46 | Variables browserல், y மற்றும்zஐ தேர்ந்தெடுக்கவும். |
08:51 | y மற்றும்zன் மதிப்புகள், x = 10ல், f(x) மற்றும்g(x)கொண்ட மதிப்புகளுக்கு, முறையே, சமமாக இருப்பதை கவனிக்கவும். |
09:01 | முடிவை நீக்கி, Modeling Perspectiveக்கு திரும்பச் செல்லவும். |
09:06 | இப்போது, y மற்றும் zன் வரிசை முறையை, பரிமாற்றம் செய்கிறேன். |
09:11 | (y,z)ஐ நீக்கி, டைப் செய்க: (z,y). |
09:17 | பின், Ctrl+Sஐ அழுத்தி, இந்த classஐ சேமிக்கவும். |
09:22 | இந்த classஐ மீண்டும் simulate செய்யவும். Pop-up windowஐ மூடவும். |
09:28 | Variables browserல், மீண்டும், y மற்றும் zஐ தேர்ந்தெடுக்கவும். |
09:33 | முந்தைய caseற்கு ஒப்பிடுகையில், y மற்றும் zன் மதிப்புகள், பரிமாற்றப்பட்டுவிட்டன என்பதை கவனிக்கவும். |
09:41 | இந்த முடிவை நீக்கி, Modeling Perspectiveக்கு திரும்பச் செல்கிறேன். |
09:47 | Slideகளுக்கு திரும்பச் செல்கிறேன். |
09:50 | Algorithm, procedural programmingஐ இயலச்செய்வதற்கான, ஒரு Modelica syntax element ஆகும். |
09:56 | Algorithm பிரிவில், assignment statementகள் மட்டுமே அனுமதிக்கப்படுகின்றன. |
10:01 | Assignment statementகள், பின்வரும் குறியை பயன்படுத்துகின்றன. |
10:06 | Assignment statementகளில், data, வலதிலிருந்து இடப்பக்கம்flow செய்கிறது. |
10:10 | Modelicaவில் வரையறுக்கப்படுகின்ற functionகளுக்கு, சில குறிப்பிட்ட கட்டுப்பாடுகள் இருக்கின்றன. |
10:16 | ஒரு functionல், der()ன் பயன்பாடு செல்லுபடியற்றது. time variableன் பயன்பாட்டிற்கு அனுமதி இல்லை. |
10:23 | ஒரு functionல், when statementகளின் பயன்பாட்டிற்கு அனுமதி இல்லை. |
10:28 | ஒரு function, ஒன்றுக்கு மேற்பட்ட algorithm பிரிவை கொண்டிருக்க முடியாது, மற்றும், modelகளை, argumentகளாக pass செய்ய முடியாது. |
10:36 | type, Modelicaவில், custom data-typeகளை வரையறுப்பதற்கு, ஒரு தனித்திறன் கொண்டclass ஆகும். |
10:42 | உதாரணத்திற்கு, velocity மற்றும்current போன்ற physical quantityகளை, data-typeகளாக வரையறுக்கலாம். |
10:50 | மற்ற variableகளை declare செய்ய, அவற்றை பின்னர் பயன்படுத்தலாம். |
10:54 | unit, மற்றும்start போன்ற Modelica data-typeகளின் Attributeகளை, தேவைக்கேற்ப மாற்றலாம். |
11:01 | உதாரணத்திற்கு, மேலே உள்ள caseல், velocity, real data typeக்கு ஒத்ததாக வரையறுக்கப்படுகிறது. |
11:08 | ஆனால், அதன் unit, m/sக்கு மாற்றப்பட்டுள்ளது. |
11:12 | Type வரையறுப்புகளைsimulate செய்ய, bouncingBallWithUserTypes என்று பெயரிடப்பட்ட ஒரு modelஐ நான் உருவாக்கியுள்ளேன். |
11:19 | இந்த modelஐ விளக்க, OMEditக்கு திரும்பச் செல்கிறேன். |
11:24 | bouncingBallWithUserTypes tabஐ க்ளிக் செய்யவும். |
11:28 | இந்த model, முந்தைய டுடோரியல்களில் விவாதிக்கப்பட்ட bouncingBall modelக்கு ஒத்ததாகும். |
11:35 | BouncingBall modelஐ புரிந்துகொள்ள, முன்நிபந்தனை டுடோரியல்களை பார்க்கவும். |
11:41 | Unit, mக்கு மாற்றப்பட்டLength, Real datatypeஆக வரையறுக்கப்படுகிறது. |
11:47 | இவ்வாறே, Unit, m/sக்கு மாற்றப்பட்டvelocity, Realஆக வரையறுக்கப்படுகிறது. |
11:54 | h, பூமியின் மேற்பரப்பில் இருந்து, பந்து இருக்கின்ற உயரத்தை குறிக்கிறது. |
11:58 | அது, length datatype என வரையறுக்கப்படுகிறது. |
12:02 | இதே போல், v, பந்தின் velocityஐ குறியீட்டுக்காட்டுகிறது. |
12:05 | அது velocity datatypeஆக declare செய்யப்படுகிறது. |
12:09 | இந்த modelலில், மீதமிருக்கின்ற variable declarationகள் மற்றும் equationகள், bouncingBall modelக்கு ஒத்ததாகும். |
12:18 | இப்போது, இதை simulate செய்கிறேன். Pop up windowஐ மூடவும். |
12:24 | Variables Browserல், h மற்றும் v, தங்கள் data-typeகளுடன், தங்களுக்குரிய unitகளை கொண்டிருப்பதை கவனிக்கவும். |
12:34 | Variables Browserல், hஐ தேர்ந்தெடுக்கிறேன். |
12:38 | h versus timeக்கான plot, bouncingBall modelக்கு ஒத்ததாகும். |
12:43 | hஐ de-select செய்கிறேன். |
12:46 | Slideகளுக்கு திரும்பச் செல்கிறேன். |
12:49 | பயிற்சியாக, functionகள் மீதுள்ள கட்டுப்பாடுகளை மீறி, பெறப்படுகின்ற errorகளை கவனிக்கவும். |
12:56 | இத்துடன், நாம் இந்த டுடோரியலின் முடிவுக்கு வந்துவிட்டோம். |
12:59 | பின்வரும் இணைப்பில் உள்ள வீடியோவை காணவும். http://spoken-tutorial.org/ http://spoken-tutorial.org] /What\_is\_a\_Spoken\_Tutorial. அது, Spoken Tutorial Projectஐ சுருங்க சொல்கிறது. |
13:05 | நாங்கள் ஸ்போகன் டுடோரியல்களை பயன்படுத்தி செய்முறை வகுப்புகள் நடத்துகிறோம்; . எங்களுக்கு மின்னஞ்சல் செய்யவும். |
13:10 | இந்த ஸ்போகன் டுடோரியலில் உங்களுக்கு ஏதேனும் கேள்விகள் இருந்தால், வலைத்தளத்தை பார்க்கவும். |
13:15 | பிரபலமான புத்தகங்களில் இருந்து, தீர்க்கப்பட்ட உதாரணங்களை code செய்வதை நாங்கள் ஒருங்கிணைக்கிறோம். மேலும் விவரங்களுக்கு, வலைத்தளத்தை பார்க்கவும். |
13:23 | Commercial simulator labகளை, OpenModelicaக்கு, இடம் பெயர்க்க நாங்கள் உதவுகிறோம். |
13:29 | Spoken Tutorial Projectற்கு ஆதரவு, இந்திய அரசாங்கத்தின், NMEICT, MHRD மூலம் கிடைக்கிறது. |
13:36 | ஆதரவு அளித்த, OpenModelicaவின் வளர்ச்சிக்கு குழுவிற்கு நாங்கள் நன்று செலுத்துகிறோம். இந்த டுடோரியலை தமிழாக்கம் செய்தது ஜெயஸ்ரீ. |