انتشار اولتراسوند متمرکز با شدت بالا (HIFU) از طریق یک فانتوم بافتی
معرفی
سونوگرافی متمرکز با شدت بالا در بسیاری از کاربردهای مختلف زیست پزشکی، مانند فرسایش حرارتی تومورها، جراحی HIFU ترانس کرانیال، سنگ شکنی موج شوک و غیره استفاده می شود. سیگنال HIFU بر روی یک ناحیه کانونی کوچک متمرکز می شود، جایی که شدت آن به سطوح بالاتری می رسد. در این مورد، اثرات غیر خطی ممکن است قابل توجه باشند و از انتشار امواج صوتی با دامنه محدود صحبت شود. ماهیت غیر خطی این پدیده منجر به انتقال انرژی از هارمونیک های پایین تر به هارمونیک های بالاتر می شود. سهم هارمونیک های مرتبه بالاتر با فاصله انتشار افزایش می یابد.
این مثال نشان می دهد که چگونه می توان انتشار غیرخطی HIFU را از طریق یک رسانه اتلافی با استفاده از رابط فیزیک فشار غیر خطی، زمان صریح فیزیک مدل کرد. رابط ها سیستم معادلات صوتی غیرخطی را در قالب یک قانون بقای هذلولی حل می کنند، رجوع کنید به Ref. 1 ، با استفاده از روش المان محدود گالرکین ناپیوسته (dG-FEM) و یک طرح ادغام زمانی صریح. رویکرد مورد استفاده زمانی مناسب است که اثرات غیرخطی تجمعی، یعنی آنهایی که از طریق انتشار انباشته شدهاند، بر اثرات غیرخطی محلی تسلط داشته باشند.
در این مدل، سیگنال ساطع شده یک پالس انفجاری تون است که تنها بخش محدودی از حوزه محاسباتی را در مسیر خود اشغال می کند. پالایش مش تطبیقی برای مش بندی مجدد خودکار پس از انتشار سیگنال استفاده می شود. این تضمین می کند که مش به اندازه کافی خوب است تا هارمونیک های مرتبه بالاتر را در جایی که لازم است حل کند.
تعریف مدل
فوکوس سیگنال اولتراسونیک معمولاً با استفاده از یک تاخیر فاز یا یک لنز فوکوس در سمت مبدل به دست می آید. در این مدل از یک مبدل اولتراسوند متمرکز کروی با عدسی مقعر برای انتشار سیگنال استفاده می شود. محفظه مبدل و لنز سفت فرض می شوند. تنظیمات مدل در شکل 1 نشان داده شده است . هندسه مدل به صورت محوری متقارن است.
عدسی کروی با شعاع r و دیافراگم a سیگنالی را منتشر می کند که در نقطه کانونی F واقع در فانتوم بافت متمرکز شده است. سیگنال یک انفجار تون پنج سیکلی با دامنه P 0 = 0.1 MPa و فرکانس مرکزی f 0 = 1 مگاهرتز است که در شکل 2 نشان داده شده است . دامنه سیگنال در محل منبع به اندازه کافی برای تولید هارمونیک های مرتبه بالاتر است، اما به اندازه کافی برای ایجاد شوک بالا نیست، و بنابراین در این مدل به تکنیک های خاص ضربه گیری نیاز نیست.

شکل 1: هندسه مدل.
زمان سفر سیگنال به نقطه کانونی را می توان به صورت محاسبه کرد

که در آن c و d به ترتیب سرعت صوت و مسافت طی شده در مواد مربوطه هستند. در فرکانس 1 مگاهرتز، زمان فوکوس تقریباً برابر با 40 / f 0 است .

شکل 2: سیگنال منبع.
نتایج و بحث
تکامل سیگنالی که از منبع حرکت می کند در شکل 3 نشان داده شده است . پالس انفجاری تون منبع را در t = 10μs ترک کرده است و به سمت مرز بین آب و حوزه های فانتوم بافت حرکت می کند، که در t = 20 μs عبور می کند و بخشی از آن به منبع منعکس می شود. تمرکز سیگنال در t = 30 μ s قابل مشاهده است و در t = 40 μs به حداکثر می رسد . 

