نرم افزار متلب Matlab

Mohamad-Sarfaraz

عضو جدید
سلام دوستان؛
اين تاپيك به منظور آشنايي با كاربردهاي اين نرم افزار مي باشد. اميدوارم بهره كافي را ببريد.
فعلا به اينترنت پر سرعت دسترسي ندارم ولي تا دو هفته ديگر فايلها را ضميمه مي كنم. اگر عجله داريد مي توانيد به وبلاگم سر بزنيد : www.learnmatlab.blogfa.com
مطالب شامل موضوعات زير است :
1 - كاربرد Matlab در آمار و احتمالات مهندسي
2 - كاربرد Matlab در رياضيات عمومي 1
3 - كاربرد Matlab در رياضيات عمومي 2
4 - كاربرد Matlab در حل معادلات ديفرانسيل معمولي (ODE)
 
آخرین ویرایش:

Mohamad-Sarfaraz

عضو جدید
حل معادلات ديفرانسيل معمولي با Matlab

حل معادلات ديفرانسيل معمولي با Matlab

Matlab يك زبان با كاربري فوق العاده براي عمليات محاسباتي است، كه امكانات متعدد محاسباتي، نمايشي و برنامه نويسي را در محيطي كه استفاده از آن براي كاربر آسان است، فراهم مي كند. در اين محيط براي مسائل و پاسخها از علائم و سمبلهاي آشناي رياضي استفاده شده است. كاربردهايي از اين زبان عبارتند از :
- رياضيات و محاسبات
- محاسات علمي پيشرفته
- داده يابي
- مدل كردن، شبيه سازي، نمونه سازي اوليه
- آناليز كردن اطلاعات، شناسايي و تجسم بخشيدن
- نمودارهاي علمي و مهندسي
- كاربردهاي پيشرفته نظير ايجاد مبدلهاي گرافيكي (GUI)
Matlab يك سيستم محاوره اي است كه عنصر اساسي اطلاعات در آن رشته اي است كه نياز به تعريف ابعاد ندارد.
نام Matlab از Matrix Laboratory گرفته شده است. از خصوصيات برجسته اين نرم افزار دارا بودن خانواده اي وسيع از پاسخهاي علمي است كه به toolbox موسوم است.
در ادامه خاطرنشان مي سازم كه مطالبي كه در ادامه بيان ميگردد، با اين فرض ذكر گرديده است كه شما از قبل با تمامي دستورات Matlab و نحوه كار با آن آشنايي داريد.










فعلا pdf مربوط به حل معادلات ديفرانسيل معمولي با Matlab را دانلود نماييد:




سرفصلهاعبارتند از :
1 - معادلات مرتبه اول
2 - معادلات مرتبه دوم
3 - معادلات مرتبه n-ام
4 - معادله ديفرانسيل لژاندر
5 - معادله ديفرانسيل بسل
6 - دستگاه معادلات ديفرانسيل خطي
7 - تبديل لاپلاس
8 - تبديل لاپلاس معكوس
9 - تابع گاما
10 - محاسبه برخي از انتگرالهاي ناسره
 

پیوست ها

  • ODE.pdf
    1.9 مگایابت · بازدیدها: 0
آخرین ویرایش:

Mohamad-Sarfaraz

عضو جدید
کاربرد Matlab در ریاضیات عومی 1 و 2

کاربرد Matlab در ریاضیات عومی 1 و 2

سرفصلها :
معرفي تابع، مقداردهي، مشتق گيري، انتگرال گيري، حل معادله،رسم نمودار توابع پيوسته،رسم بردار در فضاي دو بعدي ،رسم بردار در فضاي سه بعدي،رسم صفحه،مشخص كردن بردارهاي كنج فرنه (T&N&B)،تعريف توابع عددي دو متغيره،ترسيم توابع عددي دو متغيره،ترسيم توابع دو متغيره با مختصات قطبي،رسم منحنيهاي تراز،تكنيك رسم سريع توابع عددي دو متغيره،بردار گراديان و منحني تراز، رسم سطوح تراز توابع سه متغيره، رسم ميدان برداري گراديان، ترسيم پارامتري سطوح، محاسبه انتگرال دوگانه بر روي ناحيه مستطيلي، انتگرالگيري نمادين، محاسبه انتگرال دوگانه بر روي ناحيه غير مستطيلي و ...
 

