حلکنندههای سیستم خطی را با سه ویژگی مشخصه مختلف مدیریت کنید: مستقیم ، تکراری و چندشبکه .
نحو
sol.feature(fname).create(lname”Direct”)
sol.feature(fname).feature(lname).set(pname,value)
sol.feature(fname).create(lname”Terative”)
sol.feature(fname).feature(lname).set(pname,value)
sol.feature(fname).feature(lname).create(pcname, PType );
sol.feature(fname).feature(lname).feature(pcname).set(pname,value)
sol.feature(fname).feature(lname).create(pname”Multigrid”)
sol.feature(fname).feature(lname).feature(pname).feature(“pr”).create(prename, SType )
sol.feature(fname).feature(lname).feature(pname).feature(“po”).create(postname, SType )
sol.feature(fname).feature(lname).feature(pname).feature(“cs”).create(cname, CType )
sol.feature(fname).feature(lname).feature(pname).feature(“pr”).feature(prename).
مجموعه (نام، مقدار)
مجموعه (نام، مقدار)
sol.feature(fname).feature(lname).feature(pname).feature(“po”).feature(postname).
مجموعه (نام، مقدار)
مجموعه (نام، مقدار)
sol.feature(fname).feature(lname).feature(pname).feature(“cs”).feature(cname).
مجموعه (نام، مقدار)
مجموعه (نام، مقدار)
PType هر یک از انواع ویژگی های پیش شرطی مجاز است. این انواع عبارتند از: پیش شرطی مستقیم، Multigrid، تجزیه دامنه، SCGS، SOR، SOR Gauge، SOR Vector، Vanka، SOR Line، AMS، Auxiliary-Space AMG، LU ناقص، Krylov و Block Navier-Stokes. SType هر یک از انواع صاف تر مجاز است. اینها مانند PType هستند به جز تجزیه دامنه، Multigrid، AMS و Auxiliary-Space AMG. CType هر یک از انواع حلکننده شبکه درشت مجاز است: مستقیم و همه انواع فهرستشده برای PType .
Presmoother، AMG Presmoother، Postsmoother، AMG Postsmoother، Coarse Solver، AMG Coarse Solver، SchurSolver، SchurSourceSolver، PressureSolver، و VelocitySolver
Presmoother و AMG Presmoother، Postsmoother و AMG Postsmoother، Coarse Solver و AMG Coarse Solver، Schur Solver، Schur Source Solver، Pressure Solver و Velocity Solver را از طریق feature(“pr”) , feature(” po ” ) , feature(” cs”) , feature(“sso”) , feature(“ssso”) , feature(“ps”) و feature(“vs”) به ترتیب. این ویژگیها فقط برای اهداف اداری هستند و خود هیچ تنظیماتی ندارند.
شرح
سه ویژگی مشخصه برای حل کننده های سیستم خطی.
مثال ها:
GMRES با ILU به عنوان پیش شرط:
کد برای استفاده با جاوا
SolverFeature solver = sol.feature(fname).create(“iter1″,”Iterative”);
Solver.set(“حل کننده”،”gmres”);
solver.create(“ilu”,”IncompleteLU”);
کد برای استفاده با متلب
solver = sol.feature(fname).create(‘iter1′,’Iterative’);
Solver.set(‘solver’,’gmres’);
solver.create(‘ilu’,’IncompleteLU’);
پیش شرط را به GMG/SORVector/SPOOLES تغییر دهید:
کد برای استفاده با جاوا
solver.create(“gmg”,”Multigrid”);
Solver(“gmg”).set(“حل کننده”،”gmg”);
solver(“gmg”).feature(“pr”).create(“p1″،”SORVector”);
solver(“gmg”).feature(“po”).create(“p1″،”SORVector”);
SolverFeature csolver = حل کننده (“gmg”).feature (“csolver”).create(“c1″،”مستقیم”);
csolver.set(“حل کننده”،”قرقره ها”);
csolver.set(“errorchkd”, “on”);
کد برای استفاده با متلب
solver.create(‘gmg’,’Multigrid’);
solver(‘gmg’).set(‘solver’,’gmg’);
solver(‘gmg’).feature(‘pr’).create(‘p1′,’SORVector’);
solver(‘gmg’).feature(‘po’).create(‘p1′,’SORVector’);
csolver = حل کننده (‘gmg’).feature (‘csolver’).create(‘c1′,’direct’);
csolver.set(‘solver’,’spooles’);
csolver.set(‘errorchkd’,’on’);
به جای GMRES از گرادیان های مزدوج استفاده کنید:
کد برای استفاده با جاوا
Solver.set(“حل کننده”،”cg”);
کد برای استفاده با متلب
Solver.set(‘solver’,’cg’);
از پیش شرط معکوس تقریبی پراکنده (SAI) با استفاده از الگوی پراکندگی SAI که با توان 3 ماتریس سیستم تعریف شده است استفاده کنید:
کد برای استفاده با جاوا
model.sol(“sol1”).feature(“t1”).create(“i1″، “Iterative”);
model.sol(“sol1”).feature(“t1”).feature(“i1”).set(“linsolver”، “cg”);
model.sol(“sol1”).feature(“t1”).feature(“i1”).create(“sai1″، “SAI”);
model.sol(“sol1”).feature(“t1”).feature(“i1”).feature(“sai1”).set(“saisymm”، “روشن”);
model.sol(“sol1”).feature(“t1”).feature(“i1”).feature(“sai1”).
set(“saipattern”، “saipowa”);
set(“saipattern”، “saipowa”);
model.sol(“sol1”).feature(“t1”).feature(“i1”).feature(“sai1”).set(“saipowera”، “3”);
کد برای استفاده با متلب
iter = model.sol(‘sol1’).feature(‘t1’).create(‘i1’, ‘Iterative’);
iter.set(‘linsolver’, ‘cg’);
iter.create(‘sai1’, ‘SAI’);
iter.feature(‘sai1’).set(‘saisymm’, ‘on’);
iter.feature(‘sai1’).set(‘saipattern’,’saipowa’);
iter.feature(‘sai1’).set(‘saipowera’, ‘3’);
املاک PREFUN
ویژگی prefun برای حل کننده (پیش شرطی) مجموعه ای متفاوت از مقادیر را بسته به زمینه می پذیرد. در بخش زیر، مقادیر احتمالی و مقدار پیشفرض آن برای هر پیش شرطی که از آن پشتیبانی میکند، فهرست شده است.
خواص مستقیم
ویژگی | ارزش های | پیش فرض | شرح |
errorchk | خاموش | در | خودکار | خودکار | برآورد خطا را بررسی کنید. |
نسبت خطا | اسکالر غیر منفی | 0.5 | نسبت خطا محدود شده است (مقادیر معمولی در محدوده 0-1). |
دوباره تصحیح کنید | در | خاموش | خاموش (حل کننده مقدار ویژه ) | پالایش تکراری |
linsolver | اوریون | pardiso | قرقره | متراکم | اوریون | روش استفاده. |
maxrefinesteps | عدد صحیح غیر منفی | 15 | حداکثر تعداد مراحل پالایش تکراری. |
nliniterrefine | در | خاموش | خاموش | از پالایش تکراری در حلگر غیرخطی استفاده کنید. |
پیش سرگرمی | اوریون | pardiso | قرقره | متراکم | اوریون | حل کننده پیش شرط (MUMPS، PARDISO، SPOOLES یا Dense Matrix). |
غارت | اسکالر > 1 | 1 | عامل در برآورد خطای خطی. |
ویژگی | ارزش های | پیش فرض | شرح |
clusterpardiso | در | خاموش | خاموش | از حل کننده پراکنده مستقیم موازی برای خوشه ها (PARDISO) استفاده کنید. |
گنجانده شده است | خودکار | کتابچه راهنمای | خودکار | روش حافظه درون هسته ای (PARDISO، MUMPS). |
حافظه داخلی | مثبت واقعی | 3 | ضریب مصرف حافظه داخلی (PARDISO، MUMPS). |
memfracooc | اسکالر بین 0 و 1 | 0.99 | کسری از حافظه برای ذخیره خارج از هسته. |
حافظه کوچک | مثبت واقعی | 512.0 | حداقل حافظه داخلی در مگابایت (PARDISO، MUMPS). |
mumpsalloc | اسکالر حداقل 1 | 1.2 | ضریب تخصیص حافظه MUMPS (MUMPS). |
mumpsblr | در | خاموش | خاموش | فاکتورسازی رتبه پایین (MUMPS) را مسدود کنید. |
mumpsblrtol | اسکالر بین 0 و 1 | 1e-8 | بلوک تحمل فاکتورسازی رتبه پایین (MUMPS). |
mumpsblrtype | عادی | خشونت آمیز | طبیعی | نوع فشرده سازی برای فاکتورسازی رتبه پایین بلوک. |
سفارش اوریون | خودکار | amd | amf | قمد | nd | خودکار | الگوریتم پیشسفارش (MUMPS). |
دستور اوریون | در | خاموش | بر | پیشسفارش ردیف (MUMPS). |
ooc | اتوماتیک | در | خاموش | خودکار | از خارج از هسته (PARDISO، MUMPS) استفاده کنید. گزینه خودکار در صورت نیاز به فضای ذخیره سازی خارج از هسته تغییر می کند. |
oocm memory | مثبت واقعی | 512.0 | حافظه داخلی در مگابایت (PARDISO، MUMPS). |
pardmtsolve | در | خاموش | خاموش | حل چند رشته ای به جلو و عقب (PARDISO). |
جفت سفارشات | mmd | nd | ndmt | nd | الگوریتم پیشسفارش (PARDISO). |
ترتیب سفارش | در | خاموش | بر | الگوریتم پیشسفارش ردیف (PARDISO). |
برنامه ریزی | خودکار | یک | دو | خودکار | روش زمانبندی (PARDISO). |
قابل محور | در | خاموش | بر | از چرخش (MUMPS) استفاده کنید. |
pivotperturb | اسکالر بین 0 و 1 | 1e-8 | آستانه اغتشاش محوری (PARDISO، MUMPS). |
محوری را پالایش می کند | عدد صحیح غیر منفی | 0 | تعداد اصلاحات تکراری اجباری (PARDISO، MUMPS). |
استراتژی محوری | در | خاموش | خاموش | از چرخش 2 در 2 دسته کافمن (روشن) یا چرخش مورب 1 در 1 (خاموش) (PARDISO) استفاده کنید. |
پیش سفارش | mmd | nd | ms | بهترین | nd | الگوریتم پیشسفارش (SPOOLES). |
سفارش مجدد استفاده کنید | واقعی | نادرست | درست است، واقعی | استفاده مجدد از پیشسفارش (PARDISO، MUMPS). |
کوبیدن | اسکالر بین 0 و 1 | 0.1 | آستانه محوری (MUMPS، SPOOLES). |
استفاده از حافظه | اسکالر بین 0 و 1 | 0.8 | کسری استفاده شده از کل حافظه (PARDISO، MUMPS). |
ویژگی های تکرار شونده
ویژگی | ارزش های | پیش فرض | شرح |
errorchk | خاموش | در | خودکار | خودکار | برآورد خطا را تأیید کنید. |
linsolver | gmres | fgmres | bicgstab | tfqmr | cg | از قبل | gmres , town (قبلی) | روش استفاده. |
ماکسیلینیت | عدد صحیح مثبت | 100 | حداکثر تعداد تکرار میانی برای حل کننده تکراری در بررسی خطا. زمانی که errorchk خودکار است در دسترس است . |
maxlinit | عدد صحیح مثبت | 10000 500 (حل کننده درشت) | حداکثر تعداد تکرارهای خطی (در صورت استفاده با تلورانس). |
غارت | اسکالر > 1 | 1 | عامل در برآورد خطای خطی. |
ویژگی | ارزش های | پیش فرض | شرح |
تقریباً | واقعی | نادرست | نادرست | اگر vankavarsactive روی true (SCGS) تنظیم شده باشد، از تقریب تقریبی استفاده کنید. |
دراپتول | اسکالر بین 0 و 1 | 0.01 هنگامی که به عنوان پیش شرط استفاده می شود. 1 هنگامی که به عنوان پیش صاف کننده، پس از صاف کردن، یا حل کننده درشت استفاده می شود. 0.001 برای LU سلسله مراتبی و Sparse Localized Schur | تحمل افت (SPOOLES، LU سلسله مراتبی، LU ناقص با استراتژی حذف عنصر تحمل، و Sparse Localized Schur). |
دراپ تایپ | تلفن | پر کردن | به من | استراتژی حذف عنصر برای LU ناقص (تحمل، نسبت پر). |
eigk | عدد صحیح مثبت | 25 | تعداد بردارهای ویژه تقریبی، زمانی که gcrodr روی true تنظیم شود (GMRES). |
ایگرل | اسکالر بین 0 و 1 | 0.5 | کسری از تکرارهای GMRES هنگامی که gcrodrrel روی true (GMRES) تنظیم می شود. |
الیمتول | اسکالر بین 0 و 1 | 1 | تحمل حذف (Hierarchical LU). |
نسبت پر شدن | عدد صحیح غیر منفی | 1 | نسبت پر (LU ناقص با استراتژی حذف عنصر نسبت پر و SAI). |
تکان دادن | واقعی | نادرست | درست است، واقعی | از GCRO-DR برای حلکننده GMRES مجدد راهاندازی شده (GMRES) استفاده کنید. |
crodrel | واقعی | نادرست | نادرست | هنگامی که gcrodr روی true (GMRES) تنظیم شده است ، از اندازه زیرفضای نسبی استفاده کنید . |
هیبریدکامپ | بردار رشته ها | فیلد/وضعیت اجزاء در مرحله اگر hybridvarspec=دستی. | |
هیبریداسیون | تک | چند | تنها | از یک پیشتهویهکننده منفرد یا چند پیشتهویهکننده به عنوان پیشتهویهکننده ترکیبی استفاده کنید. |
هیبریدوار | بردار رشته ها | فیلدها/حالت ها در مرحله. | |
hybridvarspec | همه | کتابچه راهنمای | همه | شامل همه اجزاء یا به صورت دستی مشخص کنید. |
ایرستول | اسکالر بین 0 و 1 | 0.01 | تحمل باقیمانده در صورت باقی ماندن prefuntype ( gmres ، cg ، bicgstab ، tfqmr ). |
ایلودروپتول | اسکالر بین 0 و 1 | 0.01 | تحمل قطرات (ILUT). |
ilutfillratio | عدد صحیح غیر منفی | 1 | نسبت پر شدن (ILUT). |
تکرار | عدد صحیح غیر منفی | 2 ( 1 برای ILU و ILUT) | تعداد ثابتی از تکرارها (زمانی که به عنوان پیششرطیکننده، صافتر یا حلکننده درشت استفاده میشود)، برای همه حلکنندههای تکراری، بهجز پیششرطیکننده مستقیم که iterm روی iter یا itertol تنظیم میشود . |
iterm | تلفن | iter | itertol | تکرار | تکنیک خاتمه (زمانی که از LU ناقص، ILUT یا ILU0 به عنوان حل کننده درشت استفاده می شود یا Schur محلی یا Schur موضعی پراکنده به عنوان حل کننده Schur استفاده می شود). |
itol | اسکالر بین 0 و 1 | 0.1 | تحمل نسبی هنگامی که iterm روی tol یا itertol تنظیم می شود . |
راه اندازی مجدد | عدد صحیح مثبت | 50 | تعداد تکرارها قبل از راه اندازی مجدد ( gmres ، fgmres ). |
نگهدارنده | خودکار | در | خاموش | خودکار | هنگامی که gcrodr روی true (GMRES) تنظیم شده است ، از فضای فرعی استفاده مجدد کنید . |
نوع خط کشی | ssor | sor | سورو | ssor | نوع Sweep، که تصمیم میگیرد بلوکها به چه ترتیبی حلقه شوند (SCGS، SOR line، Vanka). |
ماتریکس فرمت | خودکار | پراکنده | پر شده | بدون ماتریکس | خودکار | فرمت ماتریسی |
maxlinit | عدد صحیح مثبت | 10 | حداکثر تعداد تکرار زمانی که iterm روی tol تنظیم شده است . |
nrkeepss | عدد صحیح مثبت | 5 | حداقل تعداد راهاندازی مجدد برای GCRO-DR، زمانی که Keey روی خودکار تنظیم شده است . |
پیش سرگرمی | شهر | ilut | ilu0 | قرقره ها | شهر | حل کننده (پیش شرطی) برای LU ناقص، ILUT (Intel MKL)، ILU0 (Intel MKL)، یا SPOOLES). |
پیش از جنس | خودکار (فقط SAI) | چپ | درست | سمت چپ (خودکار برای SAI) | پیش شرط چپ یا راست ( gmres ، cg ، bicgstab ، tfqmr ، SAI). برای SAI، نوع پیش شرط پیشفرض خودکار است . |
آروم باش | اسکالر بین 0 و 2 | 1 | عامل آرامش (Jacobi، الگوریتم های مبتنی بر SOR، LU، ILUT، SAI، Vanka، و LU سلسله مراتبی). |
الگوی احترام | در | خاموش | بر | به الگوی ماتریس (ILU) احترام بگذارید. |
استفاده مجدد | در | خاموش | بر | استفاده مجدد از خطوط گره ها (خط SOR). |
الگوی استفاده مجدد | واقعی | نادرست | درست است، واقعی | استفاده مجدد از الگوی پراکندگی (SCGS). |
استفاده مجدد از طولانی کننده ها | در | خاموش | بر | استفاده مجدد از بلوک های داده (SCGS، SOR line، Vanka). |
saicolmaxfactor | عدد صحیح مثبت | 5 | حداکثر تعداد عناصر غیر صفر هر ستون را در ماتریس پیش شرط SAI محدود کنید. |
saisymm | خودکار | خاموش | در | گوشه نشین | خودکار | ویژگی های تقارن روش SAI به ترتیب مربوط به خودکار، نا متقارن، متقارن و هرمیتین است. |
saipattern | sysmat | سایپووا | دوختن غذا | الگوی پراکندگی SAI با ماتریس سیستم یا ماتریس توان سیستم تعریف شده است. |
saipowera | عدد صحیح مثبت | 2 | قدرت ماتریس سیستم برای الگوی پراکندگی SAI. |
scgsblocked | واقعی | نادرست | درست است، واقعی | از نسخه مسدود شده (SCGS) استفاده کنید. |
scgsdirectmaxsize | عدد صحیح مثبت | 150 | حداکثر اندازه برای فاکتورسازی ذخیره شده مستقیم، اگر scgssolv تقریباً باشد . |
scgsfilter | واقعی | نادرست | درست است، واقعی | اعمال فیلتر روی خطوط (SCGS) |
scgsfilteraggressive | واقعی | نادرست | درست است، واقعی | هنگامی که یک فیلتر روی خطوط اعمال می شود (SCGS) از صاف کننده کارآمد استفاده کنید. |
scgsfilteramglvls | واقعی | نادرست | نادرست | اگر scgsfilter درست است (SCGS) فیلتر را فقط برای سطوح AMG اعمال کنید. |
scgsfilterelems | واقعی | نادرست | درست است، واقعی | فیلتر کردن عناصر جداگانه، اگر scgsfilter درست است (SCGS) |
نوع فیلتر scgsline | هیچکدام | شروع فیلتر | فیلتر همه | شروع فیلتر | اعمال فیلتر به عناصر: هیچ، عناصر شروع منحصر به فرد، یا خطوط منحصر به فرد، اگر scgsfilter درست است (SCGS). |
روش scgs | عناصر | خطوط | خطوط_رئوس | عناصر | روش برای SCGS: عناصر مش، خطوط عناصر مش، یا خطوط و رئوس عناصر مش (SCGS). |
scgsmumpsminsize | عدد صحیح مثبت | 150 | حداکثر اندازه برای فاکتورسازی MUMPS، اگر scgssolv تقریباً باشد . |
scgsrelax | اسکالر بین 0 و 2 | 1 | فاکتور آرامش (SCGS). |
scgsrestart | عدد صحیح مثبت | 100 | مقدار راه اندازی مجدد GMRES (SCGS). |
scgsreusemeshdata | واقعی | نادرست | درست است، واقعی | استفاده مجدد از داده های مش (SCGS). |
scgssolv | gmres | مستقیم | ذخیره شده | تقریبا | gmres | حل کننده بلوک های محلی (SCGS). |
scgstol | اسکالر مثبت | 0.02 | تحمل GMRES (SCGS). |
دومی کننده | عدد صحیح مثبت | 1 | تعداد تکرارهای دوم |
جذب شده | در | خاموش | بر | روش SOR مسدود شده |
sorvecdof | بردار رشته ها | متغیرهای عنصر برداری (بردار SOR و الگوریتم های گیج SOR). | |
متقارن | در | خاموش | خاموش | استفاده از فرم متقارن؛ ssor به جای sor و غیره. (SOR، SORVector، SORGauge، SORLline). |
کوبیدن | اسکالر بین 0 و 1 | 1 | آستانه محوری (ILU). |
جابجا کردن | در | خاموش | خاموش | از فرم جابجایی استفاده کنید. سورو به جای sor و غیره. (SOR، SORVector، SORGauge، SORLline). |
وزن های استفاده شده | واقعی | نادرست | درست است، واقعی | با استفاده از مقیاس های غیرخطی (GMRES با پیش شرط سمت چپ) خاتمه دهید. |
وانکابلاک شده | در | خاموش | بر | روش وانکا مسدود شده |
vankadirectmaxsize | عدد صحیح مثبت | 150 | حداکثر اندازه برای فاکتورسازی ذخیره شده مستقیم، اگر vankasolv تقریباً باشد . |
vankamumpsminsize | عدد صحیح مثبت | 150 | حداکثر اندازه برای فاکتورسازی MUMPS، اگر vankasolv تقریباً باشد . |
وانکارلاکس | اسکالر بین 0 و 2 | 0.8 | فاکتور آرامش برای آپدیت وانکا. |
وانکارستارت | عدد صحیح مثبت | 100 | مقدار راه اندازی مجدد GMRES (وانکا). |
ونکاسولف | gmres | مستقیم | ذخیره شده | تقریبا | gmres | حل کننده بلوک های محلی (وانکا). |
ونکاتول | اسکالر مثبت | 0.02 | تحمل GMRES (وانکا). |
وانکاوارها | بردار رشته ها | {} | متغیرهای ضرب کننده لاگرانژ (وانکا، SCGS). |
vankavarsactive | واقعی | نادرست | نادرست | از متغیرهای Vanka (SCGS) استفاده کنید. |
ویژگی divcleantol در نابرابری استفاده می شود T T b | < divcleantol · | b | برای اطمینان از اینکه واگرایی عددی پس از تمیز کردن واگرایی به اندازه کافی کوچک است. SOR Gauge را در کتابچه راهنمای مرجع Multiphysics COMSOL ببینید .
ویژگی های چندشبکه ای
ویژگی | ارزش های | پیش فرض | شرح |
gmglevels | عدد صحیح مثبت | 1 | حداکثر تعداد سطوح چندشبکه ای هندسی. |
تکرار | عدد صحیح | 2 | تعداد تکرار ثابت (هنگامی که به عنوان پیش شرط، صافتر یا حلکننده درشت استفاده میشود). |
linsolver | wyd | amg | wd | روش استفاده. |
maxlinit | عدد صحیح مثبت | 500 | حداکثر تعداد تکرارهای خطی (در صورت استفاده با تلورانس). |
mgcycle | v | w | f | v | نوع چرخه |
سطوح میلی گرم | عدد صحیح مثبت | 5 | حداکثر تعداد سطوح چندشبکه ای جبری. |
ترجیحا رایگان | واقعی | نادرست | نادرست | فرمت ماتریس رایگان را ترجیح دهید. |
پیش سرگرمی | gmg | amg | saamg | amg اگر به عنوان پیشتهویهکننده Krylov استفاده شود. gmg ، در غیر این صورت. | حل کننده پیش شرط (چندشبکه هندسی، چندشبکه جبری، یا AMG تجمع هموار). |
غارت | اسکالر > 1 | 1 | عامل در برآورد خطای خطی. |
ویژگی | ارزش های | پیش فرض | شرح |
Agglevel | عدد صحیح مثبت | 2 | سطح چندشبکه برای شروع هموارسازی، اگر aggmethod = دستی ( saamg ). |
روش ترکیبی | خودکار | کتابچه راهنمای | خودکار | هموار شدن امتدادها در صورت استفاده صاف = روشن ( saamg ). |
amgauto | عدد صحیح از 1 تا 10 | 3 | کیفیت سلسله مراتب چندشبکه ( amg ). |
amgcompwise | واقعی | نادرست | درست است، واقعی | پرولوگاتورها را به صورت جزء ( amg ) بسازید. |
جمع آوری کنید | در | خاموش | بر | هنگامی که Lowamg روشن است ( amg و saamg ) روی سطوح با ترتیب پایینتر جمعآوری کنید . |
روش درشت کردن | موازی | کلاسیک | موازی | روش درشت کردن مورد استفاده ( amg ). |
فشرده سازی | در | خاموش | خاموش | از یک الگوریتم تجمیع استفاده کنید که منجر به درشت شدن با سرعت کمتری شود ( saamg ). |
geomuse | بردار رشته ها | هندسه برای سلسله مراتب هندسی چندشبکه ای | |
هیبریداسیون | تک | چند | تنها | از یک پیشتهویهکننده منفرد یا چند پیشتهویهکننده به عنوان پیشتهویهکننده ترکیبی استفاده کنید. |
هیبریدوار | بردار رشته ها | فیلدها/حالت ها در مرحله. | |
hybridvarspec | همه | کتابچه راهنمای | همه | شامل همه اجزاء یا به صورت دستی مشخص کنید. |
هیبریدکامپ | بردار رشته ها | اجزای فیلد/وضعیت در مرحله اگر hybridvarspec = دستی است . | |
جاکدامپ | اسکالر مثبت | 2/3 | ضریب میرایی ژاکوبی اگر استفاده می کند صاف = روشن ( saamg ). |
kwslaplacemg | در | خاموش | خاموش | سهم ضعیف تولید شده را حفظ کنید. |
entermg | در | خاموش | بر | ابتدا ترتیب عنصر (هر کدام) را پایین بیاورید ( amg و saamg ). |
جرم | در | خاموش | بر | در سطوح چندشبکه ای ( gmg ) مونتاژ کنید. |
maxcoarsedof | عدد صحیح مثبت | 5000 | حداکثر تعداد DOF در درشت ترین سطح ( amg ، saamg ). |
mcaseassem | بردار رشته ها | سطوح چندشبکه ای که باید مونتاژ انجام شود ( gmg ، mcasegen = دستی ). | |
mcasegen | دفترچه راهنما | همه | هر | درشت | ترتیب درشت | پالایش | پالایشگاهی | refineall | هر | روش تولید سلسله مراتب ( gmg ). |
mcaseuse | بردار رشته ها | سطوح چندشبکه ای که باید استفاده شوند ( gmg ، mcasegen = دستی ). | |
ذهن از نخ | عدد صحیح مثبت | 5000 | حداقل تعداد DOF در هر رشته در سطوح چندشبکه ای (زمانی که prefun gmg نیست ). |
نگه داشتن | در | خاموش | خاموش | موارد مش تولید شده ( gmg ) را نگه دارید. |
فضای خالی | ثابت | rbm | بردارهای فضای خالی: حالت های بدنه ثابت یا صلب ( saamg ). | |
prolongatoronlystrongconn | در | خاموش | بر | برای دستیابی به عملکرد بهتر در هر تکرار ( amg ) از یک طولانیکننده پراکنده استفاده کنید . |
طولانی شدن برش | اسکالر مثبت | 0.1 | فاکتور برش پرولونگاتور ( Amg ). |
استفاده مجدد از طولانی کننده ها | در | خاموش | بر | در صورت امکان از طولانیکنندهها استفاده مجدد کنید ( saamg ). |
روش r | منظم | طولانی ترین | منظم | روش پالایش مش ( gmg ). |
saamgcompwise | در | خاموش | خاموش | طولانیکنندههای SAAMG را به صورت جزء ( saamg ) بسازید. |
مقیاس | بردار اعداد مثبت | 2 | ضریب مقیاس مش ( gmg ). |
strconn | اسکالر مثبت | 0.01 | قدرت اتصال ( saamg ). |
strconnamgp | اسکالر مثبت | 0.25 | قدرت اتصال ( amg ). |
شما در فیلتر هستید | در | خاموش | بر | اگر usemooth = روشن ( saamg ) از فیلتر استفاده کنید. |
استفاده می کند | در | خاموش | بر | از صاف کننده طولانی مدت ( saamg ) استفاده کنید. |
ویژگی useaggressive دیگر از نسخه 5.3 استفاده نمی شود. برای حلکننده/پیشتنظیمکنندههای چندشبکه هندسی، سلسلهمراتب چندشبکه به روش زیر کنترل میشود (همچنین به Multigrid در کتابچه راهنمای مرجع چندشبکه COMSOL مراجعه کنید ):
• | اگر mcasegen=همه ، هر ، یا درشت ، مرتبه درشت ، آنگاه سلسلهمراتب چندشبکه بهطور خودکار با شروع از مش و گسستهسازی مجموعهشده توسط مطالعه ساخته میشود. تعداد سطوح چندشبکه ای تولید شده در ویژگی gmglevels آورده شده است . روش all and any اولاً سعی میکند ترتیب گسستهسازی توابع شکل مورد استفاده را کاهش دهد و ثانیاً مش را درشت میکند. در صورتی که بتوان همه توابع شکل استفاده شده را کاهش داد، این روش همگی ترتیب (یکی) را کاهش می دهد. اگر بتوان حداقل یک تابع شکل را کاهش داد، روش any ترتیب (یک) را کاهش می دهد. روش درشتنظم را پایین نمی آورد، فقط مش را درشت می کند. روش ترتیب درشت هم ترتیب را کاهش می دهد (برای هر تابع شکلی که می توان یک عدد آن را کاهش داد) و هم مش را درشت می کند. |
• | اگر mcasegen=refine ، refineany یا refineall باشد، سلسله مراتب چندشبکه ای به طور خودکار با ترکیبی از پالایش مش ارائه شده توسط مطالعه و تغییر گسسته سازی ساخته می شود. تعداد سطوح چندشبکه ای تولید شده در ویژگی gmglevels آورده شده است . روش پالایش را می توان با استفاده از روش ویژگی r مشخص کرد . مش انتخاب شده اولیه برای مطالعه، در مورد پالایش مش، در سطح چندشبکه ای استفاده می شود و از بهترین سطح چندشبکه ای تولید شده برای مطالعه استفاده می شود (حل شده برای). سطوح چندشبکه ای تولید شده در مدل نگهداری می شوند و خاصیت mcasegen به دستی تغییر می یابد . روش اصلاح می شودفقط مش را اصلاح می کند و ترتیب تابع شکل را تغییر نمی دهد. روش refineany و refineall ابتدا سعی میکند نظم را پایین بیاورد و در مرحله دوم مش را اصلاح میکند. روش refineany یک سطح چندشبکه ای را با کاهش ترتیب (یک) در صورتی که حداقل تابع شکل را بتوان پایین آورد، می سازد. روش refineall سطوح چندشبکهای را با کاهش ترتیب (به یک) در صورتی که بتوان همه تابع شکل استفاده شده را کاهش داد، ایجاد میکند. |
• | اگر mcasegen=دستی باشد ، می توان از سطوح چندشبکه ای موجود (کودکان مطالعه فعلی) استفاده کرد. زیرمجموعه مورد استفاده با دادن برچسب های آنها به ویژگی mcaseuse انتخاب می شود . |
ساخت ماتریس های سطح درشت توسط ویژگی massem و mcaseassem کنترل می شود . اولین ویژگی کنترل می کند که آیا ماتریس ها باید برای سطوح تولید شده به طور خودکار جمع شوند یا خیر. اگر روی خاموش تنظیم شود ، از ماتریس های افزایش و محدودیت برای نمایش ماتریس ها از سطح بالای سلسله مراتب استفاده می شود. ویژگی دوم، سطوح چندشبکهای را که باید از تکنیک assemble در مورد mcasegen=manual استفاده کنند، کنترل میکند .
هنگامی که یک حل کننده تکراری به عنوان پیش شرط، هموارتر یا حل کننده درشت استفاده می شود، می توانید انتخاب کنید که با استفاده از یک تلورانس حل کنید یا تعداد ثابتی از تکرارها را انجام دهید. هنگامی که به عنوان یک حل کننده درشت استفاده می شود، پیش فرض حل با استفاده از یک تلورانس است. هنگامی که به عنوان یک پیش شرط یا صاف کننده استفاده می شود، پیش فرض انجام تعداد ثابتی از تکرار است. اگر هر دو ویژگی itol و iter داده شوند، برنامه با استفاده از یک تلورانس حل می شود.
ویژگی های تجزیه دامنه (SCHWARZ و SCHUR)
ویژگی | ارزش | پیش فرض | شرح |
Agglevel | عدد صحیح مثبت | 2 | سطح چندشبکه برای شروع هموارسازی، اگر aggmethod = دستی ( تجمیع) (فقط شوارتز). |
روش ترکیبی | خودکار | کتابچه راهنمای | خودکار | صاف کردن طولانی مدت ( تجمع ) را به تعویق بیندازید (فقط شوارتز). |
amgauto | عدد صحیح از 1 تا 10 | 3 | کیفیت سلسله مراتب چندشبکه ( جبری ) (فقط شوارتز). |
amgauto | عدد صحیح از 1 تا 10 | 3 | کیفیت سلسله مراتب چندشبکه ( جبری ) (فقط شوارتز). |
جمع آوری کنید | در | خاموش | بر | اگر lowamgdd روشن است (فقط شوارتز) روی سطوح با ترتیب پایینتر جمعآوری کنید ( جبری ، تجمیع ). |
فشرده سازی | در | خاموش | خاموش | از یک الگوریتم تجمیع استفاده کنید که منجر به درشت شدن ( انباشتگی ) با سرعت کمتری شود (فقط شوارتز). |
روش ddreorder | هیچکدام | تشریح | فضا | تشریح | روش پیش سفارش عنصر: هیچ، کالبد شکافی تودرتو، یا استفاده از منحنی پرکننده فضا. |
domdofmax | عدد صحیح | 1 | حداکثر تعداد گره در هر زیر دامنه. |
domgeom | بردار رشته ها | هندسه پارتیشن | |
domnodesmax | عدد صحیح | 100000 | حداکثر تعداد DOF در هر زیر دامنه. |
geomuse | بردار رشته ها | از سطح درشت در هندسه ها استفاده کنید (برای mcasegen = مرتبه درشت | همه | هر | درشت | refineall | refineany | پالایش ) (فقط شوارتز). | |
هیبریدکامپ | بردار رشته ها | مولفه های فیلد/حالت در انتخاب مرحله / پیش شرط (برای hybridvarspec = دستی ). | |
هیبریداسیون | تک | چند | تنها | از یک پیشتهویهکننده منفرد یا چند پیشتهویهکننده به عنوان پیشتهویهکننده ترکیبی استفاده کنید. |
هیبریدوار | بردار رشته ها | فیلدها/حالت ها در متغیرهای مرحله / پیش شرط (برای هیبریداسیون = چند ). | |
hybridvarspec | همه | کتابچه راهنمای | همه | شامل تمام اجزاء یا مشخص کنید که به صورت دستی (برای هیبریداسیون = چند ). |
تکرار | عدد صحیح | 1 | تعداد تکرار |
جاکدامپ | اسکالر مثبت | 2/3 | ضریب میرایی ژاکوبی ( تجمع ) (فقط شوارتز). |
نگهشور | در | خاموش | بر | ماتریس های مکمل Schur را نگه دارید (فقط Schur). |
kwslaplacemg | در | خاموش | خاموش | سهم ضعیف تولید شده را حفظ کنید. |
پایین ترین | در | خاموش | بر | ترتیب عناصر پایین ابتدا ( جبری ، تجمیع ) (فقط شوارتز). |
جرم | در | خاموش | بر | در سطح درشت مونتاژ کنید ( برای mcasegen = درشت | همه _ _ _ _ _ _ _ |
maxcoarsedof | عدد صحیح مثبت | 5000 | اگر maxcoarsedofsactive روشن باشد (فقط شوارتز ) حداکثر تعداد DOF در درشتترین سطح ( جبری ، تجمع ). |
maxcoarsedofs فعال | در | خاموش | خاموش | تنظیم حداکثر تعداد DOF ها در درشت ترین سطح را فعال کنید (فقط شوارتز). |
mcasegen | ترتیب درشت | همه | هر | درشت | refineall | پالایشگاهی | پالایش | کتابچه راهنمای | هر | روش تولید سطح درشت (فقط شوارتز). |
mcaseuse | بردار رشته ها | سطح درشتی که باید استفاده شود (برای mcasegen = دستی ) (فقط شوارتز). | |
سطوح میلی گرم | عدد صحیح مثبت | 5 | حداکثر تعداد سطوح چندشبکه ای جبری ( جبری ، تجمیع ) (فقط شوارتز). |
نگه داشتن | در | خاموش | بر | سطح درشت تولید شده را حفظ کنید (برای mcasegen = همه | هر کدام | درشت ) (فقط شوارتز). |
ndom | عدد صحیح | 2 (سیاه)؛ 4 (برشی) | حداقل تعداد زیر دامنه |
همپوشانی | عدد صحیح | 1 | همپوشانی اضافی |
روش همپوشانی | خودکار | ماتریس | مش | خودکار | روش همپوشانی (فقط شوارتز). |
ترجیحا رایگان | در | خاموش | خاموش | به صورت خودکار قالب آزاد ماتریسی را انتخاب کنید (فقط شوارتز). |
پیش سرگرمی (Schur) | جهراد | ddschurmul | ddchurmul | حل کننده تجزیه دامنه (Additive Schur/Multiplicative Schur)، برای روش های Schur. |
پیش سرگرمی (شوارتز) | بابا | ddmul | فکر کنم | بی همدردی | ddmul | حل کننده تجزیه دامنه (شوارتز افزودنی / شوارتز چندگانه / شوارتز ترکیبی / شوارتز متقارن)، برای روش های شوارتز. |
استفاده مجدد از طولانی کننده ها | در | خاموش | بر | در صورت امکان از طولانیکنندهها مجدداً استفاده کنید ( تجمع ) (فقط شوارتز). |
روش r | طولانی ترین | منظم | طولانی ترین | روش پالایش مش (برای mcasegen = refineall | refineany | refine ) (فقط شوارتز). |
مقیاس | اسکالر > 0 | 2.0 | ضریب درشت شدن مش (برای mcasegen = درشت | هر | همه | درشت ) (فقط شوارتز). |
strconn | اسکالر مثبت | 0.01 | قدرت اتصال ( تجمیع ) (فقط شوارتز). |
استفاده تهاجمی | در | خاموش | بر | از درشت کردن تهاجمی ( تجمع ) استفاده کنید (فقط شوارتز). |
استفاده درشت | در | جبری | تجمع | نیکولایدس | خاموش | بر | از سطح درشت استفاده کنید: هندسی ( روشن )، چندشبکه جبری ( جبری )، تجمعات AMG ( تجمیع )، نیکولاید (فقط شوارتز)، یا خاموش (فقط شوارتز). |
استفاده از رنگ آمیزی | در | خاموش | بر | از رنگ آمیزی (برای پیش سرگرمی = ddmul | ddsym ) (فقط شوارتز) استفاده کنید. |
شما در فیلتر هستید | در | خاموش | بر | از فیلتر کردن ( تجمیع ) (فقط شوارتز) استفاده کنید. |
یوزراک | خودکار | در | خاموش | خودکار | داده های ساب دامنه را مجددا محاسبه و پاک کنید. |
از رنگ آمیزی استفاده می کند | در | خاموش | بر | از رنگ آمیزی (برای prefun = ddschurmul ) (فقط Schur) استفاده کنید. |
کد مثال برای استفاده با جاوا
model.sol(“sol1”).feature(“s1”).create(“i1″، “Iterative”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).create(“dd1″,”DomainDecomposition”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).feature(“ds”).
create(“mg1″،”Multigrid”);
create(“mg1″،”Multigrid”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).set(“prefun”,”ddadd”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).set(“mcasegen”،”refine”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).set(“domnodesmax”،”2”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).
set(“روش همپوشانی”، “مش”);
set(“روش همپوشانی”، “مش”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).set(“ndom”، “16”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).
set(“domgeom”, new String[]{“geom1”});
set(“domgeom”, new String[]{“geom1”});
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).feature(“cs”).
feature(“dDef”).set(“linsolver”,”pardiso”);
feature(“dDef”).set(“linsolver”,”pardiso”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).feature(“ds”).
feature(“mg1”).set(“gmglevels”,”5″);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).
set (“هیبریداسیون”، “چند”);
set (“هیبریداسیون”، “چند”);
model.sol(“sol1”).feature(“s1”).feature(“i1”).feature(“dd1”).
set(“hybridcomp”, new String[]{“comp1.u”});
set(“hybridcomp”, new String[]{“comp1.u”});
SOR PREFUN PROPERTY
ویژگی | ارزش | پیش فرض | شرح |
پیش سرگرمی | ssor | sor | سورو | ssor | حل کننده (SSOR، SOR، یا SORU). |
SSOR GAUGE PREFUN PROPERTY
ویژگی | ارزش | پیش فرض | شرح |
پیش سرگرمی | ssorgauge | سورگوش | سورگوش | سورگوش زمانی که به عنوان پیش صاف کننده استفاده می شود. سورگاس زمانی که به عنوان پس از صاف کردن استفاده می شود. ssorgauge در غیر این صورت | حل کننده (سنج SSOR، گیج SOR یا گیج SORU). |
ویژگی SOR وکتور PREFUN
ویژگی | ارزش | پیش فرض | شرح |
پیش سرگرمی | ssorvec | sorvec | soruvec | sorvec هنگامی که به عنوان پیش صاف کننده استفاده می شود. soruvec هنگامی که به عنوان postsmoother استفاده می شود. ssorvec در غیر این صورت | حل کننده (بردار SSOR، بردار SOR یا بردار SORU). |