شکل 3: انتشار سیگنال اولتراسونیک در زمان های t = 10، 20، 30 و 40 μs .
شکل 3 همچنین نشان می دهد که با نزدیک شدن به ناحیه کانونی، قدرت سیگنال افزایش می یابد. این توسط نمودارهای سیگنال در رابط آب/بافت و در نقطه کانونی نشان داده شده در شکل 4 تایید می شود . دامنه فشار آکوستیک در نقطه کانونی حدود 10 برابر بیشتر از سطح مشترک آب / بافت است. مشاهدات دیگر این است که پیک های فشار مثبت تقریباً دو برابر بیشتر از فشارهای منفی در نقطه کانونی هستند. این نشان می دهد که سیگنال با رسیدن به منطقه کانونی بسیار غیرخطی می شود.

شکل 4: فشار صوتی در رابط آب/بافت و در نقطه کانونی.
شکل 5 محتوای فرکانس سیگنال های ضبط شده را نشان می دهد. محتوای فرکانس سیگنال ورودی به فانتوم بافت تفاوت زیادی با سیگنال منبع ندارد. یعنی انتشار تا این نقطه خطی است. سیگنال در نقطه کانونی بسیار غیرخطی است که از تعداد هارمونیک های مرتبه بالاتر تولید شده مشاهده می شود.
نمودارهای حداقل و حداکثر فشار روی محور محاسبه شده در شکل 6 نشان داده شده است . مقادیر بر اساس فرمول های زیر محاسبه می شوند
(1)

و با توجه به حداکثر فشار در نقطه کانونی نرمال می شوند. شکل 6 نشان می دهد که p + تقریبا دو برابر p – است ، که یک ویژگی متمایز انتشار غیرخطی سیگنال HIFU است. مرزهای ناحیه کانونی نیز در شکل 6 دیده می شود .

شکل 5: طیف فرکانس فشار صوتی در سطح مشترک آب/بافت و در نقطه کانونی.

شکل 6: طیف فرکانس فشار صوتی در سطح مشترک آب/بافت و در نقطه کانونی.
نکاتی درباره پیاده سازی COMSOL
حل کننده مش و زمان صریح
در حین حل یک مشکل انتشار موج، مش استفاده شده معمولاً باید به اندازه کافی خوب باشد تا محتوای فرکانس سیگنال، یعنی تعداد مشخص شده هارمونیک های مرتبه بالاتر، N، همانطور که در آموزش انتشار غیرخطی یک استوانه بحث شده است، به اندازه کافی خوب باشد . موج – مدل تأیید . با این حال، یک ویژگی متمایز مدل این است که سیگنال منبع یک پالس است و بنابراین سیگنال منتشر شده در فضا محدود است. این نشان می دهد که یک مش ریز فقط در قسمت محدودی از حوزه محاسباتی که سیگنال در یک زمان معین قرار دارد مورد نیاز است، بنابراین مقدار زیادی DOF ذخیره می شود. این امر با فعال کردن گزینه اصلاح مش تطبیقی که در Adaptation یافت می شود قابل دستیابی است.بخش مرحله مطالعه وابسته به زمان.
مش اولیه ساخته شده در مدل هارمونیک اساسی را حل می کند. با ترتیب گسسته سازی کوارتیک پیش فرض، اندازه عنصر مش نباید از 1.5 طول موج اصلی تجاوز کند. پالایش مش تطبیقی تضمین می کند که یک مش ریزتر برای حل سیگنال انتشار ایجاد می شود. در گره Adaptive Mesh Refinement ، General modification را برای متد Adaptation انتخاب کنید و تیک Allow coarsening را پاک کنید. بنابراین مش حاصل همیشه هارمونیک اساسی را حل می کند. سپس نشانگر خطا را با تایپ sqrt(comp1.pr^2+comp1.pz^2) شیب شدید فشار آکوستیک را ثبت کنید .
فیزیک آکوستیک فشار غیرخطی، فیزیک صریح زمان بر اساس dG-FEM است و از طرحهای ادغام زمانی صریح استفاده میکند. مرحله زمانی حل کننده از شرایط CFL پیروی می کند تا از پایداری روش یکپارچه سازی زمانی اطمینان حاصل شود. یعنی Δ t ≤ h min / c max ( p ) , که h min حداقل اندازه عنصر مش و c max ( p ) است.حداکثر سرعت انتشار موج است. در حالت غیر خطی سرعت صوت به فشار آکوستیک بستگی دارد. در این مدل، مش از انتشار غیرخطی سیگنال تبعیت می کند و بنابراین دارای عناصر کوچکتر در اطراف جبهه های تیز و عناصر بزرگتر از آن است. ارزش انتخاب روش گام به گام به Adam-Bashforth 3 (محلی) و فعال کردن گزینه Update time levels موجود در بخش عمومی از حل کننده زمان صریح را دارد. شکل 7 مقادیر مقیاس زمانی موج سلولی elte.wtc را نشان می دهدمتغیر، که گام زمانی متناسب با آن است. مقادیر کوچکتر برای عناصر شبکه کوچکتر در مجاورت سیگنال یافت می شود، در حالی که مقادیر بزرگتر در بقیه حوزه محاسباتی استفاده می شود.