پیوست ها

  • riaziat-omumi.pdf
    656.5 کیلوبایت · بازدیدها: 0

Mohamad-Sarfaraz

عضو جدید
حل معادلات دیفرانسیل با مشتقات جزئی PDE با Matlab

حل معادلات دیفرانسیل با مشتقات جزئی PDE با Matlab

حل معادلات دیفرانسیل با مشتقات جزئی PDE با Matlab
این pdf که توسط بنده تهیه شده، شامل حل کلیه معادلات دیفرانسیل با مشتقات جزئی PDE اعم از خطی و غیر خطی توسط نرم افزار Matlab می باشد.
محمد سرفراز
http://www.www.www.iran-eng.ir/attachment.php?attachmentid=4027&stc=1&d=1215323033مشاهده پیوست PDE.pdf
 

neshat_okhovat

عضو جدید
درخواست راهنمایی در مورد پردازش تصویر

درخواست راهنمایی در مورد پردازش تصویر

سلام
من امروز عضو این سایت شدم مطالب جالبی داره. برای موضوع پایان نامه خودم باید پردازش تصویر یاد بگیرم ضمن اینکه اصلا نمیدونم از کجا باید شروع کنم مطلب هم متاسفانه بلد نیستم.من رشته عمران-خاک و پی میخونم و پایان نامه ام هم رجع به تثبیت خاک با الیاف....باید یک سری عکس از نمونه هام بگیرم و اونا رو پردازش کنم. و چون دیدم راجع به این موضوع هم آشنایی دارید ممنون میشم اگه منو راهنمایی کنید.
 

فرج اللهی

عضو جدید
حل معادلات دیفرانسیل با مشتقات جزئی PDE با Matlab
این pdf که توسط بنده تهیه شده، شامل حل کلیه معادلات دیفرانسیل با مشتقات جزئی PDE اعم از خطی و غیر خطی توسط نرم افزار Matlab می باشد.
محمد سرفراز
http://www.www.www.iran-eng.ir/attachment.php?attachmentid=4027&stc=1&d=1215323033مشاهده پیوست 4027
دوست عزیز سلام
من نیاز خیلی واجبی به برنامه هایpdeبا نرمافزار matlab دارم.اما متأسفانه بعد از دانلود فایل باز نمیشه.نرمازار adobe reader پیغام خطا میده.میتونین کمکم کنین؟ممنون
 

grindelvald

عضو جدید
من دانلودش كردم.مشكلي نداشت.احتمالا اسمه فولدرت رو فارسي نوشتي كه بايد عوضش كني.
 

فرج اللهی

عضو جدید
اسم فولدر رو فارسی ننوشتم.این پیغام رو میده:this file is damage and could not be repaired
اگه یکی از دوستان زحمت بکشن و فایل رو (حتی اگه شده با یک فرمت دیگه) برام mail کنن واقعا ممنون میشم.چون خیلی بهش نیاز دارم
email:gahar4466@yahoo.com
 

saberm

عضو جدید
سلام من احتیاج شدید به Ebook مشتقات جزئی (PDE)دارم اما دانلود نمیشه ممنون میشم در صورت امکان برای منم فایل را بقرستید )saber4490@yahoo.com با تشکر
 

david_1988

عضو جدید
درخواست كمك در مورد مطلب

درخواست كمك در مورد مطلب

آموزش تصويري حل معادله موج و توليد انيميشن با Matlab
فايل wave_equ.html را با IE7 باز كنيد.

لينك دانلود:
http://rapidshare.com/files/141223429/wave_equ.rar.html
من تازه شروع به يادگيري مطلب كردهام.در قسمت متني ان برنامه ساده اي براي محاسبه ميانگين چند عدد نوشته ام.اما به اين صورت اشكال ميگيرد كه تقسيم در كلاس سل نميتواند انجام گيرد .من هم تغيير دادن كلاس هارا بلد نيستم
 

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
cell2mat

