Site admin: fujis PukiWiki 1.5.4 © 2001-2022 PukiWiki Development Team. Powered by PHP 8.1.29. HTML convert time: 0.007 sec.
ã¾ãã¯CGæ³(Conjugate Gradient Method)ã§é£ç«æ¹ç¨å¼ã解ãç·´ç¿ã CGæ¹ã®ã¢ã«ã´ãªãºã ã¯Wikipediaã«ä»»ãããã¨ã«ãã¦ãCGæ³ã®ããã°ã©ã ã¯ä»¥ä¸ã®ããã«ãªã£ãã /*==================================================*/ // CGæ³ãã¹ãããã°ã©ã /*==================================================*/ #include <stdio.h> #include <stdlib.h> #include <math.h> #define N  10 #define TMAX 100 #define EPS (1.0e-6) typedef double Vector[N];    // ãã¯ãã« typedef double Matrix[N][N
åå ±å½¹å¾é (BiCG)æ³ã®æ®å·®ãæ¸å°ããå®å®åãããã®ãBiCGSTABæ³ãBiCGã®CGã¨ã®éãã¯é対称è¡åã®å復è¨ç®ã«ä½¿ç¨ã§ãããã¨ã(詳ãã解説ãããã¨ããã¨ãã¨ã¦ãé£ããã®ã§å²æ) ã¨ããããããµã³ãã«ããã°ã©ã ãä½ã£ã¦ã¿ãã(ç¨ããæ¹ç¨å¼ã¯ä»¥åCGæ³ã®ããã°ã©ã ã§ä½¿ã£ããã®ã¨åæ§) /*==================================================*/ // Bi-CGSTABæ³ãã¹ãããã°ã©ã /*==================================================*/ #include <cstdio> #include <cstdlib> #include <cmath> using namespace std; const int  N    = 10; const int  ITRMAX
ç·åæ¹ç¨å¼ã®äºæ¬¡å½¢å¼ãæå°åããããã®ãæé©ãªã¹ããããµã¤ãºã«ããææ¥éä¸æ³ï¼ç·ï¼ã®åæã¨å ±å½¹å¾é æ³ï¼èµ¤ï¼ã®åæã®æ¯è¼ãå ±å½¹å¾é æ³ã¯ãå³å¯ã«ã¯n次ã®ä¿æ°è¡åã«å¯¾ãã¦é«ã nã¹ãããã§åæããï¼ããã§ã¯n=2ï¼ã å ±å½¹å¾é æ³ï¼ãããããããã°ãã»ããè±: conjugate gradient methodãCGæ³ã¨ãå¼ã°ããï¼ã¯å¯¾ç§°æ£å®å¤è¡åãä¿æ°ã¨ããé£ç«ä¸æ¬¡æ¹ç¨å¼ã解ãããã®ã¢ã«ã´ãªãºã ã§ãã[1][2][3][4]ãå復æ³ã¨ãã¦å©ç¨ãã[1][2][3][4]ãã³ã¬ã¹ãã¼å解ã®ãããªç´æ¥æ³ã§ã¯å¤§ãããã¦åãæ±ããªãã大è¦æ¨¡ãªçè¡åã解ãããã«å©ç¨ãããããã®ãããªåé¡ã¯åå¾®åæ¹ç¨å¼ãªã©ãæ°å¤çã«è§£ãéã«å¸¸ã«ç¾ãã[1][5][6][7]ã å ±å½¹å¾é æ³ã¯ãã¨ãã«ã®ã¼æå°åãªã©ã®æé©ååé¡ã解ãããã«ç¨ãããã¨ãã§ãã[8][9][10]ã åå ±å½¹å¾é æ³ï¼è±èªçï¼ã¯ãå ±å½¹å¾é æ³ã®é対称åé¡ã¸
æ¦è¦ CGæ³(Conjugate Gradient Methods)ã¯M.R.Hestenesã¨E.Stiefelã«ãã£ã¦1952å¹´ã«ææ¡ãããæ¹æ³ã§ãã[1]ã CGæ³ã¯æ£å®å¤å¯¾ç§°è¡åã«å¯¾ãã¦ä½¿ãããé£ç«ä¸æ¬¡æ¹ç¨å¼ãå復æ³ã§è§£ãããã®ææ³ã§ããã è¡åã®æ£å¤å¯¾ç§°æ§ ãã¯ãã«ã®å ç©ãã®ããã«æ¸ãã å®è¡åãæ£å®å¤å¯¾ç§°ã¨ã¯ã ã¨ãããã¨ã§ãããã対称ã§ããã¨ãããã¨ã¯ã ãæãç«ã¤ã¨ãããã¨ã§ããã CGæ³ã®åºæ¬åç ä»ã次ã®ãããªç·å½¢å次æ¹ç¨å¼ã解ãã¨ããã CGæ³ã¯åç®ã®å復ã«ããã¦ã次ã®ããã«ãã®æ¹ç¨å¼ã®è§£ã誤差ãç¨ãã¦å®ç¾©ããã誤差ã®ãã«ã (çå·æç«ã¯ã®ã¨ã) ãæå°åãããããªè¿ä¼¼è§£ãé¨å空éã®ä¸ããè¦ã¤ããæ¹æ³ã§ãããä½ããã¯ã¯ãªããé¨å空é(Krylov Subspace)ã§ããã ã¤ã¾ãCGæ³ã¯æ¬¡ã®ãããªé£ç«ä¸æ¬¡æ¹ç¨å¼ã®è¿ä¼¼è§£ãæ¢ãããã®æ¹æ³ã§ããã ãã®ããã«é¨å空éã®ä¸
åå¦çã¤ãCGæ³(PCGæ³) åç¯ã§ã¯CGæ³ã®åæãè¡åã®åºæå¤åå¸ã«å¼·ãä¾åãããã¨ãåãã£ãã ããã§ã解ãã¹ãæ¹ç¨å¼ãè¡åã使ã£ã¦æ¬¡ã®ããã«å¤å½¢ã§ããã¨ããã ä½ããããã§ãããããã§ãã¯ç¹ç°ã§ãªãè¡åã§ããã ãæ£å®å¤å¯¾ç§°ã®å ´åããæ£å®å¤å¯¾ç§°ã¨ãªããããã§é£ç«ä¸æ¬¡æ¹ç¨å¼ã«CGæ³ãé©å¿ãããã¨ãèããã ããããããããæ¡ä»¶æ°ãå°ãããããªããåºæå¤ã®åå¸ããã¦ããã¨ããã¨ãããæ©ã解ãæ±ãããã¨ãã§ãããã¨ãåããã ããã§è¡åã¨ããã以ä¸ãè¡åãããç¨ãããã¨ãªããã®éè¡åã®ã¿ãç¨ãã¦ãé£ç«ä¸æ¬¡æ¹ç¨å¼ã«CGæ³ãé©å¿ãã¦ããã®ã¨åä¸ã«ãªãããã«CGæ³ã®ã¢ã«ã´ãªãºã ãæ¸ãç´ãã ã®æãã¨ãªããå¤å½¢ããé£ç«ä¸æ¬¡æ¹ç¨å¼ã¯è§£ããã¨ã解ãæ±ããããã é£ç«ä¸æ¬¡æ¹ç¨å¼ã«CGæ³ããéã®æ®å·®ãæ¢ç´¢æ¹åãã¯ãã«ã¨ããã ãã£ã¦ããã¨ããã¨ãCGæ³ã®ä¿æ°ã¯æ¬¡ã®ããã«è¡¨ããã¨ãã§ããã CGæ³ã®é¢ä¿å¼ã
é»éãä¸è±UFJä¿¡è¨éè¡ãªã©å¤§æä¼æ¥ãç¸æ¬¡ãåå ¥ã表æãããæ å ±éè¡ããããã«æããã³ãã£ã¼ä¼æ¥ãDataSignï¼æ±äº¬ã»æ¸è°·ï¼ã ãå社ã®å¤ªç°ç¥ä¸ç¤¾é·ã¯æ å ±éè¡ã¨ããè¨èãçã¾ããâ¦ç¶ã ä¸é¨é»åããæ å ±éè¡ãåå ¥ã¸ãé»åãã¼ã¿ãæ´»ç¨ ï¼»ææä¼å¡éå®ï¼½ ãæ å ±éè¡ã説æä¼ã«ï¼ï¼ï¼ç¤¾ããã¼ã¿æµéã®æ çµã¿å§å
Free and Open Source Blender is a public project hosted on blender.org, licensed as GNU GPL, owned by its contributors. For that reason Blender is Free and Open Source software, forever. Learn more Part of the industry Blender is a member of ASWF, Khronos, Linux Foundation and OIN. Itâs also well supported by major hardware vendors such as AMD, Apple, Intel, and NVIDIA.
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}