شکل 7: مقیاس زمانی موج سلولی در زمان های t = 10، 20، 30 و 40 μs .
منابع
1. MA Diaz، MA Solovchuk، و TWH Sheu، “یک طرح عددی محافظه کار برای مدل سازی انتشار آکوستیک غیرخطی در محیط های همگن ترموویسکوز”، J. Comp. فیزیک ، جلد 363، 2018.
مسیر کتابخانه برنامه: Acoustics_Module/Ultrasound/hifu_tissue_sample
دستورالعمل مدلسازی
از منوی File ، New را انتخاب کنید .
جدید
در پنجره جدید ، روی
Model Wizard کلیک کنید .

مدل جادوگر
1 | در پنجره Model Wizard ، روی ![]() |
2 | در درخت Select Physics ، Acoustics>Ultrasound>Nonlinear Pressure Acoustics، Time Explicit (nate) را انتخاب کنید . |
3 | روی افزودن کلیک کنید . |
4 | ![]() |
5 | در درخت انتخاب مطالعه ، General Studies>Time Dependent را انتخاب کنید . |
6 | ![]() |
تعاریف جهانی
پارامترهای 1
1 | در پنجره Model Builder ، در قسمت Global Definitions روی Parameters 1 کلیک کنید . |
2 | در پنجره تنظیمات برای پارامترها ، بخش پارامترها را پیدا کنید . |
3 | ![]() |
4 | به پوشه Application Libraries مدل بروید و روی فایل hifu_tissue_sample_parameters.txt دوبار کلیک کنید . |
مستطیل 1 (راست1)
1 | در نوار ابزار Home ، روی ![]() |
2 | در پنجره تنظیمات برای Rectangle ، بخش Parameters را پیدا کنید . |
3 | در قسمت متنی Lower limit 0 تایپ کنید . |
4 | در قسمت متنی حد بالا ، 5*T0 را تایپ کنید . |
5 | برای گسترش بخش Smoothing کلیک کنید . تیک Size of Transition zone را پاک کنید . |
یک سیگنال منبع انفجاری پنج چرخه ایجاد کنید و محتوای فرکانس آن را بررسی کنید.
نبض
1 | در نوار ابزار Home ، روی ![]() |
2 | در پنجره تنظیمات برای تحلیل ، پالس را در قسمت نوشتار برچسب تایپ کنید . |
3 | در قسمت متن نام تابع ، pulse را تایپ کنید . |
4 | قسمت Definition را پیدا کنید . در قسمت متن Expression ، sin(omega0*t)*(1 – cos(omega0*t/5))*rect1(t) را تایپ کنید . |
5 | در قسمت متن Arguments ، t را تایپ کنید . |
6 | قسمت Units را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
بحث و جدل | واحد |
تی | س |
7 | در قسمت Function text، 1 را تایپ کنید . |
8 | قسمت Plot Parameters را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
بحث و جدل | حد پایین | حد بالا | واحد |
تی | 0 | 9 * T0 | س |
9 | ![]() |
نتایج
نبض انفجاری تون

1 | در پنجره تنظیمات برای گروه طرح 1 بعدی ، در قسمت متن برچسب ، Tone Burst Pulse را تایپ کنید . |
تابع 1
1 | در پنجره Model Builder ، گره Tone Burst Pulse را گسترش دهید ، سپس روی تابع 1 کلیک کنید . |
2 | در پنجره تنظیمات برای تابع ، بخش خروجی را پیدا کنید . |
3 | از لیست نمایش ، تبدیل فوریه گسسته را انتخاب کنید . |
4 | از فهرست نمایش ، طیف فرکانس را انتخاب کنید . |
5 | از فهرست Scale ، Multiply by sampling period را انتخاب کنید . |
6 | کادر بررسی محدوده فرکانس را انتخاب کنید . |
7 | در قسمت Maximum text 3*f0 را تایپ کنید . |
8 | در نوار ابزار Tone Burst Pulse ، روی ![]() |
نمودار نشان می دهد که محتوای فرکانس سیگنال نزدیک به فرکانس مرکزی f 0 است .

هندسه 1
1 | در پنجره Model Builder ، در قسمت Component 1 (comp1) روی Geometry 1 کلیک کنید . |
2 | در پنجره تنظیمات هندسه ، بخش Units را پیدا کنید . |
3 | از لیست واحد طول ، میلی متر را انتخاب کنید . |
دایره 1 (c1)
1 | در نوار ابزار Geometry ، روی ![]() |
2 | در پنجره تنظیمات دایره ، بخش اندازه و شکل را پیدا کنید . |
3 | در قسمت متن Radius ، r_source را تایپ کنید . |
4 | قسمت Position را پیدا کنید . در قسمت متن z ، r_source را تایپ کنید . |
5 | ![]() |
مستطیل 1 (r1)
1 | در نوار ابزار Geometry ، روی ![]() |
2 | در پنجره تنظیمات برای Rectangle ، بخش Size and Shape را پیدا کنید . |
3 | در قسمت متن Width ، w_source را تایپ کنید . |
4 | در قسمت متن ارتفاع ، r_source-sqrt(r_source^2-w_source^2) را تایپ کنید . |
5 | ![]() |
تقاطع 1 (int1)
1 | در نوار ابزار Geometry ، روی ![]() |
2 | در پنجره Graphics کلیک کنید و سپس Ctrl+A را فشار دهید تا هر دو شی انتخاب شوند. |
3 | در پنجره تنظیمات برای تقاطع ، روی ![]() |
مستطیل 2 (r2)
1 | در نوار ابزار Geometry ، روی ![]() |
2 | در پنجره تنظیمات برای Rectangle ، بخش Size and Shape را پیدا کنید . |
3 | در قسمت متن Width ، r_model+th_abs را تایپ کنید . |
4 | در قسمت متن ارتفاع ، h_model+th_abs-z_tissue را تایپ کنید . |
5 | قسمت Position را پیدا کنید . در قسمت متن z ، z_tissue را تایپ کنید . |
6 | برای گسترش بخش لایه ها کلیک کنید . در جدول تنظیمات زیر را وارد کنید: |
نام لایه | ضخامت (میلی متر) |
لایه 1 | th_abs |
7 | تیک Layers را در سمت راست انتخاب کنید . |
8 | تیک Layers on bottom را پاک کنید . |
9 | تیک Layers on top را انتخاب کنید . |
10 | ![]() |
11 | ![]() |
مستطیل 3 (r3)
1 | در نوار ابزار Geometry ، روی ![]() |
2 | در پنجره تنظیمات برای Rectangle ، بخش Size and Shape را پیدا کنید . |
3 | در قسمت متن Width ، r_model+th_abs را تایپ کنید . |
4 | در قسمت متن ارتفاع ، z_tissue-(r_source-sqrt(r_source^2-w_source^2)) را تایپ کنید . |
5 | قسمت Position را پیدا کنید . در قسمت متن z ، r_source-sqrt(r_source^2-w_source^2) را تایپ کنید . |
6 | قسمت لایه ها را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
نام لایه | ضخامت (میلی متر) |
لایه 1 | th_abs |
7 | تیک Layers را در سمت راست انتخاب کنید . |
8 | تیک Layers on bottom را پاک کنید . |
9 | ![]() |
نادیده گرفتن لبههای 1 (ige1)
1 | در نوار ابزار Geometry ، روی ![]() |
2 | در باله شی ، فقط مرز 3 را انتخاب کنید. |
3 | در نوار ابزار Geometry ، روی ![]() |
دو نقطه کاوشگر دامنه روی محور تقارن ایجاد کنید – یکی در رابط آب/بافت و دیگری در نقطه کانونی – که سیگنال را در حین انتشار از منبع ضبط می کند.
تعاریف
Domain Point Probe 1
1 | در نوار ابزار تعاریف ، روی ![]() |
2 | در پنجره تنظیمات برای Domain Point Probe ، قسمت Point Selection را پیدا کنید . |
3 | در ردیف مختصات ، z را روی z_tissue قرار دهید . |
عبارت Point Probe 1 (ppb1)
1 | در پنجره Model Builder ، گره Domain Point Probe 1 را گسترش دهید ، سپس روی Point Probe Expression 1 (ppb1) کلیک کنید . |
2 | در پنجره تنظیمات برای Point Probe Expression ، بخش Expression را پیدا کنید . |
3 | در قسمت متن Expression ، nate.p_t/P0 را تایپ کنید . |
Domain Point Probe 2
1 | در نوار ابزار تعاریف ، روی ![]() |
2 | در پنجره Model Builder ، روی Domain Point Probe 2 کلیک کنید . |
3 | در پنجره تنظیمات برای Domain Point Probe ، قسمت Point Selection را پیدا کنید . |
4 | در ردیف مختصات ، z را روی F قرار دهید . |
عبارت Point Probe 2 (ppb2)
1 | در پنجره Model Builder ، روی Point Probe Expression 2 (ppb2) کلیک کنید . |
2 | در پنجره تنظیمات برای Point Probe Expression ، بخش Expression را پیدا کنید . |
3 | در قسمت متن Expression ، nate.p_t/P0 را تایپ کنید . |
اکنون لایه های جذب کننده (لایه های اسفنجی) مورد استفاده برای کوتاه کردن دامنه محاسباتی را تنظیم کنید.
لایه جذبی 1 (ab1)
1 | در نوار ابزار تعاریف ، روی ![]() |
2 | فقط دامنه های 3-6 را انتخاب کنید. |
3 | در پنجره Settings for Absorbing Layer ، قسمت Geometry را پیدا کنید . |
4 | از لیست نوع ، استوانه ای را انتخاب کنید . |
آکوستیک فشار غیرخطی، زمان صریح (NATE)
آکوستیک فشار غیرخطی، مدل صریح زمان 1
1 | در پنجره Model Builder ، در قسمت Component 1 (comp1)>Nonlinear Pressure Acoustics، Time Explicit (nate) روی Nonlinear Pressure Acoustics، Time Explicit Model 1 کلیک کنید . |
2 | در پنجره تنظیمات برای آکوستیک فشار غیر خطی ، مدل صریح زمان ، بخش مدل آکوستیک فشار را پیدا کنید . |
3 | از لیست مدل مایع ، اتلاف عمومی را انتخاب کنید . |
شرط مرزی ناپیوستگی مواد را بر رابط بین آب و بخشهای بافت حوزه محاسباتی اعمال کنید .
ناپیوستگی مواد 1
1 | در نوار ابزار Physics ، روی ![]() |
2 | فقط مرزهای 3 و 11 را انتخاب کنید. |
فشار 1
1 | در نوار ابزار Physics ، روی ![]() |
2 | فقط مرز 18 را انتخاب کنید. |
3 | در پنجره تنظیمات فشار ، قسمت فشار را بیابید . |
4 | در فیلد متنی p 0 ( t ) ، P0*pulse(t) را تایپ کنید . |
امپدانس 1
1 | در نوار ابزار فیزیک ، روی ![]() |
2 | فقط مرزهای 6 و 14-17 را انتخاب کنید. |
همچنین محاسبه حداقل و حداکثر فشار صوتی روی محور تقارن در بازه زمانی شبیهسازی شده بسیار جالب است.
آکوستیک فشار غیرخطی، مدل صریح زمان 1
در پنجره Model Builder ، روی Nonlinear Pressure Acoustics, Time Explicit Model 1 کلیک کنید .
محاسبه حداقل و حداکثر فشار 1
1 | در نوار ابزار Physics ، روی ![]() |
2 | فقط مرز 2 را انتخاب کنید. |
مواد را تنظیم کنید. رابط فیزیک و مدل سیال انتخاب شده نشان می دهد که کدام خواص مواد باید تعریف شوند.
مواد
اب
1 | در پنجره Model Builder ، در قسمت Component 1 (comp1) روی Materials راست کلیک کرده و Blank Material را انتخاب کنید . |
2 | در پنجره تنظیمات برای مواد ، آب را در قسمت متن برچسب تایپ کنید . |
3 | فقط دامنه های 1 و 4 را انتخاب کنید. |
4 | قسمت محتوای مواد را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
ویژگی | متغیر | ارزش | واحد | گروه اموال |
تراکم | rho | rho_water | کیلوگرم بر متر مکعب | پایه ای |
سرعت صوت | ج | ج_آب | اماس | پایه ای |
انتشار صدا | delta_diff | دلتا_آب | متر مربع در ثانیه | مدل تضعیف و اتلاف |
پارامتر غیر خطی بودن | BA | BA_آب | 1 | مدل غیر خطی |
بافت
1 | روی Materials کلیک راست کرده و Blank Material را انتخاب کنید . |
2 | در پنجره تنظیمات مواد ، Tissue را در قسمت نوشتار Label تایپ کنید . |
3 | فقط دامنه های 2، 3، 5 و 6 را انتخاب کنید. |
4 | قسمت محتوای مواد را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
ویژگی | متغیر | ارزش | واحد | گروه اموال |
تراکم | rho | rho_بافت | کیلوگرم بر متر مکعب | پایه ای |
سرعت صوت | ج | c_بافت | اماس | پایه ای |
انتشار صدا | delta_diff | دلتا_بافت | متر مربع در ثانیه | مدل تضعیف و اتلاف |
پارامتر غیر خطی بودن | BA | BA_بافت | 1 | مدل غیر خطی |
حالا به سمت مش بروید. حتی اگر مشکل در دست غیر خطی است، مش را فقط هارمونیک اساسی حل کنید. برای انجام این کار، حداکثر اندازه عنصر را با 1.5 طول موج در مواد مربوطه محدود کنید.
مش 1
مثلثی رایگان 1
در نوار ابزار Mesh ، روی
Free Triangular کلیک کنید .