cell2mat

من تازه شروع به يادگيري مطلب كردهام.در قسمت متني ان برنامه ساده اي براي محاسبه ميانگين چند عدد نوشته ام.اما به اين صورت اشكال ميگيرد كه تقسيم در كلاس سل نميتواند انجام گيرد .من هم تغيير دادن كلاس هارا بلد نيستم


از دستور cell2mat استفاده كنيد. نمونه:

clc

>> a={3 4 7}

a =

[3] [4] [7]

>> b=cell2mat(a)

b =

3 4 7

>> mean(b)

ans =

4.6667


پ.ن.: چرا داده‏ها رو به صورت cell داديد؟ بهتر بود به صورت پيش‏فرضش كه double هست اين كار رو مي‏كرديد.
 

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
سرفصلها :
معرفي تابع، مقداردهي، مشتق گيري، انتگرال گيري، حل معادله،رسم نمودار توابع پيوسته،رسم بردار در فضاي دو بعدي ،رسم بردار در فضاي سه بعدي،رسم صفحه،مشخص كردن بردارهاي كنج فرنه (T&N&B)،تعريف توابع عددي دو متغيره،ترسيم توابع عددي دو متغيره،ترسيم توابع دو متغيره با مختصات قطبي،رسم منحنيهاي تراز،تكنيك رسم سريع توابع عددي دو متغيره،بردار گراديان و منحني تراز، رسم سطوح تراز توابع سه متغيره، رسم ميدان برداري گراديان، ترسيم پارامتري سطوح، محاسبه انتگرال دوگانه بر روي ناحيه مستطيلي، انتگرالگيري نمادين، محاسبه انتگرال دوگانه بر روي ناحيه غير مستطيلي و ...


جناب بعضي از تابعهايي كه در متن آورديد، تابعهاي شركت MathWorks نيستند، بنابراين در خود نرم‏افزار نيستند؛ احتمالاً مال مرجعي هستند، كه برداشتيد. مثل plane ،arrow3 ،arrow و frenet​
 

Mohamad-Sarfaraz

عضو جدید
آموزش تصويري حل شبكه جريان در سدهاي خاكي با Matlab

آموزش تصويري حل شبكه جريان در سدهاي خاكي با Matlab

آموزش تصويري حل شبكه جريان در سدهاي خاكي با Matlab
فايل taravosh.html را با IE7.0 بازكنيد.
"محمد سرفراز"
لينك دانلود:
http://rapidshare.com/files/143532762/taravosh.zip.html
 

n a v

عضو جدید
ببخشید.تو این فایل ریاضی عمومی از دستورات arrow,arrow3,plane,استفاده شده که در متلب تعریف نشده.شاید اشکال ازنسخه ایه که من دارم.(r2008a):que:
 

farshid_civil66

عضو جدید
کسی در مورد الگوریتم ژنتیک در متلب ومخصوصا جعبه ابزار( genetic algorithm tool
کتابی سراغ نداره
 

alikaraji

عضو جدید
Introduction to MATLAB 7 for Engineers
By William J Palm III, William Palm
http://rapidshare.com/files/144338750/Introduction_To_Matlab_7_For_Engineers_pdf_0072922427.rar (42.8MB)
----------------------------------------------------------------------------------
http://rapidshare.com/files/104347920/MR2008a.part01.rar
http://rapidshare.com/files/104365264/MR2008a.part02.rar
http://rapidshare.com/files/104394172/MR2008a.part03.rar
http://rapidshare.com/files/104259216/MR2008a.part04.rar
http://rapidshare.com/files/104262088/MR2008a.part05.rar
http://rapidshare.com/files/104264805/MR2008a.part06.rar
http://rapidshare.com/files/104267688/MR2008a.part07.rar
http://rapidshare.com/files/104397719/MR2008a.part08.rar
http://rapidshare.com/files/104401026/MR2008a.part09.rar
http://rapidshare.com/files/104336858/MR2008a.part10.rar
http://rapidshare.com/files/104340521/MR2008a.part11.rar
http://rapidshare.com/files/104344076/MR2008a.part12.rar
http://rapidshare.com/files/104276959/MR2008a.part13.rar
http://rapidshare.com/files/104279946/MR2008a.part14.rar
http://rapidshare.com/files/104282879/MR2008a.part15.rar
http://rapidshare.com/files/104285879/MR2008a.part16.rar
http://rapidshare.com/files/104288783/MR2008a.part17.rar
http://rapidshare.com/files/104292428/MR2008a.part18.rar
http://rapidshare.com/files/104296037/MR2008a.part19.rar
http://rapidshare.com/files/104299297/MR2008a.part20.rar
http://rapidshare.com/files/104302547/MR2008a.part21.rar
http://rapidshare.com/files/104305732/MR2008a.part22.rar
http://rapidshare.com/files/104309079/MR2008a.part23.rar
http://rapidshare.com/files/104312527/MR2008a.part24.rar
http://rapidshare.com/files/104316541/MR2008a.part25.rar
http://rapidshare.com/files/104320079/MR2008a.part26.rar
http://rapidshare.com/files/104324462/MR2008a.part27.rar
http://rapidshare.com/files/104328168/MR2008a.part28.rar
http://rapidshare.com/files/104404102/MR2008a.part29.rar
http://rapidshare.com/files/104406903/MR2008a.part30.rar
http://rapidshare.com/files/104409618/MR2008a.part31.rar
http://rapidshare.com/files/104412303/MR2008a.part32.rar
http://rapidshare.com/files/104415226/MR2008a.part33.rar
http://rapidshare.com/files/104418112/MR2008a.part34.rar
http://rapidshare.com/files/104369360/MR2008a.part35.rar
http://rapidshare.com/files/104373474/MR2008a.part36.rar
http://rapidshare.com/files/104377742/MR2008a.part37.rar
http://rapidshare.com/files/104381221/MR2008a.part38.rar
http://rapidshare.com/files/104385008/MR2008a.part39.rar
http://rapidshare.com/files/104388728/MR2008a.part40.rar
http://rapidshare.com/files/104390216/MR2008a.part41.rar
crack :
http://rapidshare.com/files/104466951/medicina.rar
Or here:
Full list
http://rapidshare.com/users/LTDGMP


============================download compeleted=============================
*****matlab primer 6ed
*****http://mihd.net/hm0wu7
*****matlab_primer_-_sigmon___davis__crc_press_2002_.pd ... (763.59 KB)
----------------------------------------------------------------------------------
*****Graphics and GUIs with MATLAB, Third Edition
*****http://mihd.net/s9n4wa
*****graphics.and.guis.with.matlab.3rd.ed.rar (953.91 KB)
----------------------------------------------------------------------------------
*****process control
*****http://mihd.net/d4va8m
*****chemical_process_control_a_first_course_with_matla ... (1.24 MB)
----------------------------------------------------------------------------------
*****Solving ODEs With Matlab
*****http://mihd.net/hwqj5p
*****cambridge_-_solving_odes_with_matlab.pdf (1.32 MB)
----------------------------------------------------------------------------------
*****mechanics of composite materials with matlab
*****http://mihd.net/504zem
*****mechanics_of_composite_materials_with_matlab_isbn3 ... (1.4 MB)
----------------------------------------------------------------------------------
*****computational colour science using matlab
*****http://mihd.net/sr016x
*****passward:
ebooksclub.org
*****0470845627.pdf (1.6 MB)
----------------------------------------------------------------------------------
*****electronics and circuit analysis using matlab
*****http://mihd.net/2gzqfa
*****electronics.and.circuit.analysis.using.matlab.rar (1.68 MB)
----------------------------------------------------------------------------------
*****ordinary and partial differential equation routins in c,c++,fortran,maple and matlab
*****http://mihd.net/51yvz8
*****ordinary_and_partial_differential_equation_routine ... (1.78 MB)
----------------------------------------------------------------------------------
*****matlab programming
*****http://mihd.net/jhy3m9
*****ebookengineering_-_matlab_programming.pdf (2.32 MB)
----------------------------------------------------------------------------------
*****spectral methods in matlab
*****http://mihd.net/rp1ubv
*****trefethen.pdf (3.15 MB)
----------------------------------------------------------------------------------
*****Business, Economics and Finance with MATLAB, GIS and Simulation
*****http://mihd.net/n3v6ws
*****1584883480.rar (3.39 MB)
----------------------------------------------------------------------------------
*****introduction to simulink with engineering applications
*****fresh links
http://mihd.net/1yd9ql
or
http://mihd.net/vj3hrg
*****simulink1.with.engineering.applications-0974423971 ... (3.92 MB)
[FONT=Times New Roman (Arabic)]----------------------------------------------------------------------------------
[/FONT]*****computational statistics handbook with matlab
*****http://mihd.net/n4a32j
Password: www.AvaxHome.ru
*****1584882298.rar (4.13 MB)
----------------------------------------------------------------------------------
*****robust control design with matlab
*****http://mihd.net/09r8ik
*****robust_control_design_with_matlab.pdf (5.76 MB)
----------------------------------------------------------------------------------
*****radar systems analysis and design using Matlab
*****http://mihd.net/0i3594
*****chapman_-_radar_systems_analysis_and_design_using_ ... (6.06 MB)
----------------------------------------------------------------------------------
*****A Guide to MATLAB: For Beginners and Experienced Users
*****http://mihd.net/9hl1wc
*****aguidetomatlabforbeginnersandexperiencedusers.pdf (7.47 MB)
----------------------------------------------------------------------------------
*****Advanced Mathematics and Mechanics Applications Using matlab
*****http://mihd.net/vpcwsf
*****crc_press_-_advanced_mathematics_and_mechanics_app ... (7.53 MB)
----------------------------------------------------------------------------------
*****vibration analysis using matlab and ansys
*****http://mihd.net/i9vgd5
*****VibrationSimulationUsingMatlabAndAnsys.rar (7.54 MB)
----------------------------------------------------------------------------------
*****Numerical Methods in Engineering with MATLAB® (Hardcover
*****http://mihd.net/nvfwy6
*****cambridge.university.press.numerical.methods.in.en ... (7.74 MB)
----------------------------------------------------------------------------------
*****signal and system with matlab
*****http://mihd.net/0j81k6
*****signal_and_system_with_matlab.pdf (10.12 MB)
----------------------------------------------------------------------------------
*****MATLAB Simulations for Radar Systems Design
*****http://mihd.net/ncyjfm
*****matlab_simulations_for_radar_systems_design.rar (12.61 MB)
----------------------------------------------------------------------------------
*****Engineering and Scientific Computations Using MATLAB
*****Sergey E. Lyshevski
*****http://www.mediafire.com/download.php?iysglnrzyiq (14.34 MB)
----------------------------------------------------------------------------------
*****antenna and em modeling with matlab
*****http://mihd.net/ba0mfq
*****antenna.and.em.modeling.with.matlab-0471218766.zip (16.01 MB)
----------------------------------------------------------------------------------
*****Numerical Methods using matlab
*****http://mihd.net/i368jp
*****prentice_hall_-_numerical_methods_using_matlab_3rd ... (18.87 MB)
----------------------------------------------------------------------------------
*****matlab guide
*****http://mihd.net/3nxoij
*****mg-e-0898715784.rar (21.22 MB)
----------------------------------------------------------------------------------
*****Exploratory Data Analysis with MATLAB
*****http://mihd.net/49xk76
*****edawm.zip (24.59 MB)
----------------------------------------------------------------------------------
*****Digital Signal Processing: A Computer-Based Approach
*****http://mihd.net/9p2vhj
*****mcgraw_hill_-_digital_signal_processing_-_computer ... (32.63 MB)
----------------------------------------------------------------------------------
*****digital image processing using matlab
*****Author: Rafael Gonzalez ,Richard Woods ,Steven Eddins
*******http://mihd.net/v1n5mk
http://rapidshare.com/files/21421950/DigitalImageProcessingUsingMatlab_muya.rar
*****digitalimageprocessingusingmatlab_muya.rar (36.66 MB)
----------------------------------------------------------------------------------
|********Digital Image Processing 2002 2Ed
*****by Rafael C. Gonzalez Richard E. Woods
*****http://mihd.net/snz1kq
*****digitalimageprocessing-gonzalez.pdf (59.54 MB)
----------------------------------------------------------------------------------
link hame filehash
http://www.mediafire.com/?sharekey=94d5596d3e43a135d5a101cf914073b4999319aa5acc6ecc
--------------------------------------------------------
 

alikaraji

عضو جدید
در مورد الگوریتم زنتیک چند تا کتاب تو نمایشگاه کتاب دیدم

اگه در مورد این موضوع تحقیق میکنی حتما به مقالات دکتر نریمان زاده و دکتر جمالی سر بزن

در ضمن ایشون یه نرم افزار فازی برای این امر تهیه کردن که الان توسط یه شرکت بین المللی

به قیمت بالایی داره به فروش میرسه
 

farshid_civil66

عضو جدید
در مورد الگوریتم زنتیک چند تا کتاب تو نمایشگاه کتاب دیدم

اگه در مورد این موضوع تحقیق میکنی حتما به مقالات دکتر نریمان زاده و دکتر جمالی سر بزن

در ضمن ایشون یه نرم افزار فازی برای این امر تهیه کردن که الان توسط یه شرکت بین المللی

به قیمت بالایی داره به فروش میرسه
منظورتون دکتر نادر نریمان زاده هستش که دانشگاه گیلان تدریس میکنن؟
 

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز

پیرجو

مدیر ارشد
مدیر کل سایت
مدیر ارشد
جناب بعضي از تابعهايي كه در متن آورديد، تابعهاي شركت MathWorks نيستند، بنابراين در خود نرم‏افزار نيستند؛ احتمالاً مال مرجعي هستند، كه برداشتيد. مثل plane ،arrow3 ،arrow و frenet​

% this mfile plots an arrow with tail at the point (x0, y0) and
% tip at the point (x0+a, y0+b). Writing P = [x0, y0] and
% V = [a,b], the the complete call is arrow(P,V, color). The third argument,
% color, is optional. If the call is simply arrow(P,V), the
% arrow will be blue. To get a red arrow, use arrow(P,V, 'r').
نقش سه تابع ذکر شده!
کد:
function y = arrow(P,V,color)

if nargin < 3
   color = 'b';
end
x0 = P(1); y0 = P(2);
a = V(1); b = V(2);

l = max(norm(V), eps);
u = [x0 x0+a]; v = [y0 y0+b];
hchek = ishold;

plot(u,v,color)
hold on
h = l - min(.2*l, .2) ; v = min(.2*l/sqrt(3), .2/sqrt(3) );

a1 = (a*h -b*v)/l;
b1 = (b*h +a*v)/l;

plot([x0+a1, x0+a], [y0+b1, y0+b], color)

a2 = (a*h +b*v)/l;
b2 = (b*h -a*v)/l;   

plot([x0+a2, x0+a], [y0+b2, y0+b], color)
if hchek == 0
hold off
end



کد:
%  this mfile plots an arrow in 3D with tail at the point (x0, y0, z0) and
%  tip at the point  (x0+a, y0+b, z0+c).  Writing P = [x0, y0, z0] and 
%  V = [a,b,c], the complete call is   arrow3(P,V, color).  The third argument,
%  color, is optional.  If the call is simply   arrow3(P,V), the
%  arrow will be blue.  To get a red arrow, use  arrow3(P,V, 'r').



function out = arrow3(P,V,color)

if nargin < 3
    color = 'b';
end

x0 =P(1); y0 = P(2); z0 = P(3);
a = V(1); b = V(2); c = V(3);
l = max(norm(V), eps);

x = [x0 x0+a];
y = [y0 y0+b];
z = [z0 z0+c];
hchek = ishold;
plot3(x,y,z,color)
hold on
h = l - min(.2*l, .2) ;
v = min(.2*l/sqrt(3), .2/sqrt(3) );

upper = [h, v*tan(pi/6), 0]';
lower = [h, -v*tan(pi/6), 0]';

r = sqrt(a^2 +b^2);

if r > 0
   col1 = [a b c]/l;
   col2 = [-b/r, a/r, 0];
   col3 = [-a*c/(l*r), -b*c/(l*r), r/l];
   Q = [col1; col2; col3]' ;

else
   if c > 0
       Q = [0 0 -1; 0 1 0; 1 0 0];
   else 
       Q = [0 0 1; 0 1 0; -1 0 0];
   end

end

p = Q*upper; q = Q*lower;

plot3([x0+p(1), x0+a], [y0+p(2), y0+b], [z0+p(3), z0+c], color)
plot3([x0+q(1), x0+a], [y0+q(2), y0+b], [z0+q(3), z0+c], color)

if hchek == 0
   hold off
end






کد:
%  This mfile graphs a piece of a plane in 3D space.  The complete 
%call is  
%                 plane(P,N,width, height)
%
%    Here P = [x0,y0,z0] is a point contained in the plane, and 
% N = [a,b,c] is the normal vector to the plane.  The third and
% fourth arguments are optional. If the call is  simply  plane(P,N),
% the piece of the plane is a square of side 2, centered at P.
% The call  plane(P,N,a,b)   produces a piece of the plane which is
% by 2b by 2b centered at P.  




function z = plane(P,N, width, height)
if nargin < 3
   width = 1; height= 1;
end
    x0 = P(1);
    y0 = P(2);
    z0 = P(3);
    N = N/norm(N);
    a = N(1); b = N(2); c = N(3);


    s = - width: .1*width : width;  t = -height: .1*height: height;

    [S,T] = meshgrid(s,t);
    hhchek = ishold;
    arrow3(P,N,'r')
    hold on
    arrow3(P-.3*N,.3*N,'r') 

    r = sqrt(a^2 +b^2);

    if r > 0
       v = [b/r, -a/r, 0];
       w = [-a*c/r, -b*c/r, r];

    else
       v = [1 0 0];
       w = [0 -1 0];
    end

    X =  x0 + v(1)*S +w(1)*T;
    Y =  y0 + v(2)*S +w(2)*T;
    Z =  z0 + v(3)*S +w(3)*T;

    low = min(min(Z));
    high = max(max(Z));



    surf(X,Y,Z);
    colormap(gray);
    caxis([low-6, high]);
    axis equal

    if hhchek == 0
       hold off
    end







function out = arrow3(P,V,color)

x0 =P(1); y0 = P(2); z0 = P(3);
a = V(1); b = V(2); c = V(3);
l = max(norm(V), eps);

x = [x0 x0+a]; y = [y0 y0+b]; z = [z0 z0+c];
hchek = ishold;
plot3(x,y,z,color)
hold on

h = l - min(.2*l, .2) ;
v = min(.2*l/sqrt(3), .2/sqrt(3) );

upper = [h, v*tan(pi/6), 0]';
lower = [h, -v*tan(pi/6), 0]';

r = sqrt(a^2 +b^2);
if r > 0
 
   col1 = [a b c]/l;
   col2 = [-b/r, a/r, 0];
   col3 = [-a*c/(l*r), -b*c/(l*r), r/l];

   Q = [col1; col2; col3]' ;

else
   if c > 0
       Q = [0 0 -1; 0 1 0; 1 0 0];
   else
       Q = [0 0 1; 0 1 0; -1 0 0];
   end
end

p = Q*upper; q = Q*lower;

plot3([x0+p(1), x0+a], [y0+p(2), y0+b], [z0+p(3), z0+c], color)
plot3([x0+q(1), x0+a], [y0+q(2), y0+b], [z0+q(3), z0+c], color)

if hchek == 0
   hold off
end
 

Similar threads

بالا