Մաթլաբ
Մաթլաբ (անգլ.՝ MATLAB), ՄաթՎորքսի կողմից մշակված թվային հաշվողական միջավայր և ծրագրավորման լեզու։ Մաթլաբը թույլ է տալիս իրականացնել մատրիցային մանիպուլյացիաներ, ֆունկցիաների և տվյալների գրաֆիկների կառուցում, ալգորիթմների իրականացում, օգտատերերի անհատական ինտերֆեյսների ստեղծում և այլ լեզուներով գրված ծրագրերի փոխազդեցություն։
Տեսակ | ծրագիր, mathematical software? և ծրագրավորման լեզու |
---|---|
Առաջացել է | 1970-ականների վերջ |
Ստեղծող | ՄաթՎորքս |
Նախագծող | Քլիվ Մոլեր |
Ընդլայնումներ | .m , .p , .mat , .mlapp , .mltbx , .mlx , .mlappinstall և .mlpkginstall |
ՕՀ | Windows[1], մաքՕՍ[1] և Լինուքս[1][2] |
Արտոնագիր | ոչ ազատ ծրագրային ապահովման արտոնագիր[3] |
Կայք | mathworks.com |
MATLAB Վիքիպահեստում |
Չնայած Մաթլաբը հիմնականում նախատեսված է թվային հաշվարկների համար, սակայն լրացուցիչ գործիքների հավաքածուն օգտագործում է ՄաՓադ շարժիչ, որը թույլ է տալիս օգտագործել սիմվոլիկ հաշվողական նոր ունակություններ։ Սիմուլինկի լրացուցիչ փաթեթը դինամիկ և ներդրված համակարգերի համար ավելացնում է գրաֆիկական բազմաբնույթ տիրույթների մոդելավորում, ինչպես նաև այդ մոդելի վրա հիմնված դիզայն։
2020 թվականի դրությամբ, Մաթլաբն ունի ավելի քան 4 միլիոն օգտագործող ամբողջ աշխարհում[4]։ Մաթլաբի հիմնական օգտագործողներ են համարվում ճարտարագիտության, գիտության և տնտեսագիտության ոլորտի ներկայացուցիչները։
Պատմություն
խմբագրելՆյու Մեքսիկոյի համալսարանի համակարգչային գիտությունների ամբիոնի վարիչ Քլիվ Մոլերը սկսեց զարգացնել Մաթլաբը 1970-ականների վերջին[5]։ Նա մշակեց այն, որպեսզի ուսանողներին հնարավորություն ընձեռի օգտվել Լինփաքից և Էիսփաքից` առանց Ֆորտրան սովորելու։ Շուտով այն տարածվեց նաև այլ համալսարաններում և ուժեղ լսարան գտավ կիրառական մաթեմատիկայի համայնքում։ Ինժեներ Ջեք Լիթլը, առաջին անգամ բախվել է Մաթլաբի հետ 1983 թվականին Սթենֆորդի համալսարանում Մոլերի հետ այցի ժամանակ։ Գիտակցելով նրա կոմերցիոն ներուժը ՝ նա միավորվեց Մոլերի և Սթիվ Բանգերտի հետ։ Նրանք վերաշարադրել են Մաթլաբը C-ում և 1984-ին հիմնել ՄաթՎորքսը `շարունակելու դրա զարգացումը[6]։ 2000 թ.-ին Մաթլաբը վերագրվեց`գրադարանների նոր հավաքածու օգտագործելու համար` մատրիցային մանիպուլյացիաների համար[7]։
Մաթլաբն առաջին անգամ ընդունվել է հետազոտողների և մասնագետների կողմից՝ ինժեներության մեջ, բայց արագորեն տարածվել է շատ այլ ոլորտներում։ Ներկայումս այն նաև օգտագործվում է կրթության մեջ, մասնավորապես գծային հանրահաշվի ուսուցման և թվային վերլուծության մեջ և հանրաճանաչ է պատկերների մշակմամբ զբաղվող գիտնականների շրջանում[5]։
Շարահյուսություն
խմբագրելՄաթլաբ հավելվածը գրված է Մաթլաբ ծրագրավորման լեզվով։ Մաթլաբ հավելվածի ընդհանուր օգտագործումը ներառում է «հրամանի պատուհան»-ի օգտագործում որպես ինտերակտիվ մաթեմատիկական վահանակ կամ Մաթլաբի ծածկագիր պարունակող տեքստային ֆայլերի իրականացում[8]։
Փոփոխականներ
խմբագրել
Փոփոխականները սահմանվում են հավասարման օպերատորի միջոցով՝ =
։ Մաթլաբը թույլ տիպացված ծրագրավորման լեզու է, քանի որ տիպերը անուղղակիորեն փոխակերպվում են[9]։ Սա ենթադրում է թույլ տիպացված լեզու, քանի որ փոփոխականները կարող են նշանակվել`առանց դրանց տիպը հայտարարելու, բացառությամբ այն դեպքերի, երբ դրանք պետք է դիտվեն որպես սիմվոլիկ օբյեկտներ[10], և որ նրանց տեսակը կարող է փոխվել։ Արժեքները կարող են առաջանալ կոնստանտներից, այլ փոփոխականների արժեքների հաշվարկից կամ ֆունկցիաների արդյունքից։ Օրինակ՝
>> x = 17
x =
17
>> x = 'hat'
x =
hat
>> x = [3*4, pi/2]
x =
12.0000 1.5708
>> y = 3*sin(x)
y =
-1.6097 3.0000
Վեկտորներ և մատրիցներ
խմբագրել
Սովորական զանգվածը սահմանվում է՝ օգտագործելով երկու կետերի կառուցվածքը՝ սկիզբ՝ :
աճ՝:
ավարտ. Օրինակ՝
>> array = 1:2:9
array =
1 3 5 7 9
վերևում սահմանված է մի փոփոխական՝ array
անունով (կամ վերագրված է նոր արժեք արդեն գոյություն ունեցող փոփոխականի՝ array
անունով), որը զանգված է՝ կազմված 1, 3, 5, 7 և 9 արժեքներից։
Այսինքն, զանգվածը սկսվում է 1-ից (նախնական արժեքը), հետո յուրաքանչյուր քայլով ավելանում է 2-ով (աճի արժեքը) և կանգ է առնում, երբ այն հասնում է 9-ի (վերջին արժեքը)։
>> array = 1:3:9
array =
1 4 7
աճի արժեքը, ըստ էության, կարող է դուրս մնալ այս շարահյուսությունից (երկու կետերից մեկի հետ միասին) օգտագործելով 1-նախնական արժեքը։
>> ari = 1:5
ari =
1 2 3 4 5
ari
անունով զանգվածին վերագրված է 1, 2, 3, 4 և 5 թվային արժեքներ, և քանի որ աճի արժեք չկա, այն ավելանում է 1-ով։
Ինդեքսավորումը 1-ից է սկսում[11], ինչը սովորական է մաթեմատիկական մատրիցների համար, ի տարբերություն զրոյի վրա հիմնված ինդեքսավորման, որը սովորաբար օգտագործվում է այլ հայտնի ծրագրավորման լեզուներում, ինչպիսիք են C, C ++ և Ջավա։
Մատրիցաները կարող են սահմանվել տողի տարրերը դատարկ տարածության կամ ստորակետով բաժանելու միջոցով և յուրաքանչյուր շարքի ավարտի համար կետ-ստորակետ օգտագործելով։ Էլեմենտների ցանկը պետք է քառակուսի փակագծերի մեջ լինի []
։ Փակագծերը ()
օգտագործվում են էլեմենտներին մուտք ունենալու և հետո դրանցով աշխատելու համար (նաև ֆունկցիաներում են հանդիպում)։
>> A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]
A =
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
>> A(2,3)
ans =
11
Ինդեքսների հավաքածուները կարող են սահմանվել 2:4
տիպի արտահայտություններով, որոնք գնահատվում են [2, 3, 4]։
Օրինակ, 2-ից 4-րդ տողերից և 3-ից 4-րդ սյուներից կազմված ենթամատրիցան կարելի է գրել հետևյալ կերպ՝
>> A(2:4,3:4)
ans =
11 8
7 12
14 1
N չափի քառակուսի մատրից կարող է ստեղծվել eye
ֆունկցիայի միջոցով, և ցանկացած չափի մատրիցներ, որոնք կազմված են զրոներից կամ մեկերից կարող են ստեղծվել zeros
և ones
ֆունկցիաների միջոցով, համապատասխանաբար՝
>> eye(3,3)
ans =
1 0 0
0 1 0
0 0 1
>> zeros(2,3)
ans =
0 0 0
0 0 0
>> ones(2,3)
ans =
1 1 1
1 1 1
Վեկտոր կամ մատրիցա տեղափոխելը կատարվում է կա՛մ transpose
ֆունկցիայով, կա՛մ մատրիցից հետո կետ-շտրիխ ավելացնելով (առանց կետի, շտրիխը կկատարի բարդ զանգվածների փոխկապակցված փոխադրում).
>> A = [1 ; 2], B = A.', C = transpose(A)
A =
1
2
B =
1 2
C =
1 2
>> D = [0 3 ; 1 5], D.'
D =
0 3
1 5
ans =
0 1
3 5
Ֆունկցիաներից շատերն ընդունում են զանգվածներ որպես մուտքային տվյալներ և գործողություններ են կատարում յուրաքանչյուր տարրի հետ առանձին-առանձին։ Օրինակ, mod(2*J,n)
բազմապատկում է J- ի յուրաքանչյուր տարր 2-ով, այնուհետև յուրաքանչյուր տարրը նվազեցնում է n մոդուլով։ Մաթլաբը ներառում է ստանդարտ for
և while
ցիկլեր, բայց (ինչպես R- ի նման այլ ծրագրերում), վեկտորիզացված նոտայի օգտագործումը ևս խրախուսվում է և հաճախ ավելի արագ է իրականացվում։ Հետևյալ կոդը, ստացված magic.m ֆունկցիայից, n -ի կենտ արժեքների համար ստեղծում է մեջիք քառակուսի M (Մաթլաբի meshgrid
ֆունկցիան օգտագործվում է այստեղ՝ 1:n պարունակող I և J քառակուսի մատրիցներ ստեղծելու համար).
[J,I] = meshgrid(1:n);
A = mod(I + J - (n + 3) / 2, n);
B = mod(I + 2 * J - 2, n);
M = n * A + B + 1;
Կառուցվածք
խմբագրելՄաթլաբն աջակցում է կառուցվածքի տվյալների տիպերին[12]։ Քանի որ Մաթլաբի բոլոր փոփոխականները զանգվածներ են, ավելի համարժեք անուն է «կառուցվածքային զանգված», որտեղ զանգվածի յուրաքանչյուր տարր ունի նույն դաշտային անունները։ Բացի այդ, Մաթլաբն աջակցում է դինամիկ դաշտային անվանումներին[13] (դաշտի որոնումներին անունով, դաշտերի մանիպուլյացիաներով և այլն)։
Ֆունկցիաներ
խմբագրելՄաթլաբի ֆունկցիա ստեղծելիս ֆայլի անունը պետք է համապատասխանի ֆայլում առաջին ֆունկցիայի անվանմանը։ Ֆունկցիայի թույլատրելի անունները կարող են պարունակել տառեր, թվեր կամ ընդգծման նշաններ։ Փոփոխականները և ֆունկցիաները զգայուն են նիշերի ռեգիստրի նկատմամբ[14]։
Ֆունկցիայի նկարագրություն
խմբագրելՄաթլաբն աջակցում է լամբդա հաշվարկային տարրերին` ներկայացնելով ֆունկցիայի նկարագրություն[15], կամ ֆունկցիայի մասին ծանոթագրություններ, որոնք իրականացվում են կա՛մ .m ֆայլերում, կա՛մ անանուն[16]/ ներդրված ֆունկցիաներում[17]։
Կլասսներ և օբյեկտի վրա հիմնված ծրագրավորման լեզու
խմբագրելՄաթլաբն աջակցում է օբյեկտի վրա հիմնված ծրագրավորմանը` ներառյալ կլասսերը, ժառանգությունը, վիրտուալ ուղարկումը, փաթեթները, անցումային արժեքի իմաստաբանությունը և անցումային նշման իմաստաբանությունը[18]։ Այնուամենայնիվ, շարահյուսությունը և տարրերի կանչերը զգալիորեն տարբերվում են այլ լեզուներից։ Մաթլաբն ունի ինչպես արժեքների կլասսներ, այնպես էլ հղումների կլասսներ, կախված նրանից, թե արդյոք կլասսի նկարագրությունը որպես սուպեր կլասս է (հղման կլասսերի համար), թե` ոչ (արժեքների կլասսերի համար)[19]։
Մեթոդի կանչելը տարբերվում է արժեքի և հղման կլասսերից։ Մեթոդի կանչի օրինակ՝
object.method();
Այն կարող է փոխել օբյեկտի ցանկացած անդամ միայն այն դեպքում, եթե օբյեկտը հանդիսանում է հղման կլասսի օրինակ, այլապես արժեքի կլասսի մեթոդները պետք է վերադարձնեն նոր օրինակ, եթե անհրաժեշտ է փոփոխել օբյեկտը։
Ստորև բերված է պարզ կլասսի օրինակ՝
classdef Hello
methods
function greet(obj)
disp('Hello!')
end
end
end
Hello.m անունով ֆայլի մեջ դնելիս դա կարող է իրականացվել հետևյալ հրամաններով.
>> x = Hello();
>> x.greet();
Hello!
Գրաֆիկներ և գրաֆիկական ինտերֆեյսի ծրագրավորում
խմբագրելՄաթլաբը սերտորեն ինտեգրված է գրաֆիկային-գծապատկերային հատկանիշներով։
Օրինակ, plot ֆունկցիան կարող է օգտագործվել երկու x և y վեկտորներից գրաֆիկ ստեղծելու համար։ Կոդը՝
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)
Սա ստեղծում է սինուս ֆունկցիայի հետևյալ ցուցանիշը.
Մաթլաբն աջակցում է նաև եռաչափ գրաֆիկայի ՝
Մաթլաբն աջակցում է նաև գրաֆիկական ինտերֆեյսի (GUI)[20]։
Ինտերֆեյս կարող է ստեղծվել ծրագրային կոդի միջոցով կամ վիրտուալ դիզայնի միջավայրում, ինչպիսիք են GUIDE և App Designer միջավայրերը[21][22]։
Ինտերֆեյս այլ լեզուների հետ
խմբագրելՄաթլաբը կարող է կանչել C կամ Ֆորտրան ծրագրավորման լեզուներով գրված ֆունկցիաներ[23]։ Ստեղծվում է ֆունկցիա-վահանակ, որը թույլ է տալիս փոխանցել և վերադարձնել Մաթլաբի տվյալների տեսակները։ MEX-ֆայլերը (գործարկվող Մաթլաբ ֆայլեր) դինամիկ կերպով վերբեռնված օբյեկտ ֆայլեր են, որոնք ստեղծվել են նման ֆունկցիաների կազմման միջոցով[24][25]։ 2014 թվականից ավելացավ երկկողմանի ինտերֆեյս Փայթոնի հետ[26][27]։
Perl-ի, Ջավայյի, ԷքթիվԻքս-ի կամ .Նեթ-ի վրա գրված գրադարանները կարող են ուղղակիորեն կանչվել Մաթլաբից[28][29], և շատ Մաթլաբ գրադարաններ (օրինակ XML կամ SQL), օգտագործվում են Ջավայի կամ ԷքթիվԻքս-ի գրադարանների շուրջ։ Մաթլաբից Ջավա կանչելն ավելի բարդ է, բայց կարող է կատարվել Մաթլաբի գործիքների հավաքածուով[30], որը վաճառվում է առանձին ՄաթՎորքսով կամ jmi-իի (Ջավա-Մաթլաբ ինտերֆեյս)[31][32] մեխանիզմով (որը չպետք է շփոթել Ջավայի մետատվյալների ոչ կապակցված ինտերֆեյսի հետ, որը ևս կոչվում է JMI): Ջավայի համար պաշտոնական Մաթլաբի API- ն ավելացվել է 2016 թվականին[33]։
Որպես այլընտրանք Մաթվորքսում հասանելի ՄաՓադ շարժիչի վրա հիմնված սիմվոլիկ մաթեմատիկայի գործիքիով Մաթլաբը կարող է միացված լինել Մափըլին[34][35]։
Գրադարաններ կան նաև ՄաթՄԼ ներմուծելու և արտահանելու համար[36]։
Չինաստանի արգելքը
խմբագրել2020 թվականին չինական պետական ԶԼՄ-ները հայտնում են, որ Մաթլաբը ԱՄՆ պատժամիջոցներով չեղարկել է Չինաստանի երկու համալսարանների ծառայություններ, և Չինաստանը հայտարարել է, որ դրան կպատասխանեն բաց աղբյուրների այլընտրանքների օգտագործմամբ և ներքին այլընտրանքների զարգացմամբ[37]։
Այլընտրանքներ
խմբագրելՄաթլաբին մի շարք մրցակիցներ կան։ Որոշ ուշագրավ օրինակներ են.
- Մափըլ
- ԻԴԼ
- Վոլֆրամ Մաթեմատիկա։
Մաթլաբի համար կան նաև անվճար բաց կոդով այլընտրանքներ, մասնավորապես.
- ԳՆՈՒ Օքթավ
- Սքիլաբ
- ՖրիՄաթ
- Ջուլիա
- ՍեյջՄաթ
որոնք որոշ չափով համատեղելի են Մաթլաբ լեզվի հետ։ ԳՆՈՒ Օքթավն առանձնահատուկ է մյուսներից, քանի որ այն նպատակ ունի զուգակցվել Մաթլաբի շարահյուսության հետ։
Կան նաև գրադարաններ, որոնք գոյություն ունեցող լեզուներին նման ֆունկցիոնալություն են ավելացնում, ինչպիսիք են.
Թողարկման պատմություն
խմբագրելՏարբերակ[38] | Թողարկման անվանումը | Թիվ | Կոմպլեկտ JVM | Տարի | Թողարկման ամսաթիվ | Գրառումներ |
---|---|---|---|---|---|---|
Մաթլաբ 1.0 | 1984 | |||||
Մաթլաբ 2 | 1986 | |||||
Մաթլաբ 3 | 1987 | |||||
Մաթլաբ 3.5 | 1990 | Աշխատացնել ԴՕՍ-ի վրա, բայց պետք է առնվազն 386 պրոցեսոր; 3․5 տարբերակի համար անհրաժեշտ է մաթեմատիկական պրոցեսոր | ||||
Մաթլաբ 4 | 1992 | Աշխատեցնել Վինդոուզ 3.1x-ի և Մաքինթոշի վրա | ||||
Մաթլաբ 4.2c | 1994 | Աշխատեցնել Վինդոուզ 3.1x-ի, բայց պետք է նաև մաթեմատիկական պրոցեսոր | ||||
Մաթլաբ 5.0 | Հատոր 8 | 1996 | Դեկտեմբեր,1996 | Համատեղ թողարկումներ բոլոր հարթակներում | ||
Մաթլաբ 5.1 | Հատոր 9 | 1997 | Մայիս, 1997 | |||
Մաթլաբ 5.1.1 | R9.1 | |||||
Մաթլաբ 5.2 | R10 | 1998 | Մարտ,1998 | Դասական Mac-երի վրա աշխատող վերջին տարբերակը | ||
Մաթլաբ 5.2.1 | R10.1 | |||||
Մաթլաբ 5.3 | R11 | 1999 | Հունվար, 1999 | |||
Մաթլաբ 5.3.1 | R11.1 | Նոյեմբեր,1999 | ||||
Մաթլաբ 6.0 | R12 | 12 | 1.1.8 | 2000 | Նոյեմբեր, 2000 | Առաջին թողարկումը՝ կապված Ջավայի վիրտուալ մեքենայի հետ (JVM) |
Մաթլաբ 6.1 | R12.1 | 1.3.0 | 2001 | Հունիս, 2001 | Վերջին թողարկումը Վինդոուզ 95-ի համար | |
Մաթլաբ 6.5 | R13 | 13 | 1.3.1 | 2002 | Հուլիս, 2002 | |
Մաթլաբ 6.5.1 | R13SP1 | 2003 | ||||
Մաթլաբ 6.5.2 | R13SP2 | Վերջին թողարկումը Վինդոուզ 98-ի, Վինդոուզ ՄԵ-ի համար[39] | ||||
Մաթլաբ 7 | R14 | 14 | 1.4.2 | 2004 | Հունիս 2004 | Ավելացվեցին անանուն և ներդրված ֆունկցիաները[40] Նորից ներկայացվեց Mac- ի համար (Մաք Օէս Տաս -ի տակ) |
Մաթլաբ 7.0.1 | R14SP1 | Հոկտեմբեր, 2004 | ||||
Մաթլաբ 7.0.4 | R14SP2 | 1.5.0 | 2005 | Մարտի 7, 2005 | Հիշողության մեջ ցուցադրվող ֆայլերի աջակցություն[41] | |
Մաթլաբ 7.1 | R14SP3 | 1.5.0 | Սեպտեմբերի 1, 2005 | Առաջին 64-բիթանոց տարբերակը հասանելի Վինդոուզ XP 64-բիթի համար | ||
Մաթլաբ 7.2 | R2006a | 15 | 1.5.0 | 2006 | Մարտի 1, 2006 | |
Մաթլաբ 7.3 | R2006b | 16 | 1.5.0 | Սեպտեմբերի 1, 2006 | ||
Մաթլաբ 7.4 | R2007a | 17 | 1.5.0_07 | 2007 | Մարտի 1, 2007 | Նոր bsxfun ֆունկցիա էլեմենտ-էլեմենտ երկուական գործողություն կիրառելու համար[42]
|
Մաթլաբ 7.5 | R2007b | 18 | 1.6.0 | Սեպտեմբերի 1, 2007 | Վերջին թողարկումը Windows 2000 Վինդոուզ 2000-ի և ՓավըրՓիՍի Մաք- ի համար, Վինդոուզ Վիստա սերվերի լիցենզիայի աջակցություն[43], P- կոդի համար նոր ներքին ձևաչափ | |
Մաթլաբ 7.6 | R2008a | 19 | 1.6.0 | 2008 | Մարտի 1, 2008 | Օբեկտների վրա հիմնված ծրագրավորման ունակությունների հիմնական բարելավում` կլասսների սահմանման նոր շարահյուսությամբ[44] և փաթեթներով անվանման տեղերը կառավարելու ունակությամբ[45] |
Մաթլաբ 7.7 | R2008b | 20 | 1.6.0_04 | Հոկտեմբերի 9, 2008 | SSE2- ի պրոցեսորների վերջին թողարկումը, քարտեզի տվյալների նոր կառուցվածք.[46] պատահական թվերի գեներատորի թարմացում[47] | |
Մաթլաբ 7.8 | R2009a | 21 | 1.6.0_04 | 2009 | Մարտի 6, 2009 | Առաջին թողարկումը Մայքրոսոֆթ 32-բիթ և 64-բիթ Վինդուուզ 7-ի համար, նոր արտաքին ինտերֆեյս ՝ ․ՆԵԹ ֆրեյմվորք[48] |
Մաթլաբ 7.9 | R2009b | 22 | 1.6.0_12 | Սեպտեմբերի 4, 2009 | Առաջին թողարկումը Ինթել 64-բիթանոց Mac- ի համար, և վերջինը ՝ Սոլարիս ՍՊԱՐՔ- ի համար, նոր հնարավորություն (~ ) օպերատորի համար՝ ֆունկցիայի կանչերում արգումենտներն անտեսելու համար[49][50]
| |
Մաթլաբ 7.9.1 | R2009bSP1 | 1.6.0_12 | 2010 | Ապրիլի 1, 2010 | բագերի շտկումներ | |
Մաթլաբ 7.10 | R2010a | 23 | 1.6.0_12 | Մարտի 5, 2010 | ||
Մաթլաբ 7.11 | R2010b | 24 | 1.6.0_17 | Սեպտեմբերի 3, 2010 | Ցանկերի ավելացում[51] | |
Մաթլաբ 7.11.1 | R2010bSP1 | 1.6.0_17 | 2011 | Մարտի 17, 2011 | բագերի շտկումներ և թարմացումներ | |
Մաթլաբ 7.11.2 | R2010bSP2 | 1.6.0_17 | Ապրիլի 5, 2012[52] | բագերի շտկումներ | ||
Մաթլաբ 7.12 | R2011a | 25 | 1.6.0_17 | Ապրիլի 8, 2011 | Նոր rng ֆունկցիա՝ պատահական թվերի առաջացումը վերահսկելու համար[53][54][55]
| |
Մաթլաբ 7.13 | R2011b | 26 | 1.6.0_17 | Սեպտեմբերի 1, 2011 | Փոփոխականների արժեքների մուտք-փոփոխում ուղղակիորեն MAT- ֆայլերում, առանց հիշողության մեջ բեռնելու[56], զուգահեռ հաշվարկային գործիքատուփի հետ տեղական առավելագույն աշխատողների ավելացումը 8-ից 12-ի սահմաններում[57] | |
Մաթլաբ 7.14 | R2012a | 27 | 1.6.0_17 | 2012 | Մարտի 1, 2012 | 32-բիթանոց Լինուքսի համար վերջին տարբերակը[58] |
Մաթլաբ 8 | R2012b | 28 | 1.6.0_17 | Սեպտեմբերի 11, 2012 | Առաջին թողարկումը Թուլսթրիպ ինտերֆեյսով[59], Մաթլաբի նոր ծրագրեր[60] | |
Մաթլաբ 8.1 | R2013a | 29 | 1.6.0_17 | 2013 | Մարտի 7, 2013 | Նոր ֆրեյմվորք՝ թեստավորման համար[61] |
Մաթլաբ 8.2 | R2013b | 30 | 1.7.0_11 | Սեպտեմբերի 6, 2013[62] | Ներկառուցված Ջավա միջավայրի(JRE) թարմացված 7-րդ տարբերակ[63], աղյուսակի տվյալների նոր տեսակ[64] | |
Մաթլաբ 8.3 | R2014a | 31 | 1.7.0_11 | 2014 | Մարտի 7, 2014[65] | Պարզեցված կոմպիլյատոր MEX-ֆայլերի կառուցման համար, USB տեսախցիկների աջակցում, տեղական աշխատատեղերի թիվը այլևս սահմանափակվում է 12-ով զուգահեռ հաշվարկային գործիքատուփի համար |
Մաթլաբ 8.4 | R2014b | 32 | 1.7.0_11 | Հոկտեմբերի 3, 2014 | Նոր կլասսների վրա հիմնված գրաֆիկական շարժիչ[66], նոր ֆունկցիաներ GUI-ում[67], բարելավված գործիքատուփ և օգնության ֆայլեր[68] , ժամանակի մանիպուլյացիաների համար նոր օբյեկտներ[69], Git-ի ինտեգրում IDE-ում[70], տվյալների մեծ հնարավորություններ with ՄափՌեդյուսի հետ[71], նոր py փաթեթ Մաթլաբի ներսում Փայթոն օգտագործելու համար[72], նոր շարժիչի միջերես Մաթլաբը Փայթոնից կանչելու համար[73], մի քանի նոր և կատարելագործված ֆունկցիաներ՝ webread, tcpclient , histcounts , histogram , animatedline և այլն
| |
Մաթլաբ 8.5 | R2015a | 33 | 1.7.0_60 | 2015 | Մարտի 5, 2015 | |
Մաթլաբ 8.5 | R2015aSP1 | 1.7.0_60 | Հոկտեմբերի 14, 2015 | |||
Մաթլաբ 8.6 | R2015b | 34 | 1.7.0_60 | Սեպտեմբերի 3, 2015 | Մաթլաբի նոր գործարկման շարժիչ[74], graph և digraph կլասսներ՝ գրաֆիկների և ցանցերի հետ աշխատելու համար[75], MinGW-w64-ը որպես Վինդոուզի օժանդակվող կոմպիլյատոր[76]
| |
Մաթլաբ 9.0 | R2016a | 35 | 1.7.0_60 | 2016 | Մարտի 3, 2016 | Կենդանի գրություններ. Ինտերակտիվ փաստաթղթեր, որոնք համատեղում են տեքստը, կոդը և վերջնական արդյունքը(գրագետ ծրագրավորման ոճով)[77], Ծրագրերի դիզայներ. ծրագրերի զարգացման նոր միջավայր (նոր տեսակի UI գործիքներով[78]) |
Մաթլաբ 9.1 | R2016b | 36 | 1.7.0_60 | Սեպտեմբերի 15, 2016 | ֆունկցիաների սահմանում սկրիպտում[79] չափերի ավտոմատ ընդլայնում (նախկինում նախատեսված էր bsxfun ֆունկցիա դա անելու համար); tall նոր զանգվածներ մեծ տվյալների համար[80], նորstring տեսակ;[81] նոր ֆունկցիաներ JSON կոդավորելու / վերծանելու համար[82], պաշտոնական Մաթլաբ API Ջավայիի համար[33]
| |
Մաթլաբ 9.2 | R2017a | 37 | 1.7.0_60 | 2017 | Մարտի 9, 2017 | Օնլայն Մաթլաբ. Քլաուդի վրա հիմնված Մաթլաբ աշխատասեղան, որը հասանելի է վեբ բրաուզերում[83], կրկնակի չակերտներով տողեր, նոր memoize ֆունկցիա նախատեսված հիշողության համար, օբյեկտների հատկությունների ընդլայնում[84], մոդուլային փորձարկման համար հարթակ[85] MEX- ը թիրախավորում է 64-բիտ, նոր heatmap ֆունկցիա դիագրամների ստեղծման համար[86]
|
Մաթլաբ 9.3 | R2017b | 38 | 1.8.0_121 | Սեպտեմբերի 21, 2017 | ||
Մաթլաբ 9.4 | R2018a | 39 | 1.8.0_144 | 2018 | Մարտի 15, 2018[87] | |
Մաթլաբ 9.5 | R2018b | 40 | 1.8.0_152 | Սեպտեմբերի 12, 2018 | ||
Մաթլաբ 9.6 | R2019a | 41 | 1.8.0_181 | 2019 | Մարտի 20, 2019 | Մաթլաբ նախագծեր |
Մաթլաբ 9.7 | R2019b | 42 | 1.8.0_202 | Սեպտեմբերի 11, 2019 | ||
Մաթլաբ 9.8 | R2020a | 2020 | Մարտի 19, 2020 | ՄաՓադ շարժիչի հեռացումը |
Մաթլաբի և իր պաշտոնական գործիքատուփերի փոփոխությունների ամբողջական ցուցակի համար կարդացեք Մաթլաբի թողարկման պատմություն աղյուսակի գրառումներ դաշտը[88]։
Ծանոթագրություններ
խմբագրել- ↑ 1,0 1,1 1,2 http://www.mathworks.com/products/availability/index.html#ML
- ↑ https://de.mathworks.com/support/requirements/platform-road-map.html
- ↑ https://fr.mathworks.com/pricing-licensing.html
- ↑ The MathWorks (February 2020). «Company Overview» (PDF). Արխիվացված է օրիգինալից (PDF) 2020 թ․ հուլիսի 19-ին.
- ↑ 5,0 5,1 Cleve Moler (December 2004). «The Origins of MATLAB». Վերցված է 2007 թ․ ապրիլի 15-ին.
- ↑ «MATLAB Programming Language». Altius Directory. Արխիվացված է օրիգինալից 2017 թ․ հունվարի 3-ին. Վերցված է 2010 թ․ դեկտեմբերի 17-ին.
- ↑ Moler, Cleve (January 2000). «MATLAB Incorporates LAPACK». Cleve's Corner. MathWorks. Վերցված է 2008 թ․ դեկտեմբերի 20-ին.
- ↑ «MATLAB Documentation». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Comparing MATLAB with Other OO Languages». MATLAB. MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Create Symbolic Variables and Expressions». Symbolic Math Toolbox. MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Matrix Indexing». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Structures». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Generate Field Names from Variables». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Case and Space Sensitivity». MathWorks. Վերցված է 2019 թ․ նոյեմբերի 1-ին.
- ↑ «Function Handles». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Anonymous Functions». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Nested Functions». MathWorks.
- ↑ «Object-Oriented Programming». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Comparing Handle and Value Classes». MathWorks.
- ↑ «MATLAB GUI». MathWorks. 2011 թ․ ապրիլի 30. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Create a Simple GUIDE GUI». MathWorks. Արխիվացված է օրիգինալից 2014 թ․ հոկտեմբերի 5-ին. Վերցված է 2014 թ․ օգոստոսի 14-ին.
- ↑ «MATLAB App Designer». MathWorks. Վերցված է 2019 թ․ նոյեմբերի 1-ին.
- ↑ «Application Programming Interfaces to MATLAB». MathWorks. Արխիվացված է օրիգինալից 2017 թ․ սեպտեմբերի 15-ին. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Create MEX-Files». MathWorks. Արխիվացված է օրիգինալից 2014 թ․ մարտի 3-ին. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ Spielman, Dan (2004 թ․ փետրվարի 10). «Connecting C and Matlab». Yale University, Computer Science Department. Վերցված է 2008 թ․ մայիսի 20-ին.
- ↑ «MATLAB Engine for Python». MathWorks. Վերցված է 2015 թ․ հունիսի 13-ին.
- ↑ «Call Python Libraries». MathWorks. Վերցված է 2015 թ․ հունիսի 13-ին.
- ↑ «External Programming Language Interfaces». MathWorks. Արխիվացված է օրիգինալից 2014 թ․ մարտի 11-ին. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «Call Perl script using appropriate operating system executable». MathWorks. Վերցված է 2013 թ․ նոյեմբերի 7-ին.
- ↑ «MATLAB Builder JA». MathWorks. Վերցված է 2010 թ․ հունիսի 7-ին.
- ↑ Altman, Yair (2010 թ․ ապրիլի 14). «Java-to-Matlab Interface». Undocumented Matlab. Արխիվացված է օրիգինալից 2015 թ․ սեպտեմբերի 5-ին. Վերցված է 2010 թ․ հունիսի 7-ին.
- ↑ Kaplan, Joshua. «matlabcontrol JMI».
- ↑ 33,0 33,1 «MATLAB Engine API for Java». MathWorks. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ Germundsson, Roger (1998 թ․ սեպտեմբերի 30). «MaMa: Calling MATLAB from Mathematica with MathLink». Wolfram Research. Wolfram Library Archive.
- ↑ rsmenon; szhorvat (2013). «MATLink: Communicate with MATLAB from Mathematica». Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ Weitzel, Michael (2006 թ․ սեպտեմբերի 1). «MathML import/export». MathWorks - File Exchange. Արխիվացված է օրիգինալից 2011 թ․ փետրվարի 25-ին. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ https://news.cgtn.com/news/2020-06-13/Chinese-FM-responds-to-MATLAB-s-ban-on-two-Chinese-universities-Rhx20G3pte/(չաշխատող հղում)
- ↑ Moler, Cleve (January 2006). «The Growth of MATLAB and The MathWorks over Two Decades». News & Notes Newsletter. MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «MATLAB System Requirements - Release 13». MathWorks. Վերցված է 2015 թ․ հոկտեմբերի 6-ին.
- ↑ «Dynamic Function Creation with Anonymous and Nested Functions». MathWorks. Վերցված է 2016 թ․ հունվարի 15-ին.
- ↑ «Memory Mapping». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «MATLAB bsxfun». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «Do MATLAB versions prior to R2007a run under Windows Vista?». MathWorks. 2010 թ․ սեպտեմբերի 3. Վերցված է 2011 թ․ փետրվարի 8-ին.
- ↑ «OOP Compatibility with Previous Versions». MathWorks. Արխիվացված է օրիգինալից 2021 թ․ հունվարի 11-ին. Վերցված է 2013 թ․ մարտի 11-ին.
- ↑ «Packages Create Namespaces». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «Map Containers». MathWorks. Արխիվացված է օրիգինալից 2021-01-09-ին. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «Creating and Controlling a Random Number Stream». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «New MATLAB External Interfacing Features in R2009a». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «Ignore Function Outputs». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «Ignore Function Inputs». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «Working with Enumerations». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «What's New in Release 2010b». MathWorks. Արխիվացված է օրիգինալից 2015 թ․ նոյեմբերի 25-ին. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «New RNG Function for Controlling Random Number Generation in Release 2011a». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «MATLAB rng». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «Replace Discouraged Syntaxes of rand and randn». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «MATLAB matfile». MathWorks. Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ «MATLAB max workers». Վերցված է 2014 թ․ հունվարի 22-ին.
- ↑ MathWorks Support Team (2015 թ․ հունիսի 4). «Is MATLAB supported on 32-bit Linux?». «Versions of MATLAB prior to R2012a are fully supported on 32-bit Linux. After R2012a, MATLAB is no longer supported on 32-bit Linux.»
- ↑ Shure, Loren (September 2012). «The MATLAB R2012b Desktop – Part 1: Introduction to the Toolstrip».
- ↑ «MATLAB Apps». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «MATLAB Unit Testing Framework». MathWorks. Վերցված է 2013 թ․ օգոստոսի 14-ին.
- ↑ «MathWorks Announces Release 2013b of the MATLAB and Simulink Product Families». MathWorks. September 2013.
- ↑ «R2013b Release Notes». MathWorks. Վերցված է 2018 թ․ սեպտեմբերի 17-ին.
- ↑ «MATLAB Tables». MathWorks. Վերցված է 2013 թ․ սեպտեմբերի 14-ին.
- ↑ «MathWorks Announces Release 2014a of the MATLAB and Simulink Product Families». MathWorks. Վերցված է 2014 թ․ մարտի 11-ին.
- ↑ «Graphics Changes in R2014b». MathWorks. Վերցված է 2014 թ․ հոկտեմբերի 3-ին.
- ↑ «uitab: Create tabbed panel». MathWorks. Վերցված է 2014 թ․ հոկտեմբերի 3-ին.
- ↑ «Create and Share Toolboxes». MathWorks. Վերցված է 2014 թ․ հոկտեմբերի 3-ին.
- ↑ «Dates and Time». MathWorks. Վերցված է 2014 թ․ հոկտեմբերի 3-ին.
- ↑ «Source Control Integration». MathWorks. Վերցված է 2014 թ․ հոկտեմբերի 3-ին.
- ↑ «MATLAB MapReduce and Hadoop». MathWorks. Արխիվացված է օրիգինալից 2014 թ․ հոկտեմբերի 4-ին. Վերցված է 2014 թ․ հոկտեմբերի 3-ին.
- ↑ «Call Python Libraries». MathWorks. Վերցված է 2014 թ․ հոկտեմբերի 3-ին.
- ↑ «MATLAB Engine for Python». MathWorks. Վերցված է 2014 թ․ հոկտեմբերի 3-ին.
- ↑ «MATLAB Execution Engine». MathWorks. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ «Graph and Network Algorithms». MathWorks. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ «Install MinGW-w64 Compiler». MathWorks. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ «What Is a Live Script?». MathWorks. Արխիվացված է օրիգինալից 2018 թ․ փետրվարի 25-ին. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ «MATLAB App Designer». MathWorks. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ «Add Functions to Scripts». MathWorks. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ «Tall Arrays». MathWorks. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ «Create String Arrays». MathWorks. Վերցված է 2016 թ․ սեպտեմբերի 15-ին.
- ↑ «JSON Format - MATLAB & Simulink». mathworks.com. Վերցված է 2017 թ․ օգոստոսի 20-ին.
- ↑ «MATLAB Online». MathWorks. Վերցված է 2017 թ․ ապրիլի 10-ին.
- ↑ «Validate Property Values». MathWorks. Վերցված է 2017 թ․ ապրիլի 10-ին.
- ↑ «Mocking Framework». MathWorks. Վերցված է 2017 թ․ ապրիլի 10-ին.
- ↑ «Create Heatmap from Tabular Data». MathWorks. Վերցված է 2017 թ․ ապրիլի 10-ին.
- ↑ «MathWorks Announces Release 2018a of the MATLAB and Simulink Product Families». MathWorks. Վերցված է 2018 թ․ ապրիլի 5-ին.
- ↑ «MATLAB Release Notes». MathWorks. Վերցված է 2014 թ․ հունվարի 25-ին.
Արտաքին հղումներ
խմբագրել- Gilat, Amos (2004). MATLAB: An Introduction with Applications 2nd Edition. John Wiley & Sons. ISBN 978-0-471-69420-5.
- Quarteroni, Alfio; Saleri, Fausto (2006). Scientific Computing with MATLAB and Octave. Springer. ISBN 978-3-540-32612-0.
- Ferreira, A.J.M. (2009). MATLAB Codes for Finite Element Analysis. Springer. ISBN 978-1-4020-9199-5.
- Lynch, Stephen (2004). Dynamical Systems with Applications using MATLAB. Birkhäuser. ISBN 978-0-8176-4321-8.
Վիքիպահեստն ունի նյութեր, որոնք վերաբերում են «Մաթլաբ» հոդվածին։ |