سایز 1
1 | روی Free Triangular 1 کلیک راست کرده و Size را انتخاب کنید . |
2 | در پنجره تنظیمات برای اندازه ، قسمت انتخاب موجودیت هندسی را پیدا کنید . |
3 | از لیست سطح نهاد هندسی ، دامنه را انتخاب کنید . |
4 | فقط دامنه های 1 و 4 را انتخاب کنید. |
5 | بخش اندازه عنصر را پیدا کنید . روی دکمه Custom کلیک کنید . |
6 | قسمت پارامترهای اندازه عنصر را پیدا کنید . |
7 | کادر انتخاب حداکثر اندازه عنصر را انتخاب کنید . در قسمت متن مرتبط، c_water/f0/1.5 را تایپ کنید . |
سایز ۲
1 | در پنجره Model Builder ، روی Free Triangular 1 کلیک راست کرده و Size را انتخاب کنید . |
2 | در پنجره تنظیمات برای اندازه ، قسمت انتخاب موجودیت هندسی را پیدا کنید . |
3 | از لیست سطح نهاد هندسی ، دامنه را انتخاب کنید . |
4 | فقط دامنه های 2، 3، 5 و 6 را انتخاب کنید. |
5 | بخش اندازه عنصر را پیدا کنید . روی دکمه Custom کلیک کنید . |
6 | قسمت پارامترهای اندازه عنصر را پیدا کنید . |
7 | کادر انتخاب حداکثر اندازه عنصر را انتخاب کنید . در قسمت متن مرتبط، c_tissue/f0/1.5 را تایپ کنید . |
8 | ![]() |
مطالعه 1
مرحله 1: وابسته به زمان
1 | در پنجره Model Builder ، در بخش مطالعه 1 ، روی Step 1: Time Dependent کلیک کنید . |
2 | در پنجره تنظیمات مربوط به زمان وابسته ، قسمت تنظیمات مطالعه را پیدا کنید . |
3 | در قسمت متن زمان خروجی ، محدوده (0، T0، 55*T0) را تایپ کنید . |
این تنظیم راه حل را در مواقعی چند برابر T 0 در کل حوزه محاسباتی ذخیره می کند. این فقط بر راه حل ذخیره شده (و بنابراین اندازه فایل) تأثیر می گذارد. مراحل زمانی داخلی انجام شده توسط حل کننده به طور خودکار توسط COMSOL کنترل می شود تا شرایط CFL مناسب را برآورده کند.
از سوی دیگر، سیگنالهای موجود در پروبها برای هر مرحله زمانی که حلکننده برداشته میشود، محاسبه میشود، بنابراین وضوح زمانی بسیار بالاتری از نتایج ارائه میشود.
4 | برای گسترش بخش Adaption کلیک کنید . از لیست Adaptive mesh refinement ، Adaptive mesh refinement را انتخاب کنید . |
5 | زیربخش کنترل عنصر Mesh را پیدا کنید . از لیست روش انطباق ، اصلاح عمومی را انتخاب کنید . |
این تنظیم با ایجاد مش های میانی، انطباق مش را با توجه به سیگنال انتشار می دهد. این موارد در بخش هایی از حوزه محاسباتی که در آن هارمونیک های مرتبه بالاتر تولید شده به دلیل ماهیت غیرخطی مسئله مورد نیاز است، به اندازه کافی خوب هستند.
راه حل 1 (sol1)
1 | در نوار ابزار مطالعه ، روی ![]() |
2 | در پنجره Model Builder ، گره Solution 1 (sol1) را گسترش دهید ، سپس روی Time-Dependent Solver 1 کلیک کنید . |
3 | در پنجره تنظیمات برای حل وابسته به زمان ، برای گسترش بخش Time Steping کلیک کنید . |
4 | از لیست روش ، Adams – Bashforth 3 (محلی) را انتخاب کنید . |
5 | از لیست بهروزرسانی سطوح زمانی ، Factor را انتخاب کنید . |
روش مرحلهبندی زمانی Adams-Bashforth 3 (محلی) از مراحل زمانی محلی استفاده میکند که مطابق با اندازه عناصر مش انتخاب شدهاند.
6 | در پنجره Model Builder ، گره Study 1>Solver Configurations>Solution 1 (sol1)>Time-Dependent Solver 1 را گسترش دهید ، سپس روی Adaptive Mesh Refinement کلیک کنید . |
7 | در پنجره تنظیمات برای اصلاح مش تطبیقی ، بخش عمومی را پیدا کنید . |
8 | تیک Allow coarsening را پاک کنید . |
این تنظیم مطمئن می شود که مش های میانی همچنان به اندازه کافی خوب هستند تا هارمونیک اصلی را حل کنند.
9 | قسمت Error Estimation را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
بیان خطا | فعال |
sqrt(comp1.pr^2+comp1.pz^2) | √ |
این باعث می شود که نشانگر خطا، شیب شدید فشار صوتی را ردیابی کند.
10 | در نوار ابزار مطالعه ، ![]() |
نتایج
فشار آکوستیک (نیت)
تمام طرح ها در بخش های قبلی مستندات به تصویر کشیده شده است.

پروب های فشار نسبی
1 | در پنجره Model Builder ، گره Results>Probe Plot Group 4 را گسترش دهید ، سپس روی Probe Plot Group 4 کلیک کنید . |
2 | در پنجره تنظیمات برای گروه طرح 1 بعدی ، Probes فشار نسبی را در قسمت متن برچسب تایپ کنید . |
3 | برای گسترش بخش عنوان کلیک کنید . از لیست نوع عنوان ، Label را انتخاب کنید . |
4 | قسمت Legend را پیدا کنید . از لیست موقعیت ، سمت چپ بالا را انتخاب کنید . |
نمودار جدول پروب 1
1 | در پنجره Model Builder ، روی Probe Table Graph 1 کلیک کنید . |
2 | در نوار ابزار Relative Pressure Probes ، روی ![]() ![]() |
پروب های فشار نسبی، طیف فرکانس
1 | در پنجره Model Builder ، روی Relative Pressure Probes کلیک راست کرده و Duplicate را انتخاب کنید . |
2 | در پنجره Model Builder ، روی Probes Pressure Relative 1 کلیک کنید . |
3 | در پنجره تنظیمات برای گروه طرح 1 بعدی ، کاوشگر فشار نسبی، طیف فرکانس را در قسمت نوشتار برچسب تایپ کنید. |
4 | قسمت Legend را پیدا کنید . از لیست موقعیت ، سمت راست بالا را انتخاب کنید . |
نمودار جدول پروب 1
1 | در پنجره Model Builder ، روی Probe Table Graph 1 کلیک کنید . |
2 | در پنجره تنظیمات برای نمودار جدول ، بخش داده را پیدا کنید . |
3 | از لیست Transformation ، تبدیل فوریه گسسته را انتخاب کنید . |
4 | از فهرست نمایش ، طیف فرکانس را انتخاب کنید . |
5 | از فهرست Scale ، Multiply by sampling period را انتخاب کنید . |
6 | کادر بررسی محدوده فرکانس را انتخاب کنید . |
7 | در قسمت Maximum text 5*f0 را تایپ کنید . |
8 | در نوار ابزار کاوشگر فشار نسبی، طیف فرکانس ، روی ![]() ![]() |
فشار نسبی روی محور
1 | در نوار ابزار صفحه اصلی ، روی ![]() |
2 | در پنجره تنظیمات برای گروه طرح 1 بعدی ، فشار نسبی روی محور را در قسمت نوشتار برچسب تایپ کنید . |
3 | قسمت Data را پیدا کنید . از لیست Dataset ، Study 1/Refined Mesh Solution 1 (sol2) را انتخاب کنید . |
4 | از لیست انتخاب زمان ، از لیست را انتخاب کنید . |
5 | در لیست Times (s) 4.1E-5 را انتخاب کنید . |
6 | قسمت عنوان را پیدا کنید . از لیست نوع عنوان ، Label را انتخاب کنید . |
نمودار خطی 1
1 | روی On-Axis Relative Pressure کلیک راست کرده و Line Graph را انتخاب کنید . |
2 | فقط مرزهای 1 و 2 را انتخاب کنید. |
3 | در پنجره تنظیمات برای نمودار خط ، بخش y-Axis Data را پیدا کنید . |
4 | در قسمت متن Expression ، nate.p_t/P0 را تایپ کنید . |
5 | قسمت x-Axis Data را پیدا کنید . از لیست Parameter ، Expression را انتخاب کنید . |
6 | در قسمت متن Expression ، z/F را تایپ کنید . |
7 | در نوار ابزار فشار نسبی On-Axis ، روی ![]() ![]() |
فشار مثبت و منفی عادی شده
1 | در نوار ابزار صفحه اصلی ، روی ![]() |
2 | در پنجره تنظیمات برای گروه طرح 1 بعدی ، فشار مثبت و منفی نرمال شده را در قسمت نوشتار برچسب تایپ کنید . |
3 | قسمت Data را پیدا کنید . از لیست Dataset ، Study 1/Refined Mesh Solution 1 (sol2) را انتخاب کنید . |
4 | از لیست انتخاب زمان ، آخرین را انتخاب کنید . |
نمودار خطی 1
1 | روی Normalized Positive and Negative Pressure راست کلیک کرده و Line Graph را انتخاب کنید . |
2 | فقط مرز 2 را انتخاب کنید. |
3 | در پنجره تنظیمات برای نمودار خط ، روی Replace Expression در گوشه سمت راست بالای بخش y-Axis Data کلیک کنید . از منو، Component 1 (comp1)>Nonlinear Pressure Acoustics، Time Explicit>Pressure and sound level level>nate.p_max – حداکثر فشار آکوستیک – Pa را انتخاب کنید . |
4 | قسمت y-Axis Data را پیدا کنید . در قسمت متن Expression ، nate.p_max/at1(0, F, nate.p_max) را تایپ کنید . |
5 | قسمت x-Axis Data را پیدا کنید . از لیست Parameter ، Expression را انتخاب کنید . |
6 | در قسمت متن Expression ، z/F را تایپ کنید . |
7 | برای گسترش بخش Legends کلیک کنید . تیک Show legends را انتخاب کنید . |
8 | از فهرست Legends ، Manual را انتخاب کنید . |
9 | در جدول تنظیمات زیر را وارد کنید: |
افسانه ها |
p<sup>+</sup>/p<sub>حداکثر</sub> |
10 | برای گسترش بخش کیفیت کلیک کنید . از لیست Resolution ، بدون پالایش را انتخاب کنید . |
نمودار خط 2
1 | روی Line Graph 1 کلیک راست کرده و Duplicate را انتخاب کنید . |
2 | در پنجره تنظیمات برای نمودار خط ، روی Replace Expression در گوشه سمت راست بالای بخش y-Axis Data کلیک کنید . از منو، Component 1 (comp1)>Nonlinear Pressure Acoustics، Time Explicit>Pressure and sound level presion >nate.p_min – Minimum Acoustic Pressure – Pa را انتخاب کنید . |
3 | قسمت y-Axis Data را پیدا کنید . در قسمت متن Expression ، -nate.p_min/at1(0, F, nate.p_max) را تایپ کنید . |
4 | قسمت Legends را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
افسانه ها |
-p<sup>-</sup>/p<sub>حداکثر</sub> |
5 | در نوار ابزار Normalized Positive and Negative Pressure ، روی ![]() |
مقیاس زمانی موج سلولی
در نوار ابزار صفحه اصلی ، روی
Add Plot Group کلیک کنید و 2D Plot Group را انتخاب کنید .

مقیاس زمانی موج سلولی محلی را که گام زمانی متناسب با آن است، بررسی کنید.
1 | در پنجره Settings for 2D Plot Group ، بخش Data را پیدا کنید . |
2 | از لیست Dataset ، Study 1/Refined Mesh Solution 1 (sol2) را انتخاب کنید . |
3 | ![]() |
4 | در قسمت نوشتار برچسب ، مقیاس زمان موج سلولی را تایپ کنید . |
سطح 1
1 | روی Cell Wave Time Scale کلیک راست کرده و Surface را انتخاب کنید . |
2 | در پنجره تنظیمات برای Surface ، روی Replace Expression در گوشه سمت راست بالای بخش Expression کلیک کنید . از منو، Component 1 (comp1)>Nonlinear Pressure Acoustics، Time Explicit>Cell time scale>nate.wtc – Cell wave time scale – s را انتخاب کنید . |
3 | برای گسترش بخش کیفیت کلیک کنید . از لیست Resolution ، بدون پالایش را انتخاب کنید . |
4 | از لیست صاف کردن ، هیچکدام را انتخاب کنید . |
5 | در نوار ابزار مقیاس زمان موج سلولی ، روی ![]() ![]() |