ترسیم ژئویید در Matlab

مطالعه این نوشته در 4 دقیقه

در نوشته های قبلی، منابع پایه و همچنین نحوه استفاده از سیستم های تصویر در نرم افزار Matlab معرفی شده است. در این نوشته قصد دارم ترسیم ژئویید در Matlab یا به عبارتی دیگر نحوه ی نمایش و فراخوانی شبکه یک درجه ای از ارتفاعات ژئوئید در نرم افزار Matlab را توضیح دهم. در ابتدا توضیحی درباره ژئوئید که از کتاب ژئودزی فیزیکی جناب آقای دکتر صفری برگرفته شده است را ارائه خواهم داد. سپس نحوه ترسیم ژئویید در Matlab را بیان می کنم.

ژئوئید چیست؟

میدان ثقل زمین را می توان از طریق سطوح هم پتانسیل محدب، صاف و پیوسته با پتانسیل ثابت بیان کرد. از میان این سطوح هم پتانسیل، یکی در ژئودزی و علوم زمین از اهمیت زیادی برخوردار است. در سال 1822 گاوس اولین ژئودزینی بود که این سطح را با یک بیان ریاضی و به عنوان سطحی که در هر نقطه بر امتداد بردار شتاب ثقل عمود است و سطح اقیانوس ها در حالت سکون، قسمتی از آن محسوب می شود، معرفی کرد.

ایده گاوس را در سال 1837، بسل گسترش داد. بسل این سطح هم پتانسیل را به عنوان مرجع تمام کارهای ژئودتیک معرفی کرد. در سال 1872، لیستینگ این سطح را ژئوئید نامید. سپس هلمرت، ایده سطوح هم پتانسیل را در سال 1884 سامان داده و تئوری کامل آن را وارد ژئودزی کرد.

ترسیم ژئویید در Matlab

ژئوئید یک سطح هم پتانسیلی است که به بهترین وجه منطبق بر سطح دریاهاست. ژئوئید به عنوان سطح متوسط دریاها در زیر قاره ها از اعماقی مساوی با ارتفاع توپوگرافی از سطح دریاها عبور می کند. شاید بهترین ژئوئید برای کل کره زمین همان EGM 96 باشد که بوسیله سازمان های NASA و NIMA تهیه شده است. EGM 96 یک مدل هارمونیک های کروی از ژئوئید از درجه و مرتبه 360 می باشد.

ترسیم ژئویید در Matlab

ترسیم ژئویید در Matlab

برای فراخوانی شبکه یک درجه ای از ارتفاعات ژئوئید در نرم افزار Matlab از کد زیر استفاده کنید:

 

نتیجه اجرای این کد شکل زیر می باشد:

ترسیم ژئویید در Matlab

آرش طایفه رستمی

دانشجوی کارشناسی ارشد مهندسی نقشه برداری-هیدروگرافی دانشگاه تهران، علاقه مند به تحقیق در ارتباط با سیستم های GNSS، برنامه نویسی در محیط MATLAB و Python

LinkedinTelegram

متوسط امتیاز / 5. تعداد رای

2 دیدگاه در “ترسیم ژئویید در Matlab”

  1. سلام چطور می‌شه IعدIد رو از headerو پایینش این فایل رو تو مطلب خوند با textscan? ممنون
    THE SATELLITE-ONLY GRAVITY FIELD MODEL ITG-Grace2010s
    =====================================================
    modelname ITG-Grace2010s
    product_type gravity_field
    earth_gravity_constant 3.986005000e+14
    radius 6.378137000e+06
    max_degree 180
    norm fully_normalized
    tide_system zero_tide
    errors formal

    key L M C S sigma C sigma S
    end_of_head ================================================================================
    gfc 0 0 1.000000000000e+00 0.000000000000e+00 0.000000000000e+00 0.000000000000e+00
    gfc 1 0 0.000000000000e+00 0.000000000000e+00 0.000000000000e+00 0.000000000000e+00
    gfc 1 1 0.000000000000e+00 0.000000000000e+00 0.000000000000e+00 0.000000000000e+00

    1. سلام وقت بخیر. برای این کار چندین راه وجود دارد. مثلا میتوانید با استفاده از دستور fread کل فایل را یکجا خوانده و بعد تبدیل به کاراکتر کنید و بعد به صورت خط به خط، اطلاعات مورد نظر خود را استخراج کرده و با استفاده از دستور str2num آن ها را به عدد تبدیل کنید و در ماتریس دلخواه بریزید.

      راه دوم اینکه فایل را با با دستور fopen لود کرده و با دستور fgetl خط به خط را بخوانید و با استفاده از دستور fscanf اطلاعات مد نظر خود را استخراج کنید و در ماتریس دلخواه قرار دهید.

      هر کدام از دستوراتی که نوشتم را در help نرم افزار Matlab سرچ کنید و نحوه استفاده از آن ها و دستورات مشابه با آن ها را مطالعه کنید.

      موفق باشید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *