Vol. 9, No. 2: 1u29
A Dynamic Adaptive Mesh Library Based on Stellar Operators Luiz Velho IMPA -- Instituto de Matematica Pura e Aplicada
VARs{ yt Y$R }s} b }Rt s Ikts8${ sIs}$% 8RY j$Ask bY${Y 8s$ts$tR s {BtPB8$t $stZjs$Bt BP $8T%sk$t RZPs{R qY ZR RZ}}j$R st $t$$sj 8RY s RZPs{ Rs8}j$t }B{IZ stI s R BP sIs}s$Bt {$$s qY 8RY $R sZB8s${sjjk 8BI$hI $t BI B {BtPB8 B ZRTIhtI {Yss{$R${R bY$j Y RZPs{ {YstR B% $8 qY 8RY }Rts$Bt $R AsRI Bt s YsjPTI Iss RZ{Z b$YBZ stk -s RBs JZ$8tR qY 8RY YsR st ZtIjkT $t R8$Zjs 8Zj$RBjZ$Bt RZ{Z 3ZY8B Y R}{$h{s$Bt BP IR$I 8RY {Yss{$R${R {st A AsRI Bt %k tsj sIs}s$Bt ZjR qY$R R{Y8 Ps{$j$sR Y I%jB}8t BP s}Y${R s}}j${s$BtR Ys 8st$}Zjs $stZjsI RZPs{R qY j$Ask RBZ{ {BI $R s%s$jsAj Btj$t
d
ytBIZ{$Bt
_BjkBtsj 8RYR s sZsAjk Y 8BR {B88Bt }Rts$Bt PB RZPs{R $t B8${ 8BIj$t stI {B8}Z s}Y${R yt 8stk s}}j${s$BtR Y RZPs{ $R Ikts8${ stI {YstR $R RYs} B% $8 qY$R t{B8}sRRR s b$I st BP }BAj8R PB8 Y st$8s$Bt BP IPB8sAj ABI$R B }BRR$% 8Zj$R{sj PB stR8$RR$Bt stI %$RZsj$9sT $Bt qY s BY s}}j${s$BtR bY Y RZPs{ RYs} $RjP $R h-I AZ Y RZPs{ I$R{$9s$Bt YsR B {Yst PB {B8}Zs$Btsj sRBtR qY$R B{{ZR PB -s8}j $t Y {sR BP 3$t$ ej8t 7$8Zjs$BtR w3eD b$Y $$I ABI$R © A K Peters, Ltd.
1
1086-7651/04
c0.50 per page
2
journal of graphics tools
yt Y bB R$Zs$BtR IR{$AI sAB% Y s}}j${s$Bt $Isjjk RYBZjI A {BtT {tI b$Y Y RBjZ$Bt BP Y }BAj8 s YstI ZR$t s 8RY }Rts$Bt Btjk sR s 8stR B }PB8 {B8}Zs$BtR yt }s{${ YBb% $ $R %k {B88Bt Ys s R$t$h{st }s BP Y PT PB $t I%jB}$t RZ{Y s}}j${s$BtR BR $tB Y sR, BP 8s$ts$t$t Y 8RY }Rts$Bt GBR k RB8$8R $ $R I$^{Zj B R}ss }sR BP Y $8}j8ts$Bt jsI B Y 8s$t }BAj8 IB8s$t PB8 Y 8RY $tPsRZ{Z 8s,$t Y {BI jRR }BsAj stI BT}Bt yt BI B B%{B8 YR IsbAs{,R $ bBZjI A IR$sAj B Ys% s 8RY j$Ask Ys {BZjI t{s}RZjs sjj Y PZt{$Btsj$k PB RZ}}B$t s Ikts8${ 8RY }Rts$Bt qY $8}j8ts$Bt RYBZjI A BAZR {B8}Zs$Btsjjk ^{$t stI {BtB8${sj $t 8R BP 88Bk R}s{ BB% Y V}}j${s$Bt _Bs8 ytPs{ wV_yD RYBZjI A R$8}j stI }B%$I Y $Y j%j BP sARs{$Bt yt Y$R }s} b }Rt s R$8}j R{Y8 PB {s$t stI 8s$ts$t$t s 8RY }Rts$Bt BP $8T%sk$t RZPs{R Ys sIIRRR sjj Y sAB% 8t$BtI JZ$8tR VR st sII$$Btsj Ath BZ 8RY }Rts$Bt YsR st ZtIjk$t R8$Zjs 8Zj$RBjZ$Bt RZ{Z bY${Y {st A PZY -}jB$I $t %s$BZR bskR B R}{$h{sjjk Y j%st PsZR BP Y$R RBPbs sU T s R$8}j Ikts8${ sIs}$% 8RY j$Ask AsRI Bt Y YsjPTI s RstT IsI B}BjB${sj Iss RZ{Z qY $8}j8ts$Bt BP Y$R tb sIs}T $% 8Zj$RBjZ$Bt PZt{$Btsj$k IBR tB JZ$ stk -s RBs $t Y }Rts$Bt VjRB A{sZR Y YsjPTI $R b$Ijk sIB}I $ RYBZjI A sRk B $t{B}Bs Y j$Ask $t 8stk s}}j${s$BtR T s 8$t$8sj V_y PB 8RY {s$Bt stI sIs}s$Bt qY$R $tPs{ {B8T }j8tR Y sI$$Btsj B}BjB${sj JZk B}sBR stI {BtR$RR BP Btjk s Pb PZt{$BtR T s {BtPB8sj 8RY RZ{Z Ys Ikts8${sjjk {YstR $R RBjZ$Bt AsRI Bt ZRTIhtI {$$s qY$R 8s,R Y sRRB{$sI sIs}s$Bt {s}sA$j$$R %k tsj stI }BbPZj T st &{$% 8{Yst$R8 PB ht8t stI R$8}j$h{s$Bt BP R8$Zjs 8RYR Ys 8s$ts$tR s R${I 8Zj$RBjZ$Bt RZ{Z qY$R 8{YT st$R8 $R AsRI Bt Y {Bt{} BP s R${I A$tsk 8Zj$$stZjs$Bt stI Rjjs YBk !Z R{Y8 $R AsRI Bt I B}sBR eI B}sBR s {B88Btjk ZRI A{sZR BP Y$ BBI sIs}s$Bt }B}$R 3B -s8}j BbIt sj > BbIt sj H 8}jBk st $t4s$t AsjjBBt 8BIj B {BtRZ{ s RZPs{ PB8 %BjZ8${ Iss yt Y$R 8BIj Y Ikts8${ 8RY $R AsRI Bt ht8t
Velho: A Dynamic Adaptive Mesh Library Based on Stellar Operators
3
Ak I A$R{$Bt BAAj sj >BAAj sj ((H }B}BR s 8Zj$RBjZ$Bt RYs} }Rts$Bt AsRI Bt B8k R8BBY$t stI Ikts8${ 8RYR Ys s 8BI$hI Ak I {Bjjs}RR I R}j$R stI I 4$}R e-$R$t R{Y8R PB Ikts8${ 8RYR s ZRZsjjk I%jB}I $t Y {Bt- BP R}{$h{ s}}j${s$BtR =tj$, 8BR }%$BZR bB, BZ R{Y8 $R s}}j${s$BtT $tI}tIt BB% $ j$R Bt Rjjs 8B%R Bt IR bY${Y Ys% Y -}RR$% }Bb B $8}j8t sA$sk stRPB8s$BtR Bt {B8A$tsB$sj 8st$PBjIR >N${,B$RY H !Z Ikts8${ 8RY }Rts$Bt YsR st ZtIjk$t 8Zj$RBjZ$Bt RZ{T Z Zj$RBjZ$Bt }Rts$BtR {st A IhtI YBZY jBAsj B jBT {sj B}s$BtR Bt s 8RY >psjstI H yt BI B RZ}}B sIs}s$Bt Y 8Zj$RBjZ$Bt Iss RZ{Z YsR B A {BtRZ{I ZR$t jB{sj B}s$BtR _BRR$% 8RYR >zjYB stI pB8R ((H yt Y$R ,$tI BP }Rts$Bt I$&t 8RYR {st A Ikts8${sjjk -s{I PB8 Y Iss RZ{Z 3sA$ sj ((H qY sIs}s$Bt R{Y8 }B}BRI $t Y$R }s} $R BYBBtsj B Y $tT PsRZ{Z -$Rt $t s tsj 8RY j$Ask yt Ys RtR $ {B8}j8tR RZ{Y j$As$R b$Y sII$$Btsj PZt{$Btsj$k Ys {BZjI A $8}j8tI Bt B} BP ITAsRI 8RY }Rts$BtR RZ{Y sR Y !}tRY > BR{Y sj (1H qY j$Ask ]LL $8}j8ts$Bt b$Y RBZ{ {BI $R s%s$jsAj Btj$t s Y sIIRR j$RI s Y tI BP Y$R }s} 1
!%%$b
!Z j$Ask $R $ttII PB s}}j${s$BtR $t bY${Y RYs} $tPB8s$Bt $R ,tBbt $tI}tItjk BP Y 8RY qY$R $R }s${Zjsjk Z bYt Y RZPs{ RYs} $R tB Rs${ stI {YstR Ikts8${sjjk B% $8 B YsR st -tsj {Bt$tZBZR Iht$$Bt 7B8 -s8}jR s %s$s$Btsj 8BIj$t 8Zj$RBjZ$Bt I$$t RZPs{ 8RY$t stI %$RZsj$9s$Bt BP }ss8${ B $8}j${$ RZPs{R qk}${sjjk $t RZ{Y s}}j${s$BtR Y PBjjBb$t JZ$8tR s Rs$RhIU T Y $R s AsR IB8s$t bY Y RZPs{ B8k $R IhtI T $ $R }BRR$Aj B {B8}Z Rs8}jR BP }B$tR Bt Y RZPs{
4
journal of graphics tools
!Z j$Ask s,R {s BP 8s$ts$t$t st sIs}$% %s$sAj RBjZ$Bt 8RY AZ RB$t Btjk Y {Zt 8RY stI }B%$I$t s R$8}j $tPs{ qY ,k B s{Y$%$t Y$R Bsj $R B $8}BR s R8$Zjs RZ{Z B Y 8RY sR b$jj A Rt $t Y t- R{$BtR qY ZR 8ZR }B%$I Y B}BjBk stI B8k BP st $t$$sj AsR }BjkT YIBt BY b$Y s 8stR B Rs8}j stI sIs} Y ZtIjk$t RZPs{ yt Y$R R{$Bt b IR{$A Y sIs}$% 8RY j$Ask:R V_y stI $% st -s8}j BP ZR$t Y j$Ask qY j$Ask V_y jsI B 8RY {BtRZ{$Bt stI sIs}s$Bt $R {B8}BRI BP Btjk bB PZt{$BtRU T RXw6YQu|~ RYQD u qY$R PZt{$Bt $R Y 8RY {BtRZ{B y s,R sR s }ss8 st BA`{ Ys }RtR Y RZPs{ T RXUUuIu}wD u qY$R PZt{$Bt sIs}R Y 8RY s{{BI$t B Y ZRT IhtI {$$s }B%$II Ak RYQ qY PZt{$Bt uIu} }PB8R ABY ht8t stI R$8}j$h{s$BtR BP Y {Zt 8RY qbB sII$$Btsj PZt{$BtR uIu} Q%v stI uIu} R%9}l%Qm s sjRB -}BRI Ak Y j$Ask V_y $t {sR Y s}}j${s$Bt tIR B IB Btjk ht8t B R$8}j$h{s$Bt qY sAB% V_y JZ$R Ys Y s}}j${s$Bt RZ}}j$R PBZ PZt{$BtR YBZY Y RZPs{ BA`{U s }B{IZ B {BtRZ{ Y AsR }BjkYIBt s Rs8}j$t PZt{$Bt B %sjZs Y B8k BP Y RZPs{ s Y %- BP Y 8RY s ht8t R stI s R$8}j$h{s$Bt R B I8$t $P Y 8RY tIR PZY RZAI$%$R$Bt B {BsRt$t R}{$%jk qYPB Y 6YQu| BA`{ {jsRR YsR B $8}j8t Y PBjjBb$t 8$t$T 8Z8 PZt{$Btsj$kU {jsRR 7ZPs{ \ %B$I AsR 8RYw$t t% _B$t }R> H> H $t t $t $R> H> HD %B$I Rs8}jweI z- m%D 4Bs ht RwD bY K $tI${sR Y AsR $stj PB8 bY${Y Ys %- bsR tsI tI w7, i, >D s IksI${ Ask{t${ {BBI$tsR !Y jsAj$t R{Y8R s }BRR$Aj bYt Y RZPs{ YsR s }s${Zjs PB8 BP }ssT 8$9s$Bt yt RZ{Y {sRR Y s}}j${s$Bt $t{B}BsR Y$R ,tBbjI $tB Y %- s$AZ {jsRR _ss8$9s$Bt $R $8}Bst PB {B8}Z$t Y Rs8}j$t PZt{$Bt n
Zj$RBjZ$Bt stI 7jjs qYBk
qY ,k B BZ sIs}$% 8RY }Rts$Bt $R $R ZtIjk$t 8Zj$RBT jZ$Bt RZ{Z yt Y$R R{$Bt b %$b Y AsR${ 8Zj$RBjZ$Bt {BtT {}R stI Y$ js$BtRY$} b$Y Rjjs RZAI$%$R$Bt YBk 3B 8B Is$jR R >zjYB (;H G s B$t B bB, b$Y s 8RY }Rts$Bt PB $stZjsI 8st$T PBjI RZPs{R qY$R $R tB s R$BZR R${$Bt A{sZR %k R8BBY RZPs{ $R $stZjsAj >Zt,R EEH ytII $stj 8RYR s s b$Ijk sIB}I I$R{ }Rts$Bt PB RZPs{R V $stj 8RY $R s R$8}j${$sj {jj {B8}j- - ) w~, o, B D PB8I Ak RR BP R$8}j${R BP I$8tR$Bt ( d stI 1 qYs $R %${R 87 ; ~ IR w87 , 8i D ; o stI $stjR w87 , 8i , 8> D ; B R}{$%jk V 8Zj$RBjZ$Bt 8RY $R s 8BtBBt${ RJZt{ BP R$8}j${$sj {B8}j-R I ) w-( , -d , 3 3 3 , -> D b$Y $t{sR$t RBjZ$Bt qYs $R /-7 / /-i / PB 7 c i bY /- / ItBR Y tZ8A BP $stjR BP - 3ZY8B Y 8RYR -7 ; I s sRRZ8I B A JZ$%sjt $stZjs$BtR BP s RZPs{ C y $R IR$sAj Ys stk bB RZARJZt 8RYR -7 -7Ld $t Y RJZt{ I RYBZjI A jsI Ak s stRPB8s$Bt Ys s,R Bt $tB Y BY yt Y$R bsk Y 8Zj$RBjZ$Bt RZ{Z {st A {BtRZ{I PB8 st $t$$sj {BsR 8RY Ak RZ{{RR$%jk s}}jk$t ht8t stRPB8s$BtR yP Y ht8t stRPB8s$Bt YsR st $t%R $ $R sjRB }BRR$Aj B AZ$jI Y 8Zj$RBjZ$Bt RZ{Z Rs$t PB8 s ItR 8RY stI }sIjk 8s,$t R$8}j$h{s$Bt stRPB8s$BtR =RZsjjk $ $R IR$sAj Ys YR 8RY stRPB8s$BtR {BtR$R BP jB{sj 8BIT $h{s$BtR bY${Y s&{ Btjk s }s BP Y 8RY yt Y$R {sR Y I}tIt{k js$BtR Abt stk bB 8RYR $t I b$jj A jB{sj sRI Bt Y$R Ps{ $ $R }BRR$Aj B I$% PB8 I s I}tIt{k s}Y Ys sjjBbR Y -s{$Bt BP tb 8RYR Ys s tB }Rt $t Y B$$tsj RJZt{ Ak }${$t BY $tI}tIt jB{sj 8BI$h{s$BtR 3B8 Y sAB% I$R{ZRR$Bt Bt 8Zj$RBjZ$Bt RZ{ZR b {Bt{jZI Ys b tI jB{sj B}sBR B stRPB8 $stj 8RYR qY YBk BP Rjjs RZAI$%$R$Bt }B%$IR RZ{Y B}sBR
6
journal of graphics tools
wsD Ps{ R}j$ stI Ps{ bjI
wAD I R}j$ stI I bjI
3$Z d 7jjs RZAI$%$R$Bt B}sBR
qY AsR${ Rjjs RZAI$%$R$Bt B}sBR PB bB I$8tR$Btsj 8RYR sU Y Ps{ R}j$ stI $R $t%R Ps{ bjI stI I R}j$ stI $R $t%R I bjI qYR B}s$BtR s $jjZRsI $t 3$Z d 7jjs YBk RZI$R JZ$%sjt{R Abt R$8}j${$sj {B8}j-R >N${,BT $RY H qY 8s$t YB8 BP Rjjs YBk RsR Ys Rjjs B}sBR Bt IR {st stRPB8 Abt JZ$%sjt {B8A$tsB$sj 8st$PBjIR 7jjs RZAI$%$R$Bt $R j%st $t Y {Bt- BP 8Zj$RBjZ$Bt A{sZR $ }B%$IR Y AsR${ B}sBR B ht stI R$8}j$Pk s $stj 8RY yt BZ 8RY j$Ask Ps{ R}j$R stI bjIR b$jj A ZRI B $8}BR s R8$T Zjs RZ{Z Bt Y AsR 8RY bY$j I R}j$R stI bjIR b$jj A ZRI B stRPB8 Y {Zt 8RY s{{BI$t B Y ZtIjk$t R8$Zjs 8Zj$RT BjZ$Bt RZ{Z ;
$tsk Zj$$stZjs$BtR
VR b Ys% Rt $t Y }%$BZR R{$Bt Y s BBI sRBtR B ZR Rjjs B}s$BtR Bt IR GYt% s Rjjs RZAI$%$R$Bt Ys}}tR $t st I Y $stjR $t{$It $t s R}j$ $tB bB V{{BI$tjk s RJZt{ BP Rjjs
Velho: A Dynamic Adaptive Mesh Library Based on Stellar Operators
3$Z 1 B}s$Bt
7
$tsk Y$s{Y$RU bB A$tsk R RZj$t PB8 st I R}j$
RZAI$%$R$BtR Bt IR $tIZ{R A$tsk Y$s{Y$R $t Y R$8}j${R wR 3$Z 1D $tsk R s R$8}j stI BPt jsI B ^{$t sjB$Y8R yt BI B {BtRZ{ s 8Zj$RBjZ$Bt RZ{Z AsRI Bt I R}j$R b -}jB$ Y Ps{ Ys Rjjs RZAI$%$R$Bt Bt IR $tBIZ{ jB{sj 8BI$h{s$BtR $t s 8RY yt Ps{ Y$R B}s$Bt s&{R Btjk Y $stjR Ys s $t{$It Bt Ys I w$ bB $stjR PB $t$B IR stI Bt $stj PB ABZtIsk IRD qY RZA8RY PB8I Ak YR $t{$It $stjR $R Y Rs BP Y I G b$jj sjRB {sjj Y$R RZA8RY s AsR${ AjB{, qYPB bB I R}j$R s $tI}tIt $P Bt I $R tB {Bts$tI $t Y Rs BP Y BY wstI %${T%RsD y $R sRk B R Ys $tI}tIt I R}j$R {st A s}}j$I $t st sA$sk BI ]Bt%Rjk tB Ys Y $R s I}tIt{k Abt s R}j$ I stI Y IR Bt Y ABZtIsk BP $R AsR${ AjB{, qYR I}tIt{$R $tIZ{ st $tjs%$t js$BtRY$} Abt Y A$tsk Y$s{Y$R WB Ys $t tsj s AsR${ AjB{, $R s }s$ BP $stjR b$Y s {B88Bt $ttsj I AZ Bt Y ABI BP st B}t 8RY s AsR${ AjB{, {st A `ZR s R$tj $stj bY Y ABI I $R Y R}j$ I 3$Z n $jjZRsR Y I}tIt{$R Abt AsR${ AjB{,R qB jBAsjjk {Yst Y RBjZ$Bt BP s 8RY b {st s}}jk stk R BP $tT I}tIt jB{sj 8BI$h{s$BtR qY$R {sR s tb RBjZ$Bt jsk B% Y
3
2
4
1 3 1
2
1
3
4
4
2
3$Z n *}tIt{$R stI AsR${ AjB{,RU bB I$&t AsR${ AjB{,R R}j$ stI Y$ j8tR s BZ}I B PB8 tb AsR${ AjB{,R wR}j$ IR s $tI${sI Ak IsRYI j$tRD
8
journal of graphics tools
Base Mesh
Front
Full Mesh
3$Z ; q %$bI sR s *VpU Y I}tIt{k s}Y $R PB8I Ak $tjs%I A$tsk Y$s{Y$R es{Y $t$B AsR${ AjB{, YsR bB $t{B8$t stI PBZ BZB$t sBbR $tI${s$t R}{$%jk Y $stjR AjBt$t B Y AjB{, stI Y $stjR RZj$t PB8 R}j$$t Y $ttsj I BP Y AjB{, sR${ AjB{,R Bt Y ABZtIsk Ys% Btjk Bt $t{B8$t stI bB BZB$t sBbR
8RY qbB RZARJZt RBjZ$Bt jskR s {BtRs$tI Ak Y I}tIt{k js$BtR BP jB{sj 8BI$h{s$BtR qY sAB% {Bt{}R sjjBb ZR B Iht s $tsk Zj$$stZjs$Bt w qD V q $R s 8Zj$RBjZ$Bt RZ{Z PB8I Ak s}}jk$t I R}j$R B st $t$T $sj 8RY - {sjjI AsR 8RY qY htsj 8RY RZj$t PB8 Y$R RZAI$%$R$Bt }B{RR $R {sjjI PZjj 8RY qY q {st A YBZY sR s *${ V{k{j${ ps}Y w*VpD IR{$A$t sjj }BRR$Aj bskR B 8s, jB{sj {YstR B s 8RY yt Y$R *Vp Y sBbR s jsAjI b$Y Rjjs RZAI$%$R$Bt Bt IR stI Y tBIR s RZA8RYR 3B8 st sjB$Y8${ }R}{$% Y ,k $Is $R B ZR Y sAB% 8t$BtI A$tsk Y$s{Y$R $t Y R$8}j${R B t{BI Y *Vp 3$Z ; $jjZRsR Y$R {Bt{} Vtk {Z $t Y *Vp Ys R}ssR Y AsR 8RY PB8 Y PZjj 8RY }T RtR s %sj$I 8RY sR {st A Rt $t 3$Z x RZ{Y s {Z $R {sjjI PBt WB Ys Y$R 8{Yst$R8 sjjBbR Y ts$Bt BP s js tZ8A BP 8RYR
Velho: A Dynamic Adaptive Mesh Library Based on Stellar Operators
9
Current Mesh wsD
Front
wAD
3$Z x e-s{$t s 8RY PB8 s qU wsD {Zt 8RY RZj$t PB8 s}}jk$t I R}j$R B Y AsR 8RY wAD {Z $t Y *Vp BP 3$Z ; }Rt$t Y PBt
I$R$t{ PB8 Y BtR IhtI $t Y 8Zj$RBjZ$Bt RJZt{ y $R Y 4-$T A$j$k $t {YBBR$t YBb B 8s, YBR {ZR Ys bsstR Y -}RR$Bt }Bb BP s q qY q $R $t Ps{ s }s${Zjs {sR BP s 8B tsj %s$sAj RBjZ$Bt RZ{Z {sjjI Zj$$stZjs$Bt >3jB$st$ sj MH $tsk 8Zj$$stZT js$BtR Ys% At $tBIZ{I Ak zjYB stI pB8R >zjYB stI pB8R ((H G Iht tBb s 8B R}{$sj$9I %R$Bt BP Y q Y Zjs q V iZjs $tsk Zj$$stZjs$Bt wi D $R s A$tsk 8Zj$$stZjs$Bt Ys Rs$RhR Y PBjjBb$t {BtI$$BtRU d Y AsR $stZjs$Bt $R s $TJZsI 8RY 1 ht8t B}s$BtR s Btjk s}}j$I B $t$B IR BP AsR${ AjB{,R qY JZ$8tR BP s Zjs A$tsk 8Zj$$stZjs$Bt s AsRI Bt Y {Bt{}R BP AsR${TAjB{, stI $TJZsI 8RY V AsR${ AjB{, $R s }s$ BP $stjR b$Y s {B88Bt I {sjjI Y $ttsj I BP Y AjB{, qY BY IR s {sjjI -tsj IR V $TJZsI 8RY $R s $stZjsITJZsIstZjs$Bt s 8RY Ys $R Y Zt$Bt BP AsR${ AjB{,R 3$Z E RYBbR s $TJZsI 8RY bY Y $t$B IR BP AsR${ AjB{,R s tII sR IsRYI j$tR
10
journal of graphics tools
3$Z E e-s8}j BP s $TJZsI 8RY b$Y PBZ AsR${ AjB{,R
WB Ys bYt Y $ttsj I BP s AsR${ AjB{, $R RZAI$%$II Ak st I R}j$ B}s$Bt $ $R t{RRsk B PB8 tb AsR${ AjB{,R $t BI B Zjs$9 Y 8RY qY$R $R IBt Ak RZAI$%$I$t sI`s{t AjB{,R yt Ys bsk Y -tsj IR BP }%$BZR AjB{,R A{B8 $ttsj IR BP tb AjB{,R qY$R }B{RR $R {sjjI $tjs%I ht8t wR 3$Z D y $R Y $tjs%I ht8t }B{RR Ys $%R st ZtIjk$t Zjs RZ{Z B Y 8RYR -s{I PB8 s i yt sII$$Bt Y$R }B{RR ZsstR Ys stk bB sI`s{t $stjR $t s 8RY b$jj I$& s 8BR Ak Bt j%j BP ht8t qY$R }BIZ{R bYs $R {sjjI s R${I RZ{Z >zBt zjYB stI B$t (dH $t {Btt{$Bt b$Y Y 1 RZAI$%$R$Bt R{Y8 qY R${I A$tsk 8Zj$$stZjs$Bt YsR %k R}{$sj }B}$R y $R B}$8sj $t js$Bt B Y 8s$t {$$s ZRI B 8sRZ Y &{$%tRR BP s %s$sAj RBjZ$Bt RZ{Z >_Z}}B MH B }{$Rjk $ s{Y$%R Y Y$YR -}RR$% }Bb $ YsR jBs$Y8 I}Y stI sjRB YsR j$ts BbY s
wsD
wAD
w{D
3$Z ytjs%I ht8tU wsD Y 8RY YsR bB AsR${ AjB{,R wAD Y B} AsR${ AjB{, R}j$R w{D Y ABB8 AsR${ AjB{, YsR B R}j$ $t BI B Zjs$9 Y 8RY qY htsj 8RY YsR R%t AsR${ AjB{,RvBt $t Y $t$B stI R$- Bt Y ABZtIsk
Velho: A Dynamic Adaptive Mesh Library Based on Stellar Operators
x
11
VIs}$% RYR
iZjs A$tsk 8Zj$$stZjs$BtR }BRRRR s %k ${Y sIs}s$Bt RZ{Z qY ,k j8t PB Y$R }B}k $R Y sA$j$k B 8s, jB{sj {YstR $t Y {Zt 8RY Ak 8B%$t Y PBt sBZtI s tBI $t Y *Vp VR b 8t$BtI APB Y Zjs$k BP Y i sjjBbR ZR B RB Btjk Y {Zt 8RY w Y PBtD bY$j A$t sAj B B}s sR $P b YsI Y {B8}j 8Zj$RBjZ$Bt RZ{Z qY Rjjs B}sBR I R}l% stI I dlI $8}j8t `ZR XjB{sj" stR$$BtR $t Y *Vp Ys $R $P w stI w I s Y $stZjs$BtR APB stI sP st I R}l% $R {sjjI R}{$%jk Yt w I $R s RZ{{RRB BP w BR{Y sj (1H yt RZ88sk BZ 8RY }Rts$Bt ZRR s RstIsI B}BjB${sj Iss RZ{Z stI $R sAj B $8}j${$jk t{BI sjj $tPB8s$Bt t{RRsk PB 8s$tT s$t$t s Ikts8${ %s$sAjTRBjZ$Bt 8RY b$Y Y ZtIjk$t RZ{Z BP s i
Z$jI$t Y
sR RY
qY 8RY {BtRZ{B s,R sR s }ss8 st BA`{ BP Y {jsRR 6YQu| VR 8t$BtI APB Y RZPs{ BA`{ t{s}RZjsR Y jBAsj B8${ stI B}BjB${sj $tPB8s$Bt ZRI Ak Y 8RY j$Ask $t{jZI$t Y Iht$$Bt BP Y AsR IB8s$t stI Rs8}j$t Y RZPs{ VjB$Y8 RYBbR Y }RZIB{BI PB Y 8RY {BtRZ{B GYt s tb 8RY $R $tRst$sI Y {BtRZ{B {sjjR 6YQu|UUBuR 9RX B $t$$sj$9 Y Iss RZ{ZR qY$R PZt{$Bt 8ZR R}{$Pk Y B8k stI B}BjBk BP Y AsR IB8s$t YBZY sskR BP }B$tR stI $tI-I $stjR R}{$%jk VjB$Y8 wRY {BtRZ{BD RYw7ZPs{ RD \ RZP ) R RAsR 8RYwt% %R tP Ps{RD R 8RYwt% %R tP Ps{RD $P w$R $JZsI 8RYwDD 8s, $JZsIwD $t$ Ys}RwD i
Velho: A Dynamic Adaptive Mesh Library Based on Stellar Operators
21
VjB$Y8 M wpts$Bt BP s $TJZsI 8RYD %B$I RYUU8s, $JZsIw%B$ID \ }$B$k JZZctBI%{BctBIkjRRctBIkk J PB w ) IR A$twD ) IR tIwD LLD \ kR 8s,wPsjRD J}ZRYwtBIwDD i bY$j w J8}kwD D \ tBI t ) JB}wD J}B}wD $P w tIk$R 8s,IwD D \ 8s, j$t,wtID R}j$wtID i i PB wP ) Ps{R A$twD P ) Ps{R tIwD PLLD $P wPkj%jwD )) (D R}j$wPD i
3B8 Y$R IR{$}$Bt st $t$$sj 8RY RZ{Z $R tsI 7$t{ Y AsR 8RY 8ZR A s $stZjsI JZsIstZjs$Bt Y 8RY {BtRZ{B RR $P Y ZRTRZ}}j$I IR{$}$Bt YsR Y$R }B}k yP Y$R $R tB Y {sR Yt Y {BtRZ{B {sjjR s }B{IZ B stRPB8 Y AsR 8RY $tB s $stZjsI JZsIstZjs$Bt VP Ys Y Ys}R s $t$$sj$9I b$Y Y stR$$Bt j8tR G tB Ys $ $R sjbskR }BRR$Aj B stRPB8 st sA$sk $stZjs 8RY $tB s $stZjsI JZsIstZjs$Bt Vt sjB$Y8 B {s $TJZsI 8RYR $R $%t $t >zjYB stI B$t (dH G $t{jZI $ Y PB {B8}jtRR qY $TJZsI 8RY ts$Bt sjB$Y8 RYBbt $t VjB$Y8 M bB,R sR PBjjBbRU Y 8RY $R I{B8}BRI $tB {jZRR BP $stj }s$R stI $RBjsI R$tj $stjR qY ABZtIs$R BP YR {jZRR b$jj PB8 Y $ttsj IR BP AsR${ AjB{,R $t Y $TJZsI 8RY qY$R $R IBt Ak RZAI$%$I$t $stj }s$R b$Y Y I R}j$ B}sB stI R$tj $stjR b$Y Y Ps{ R}j$ B}sB WB Ys $t Y$R sjB$Y8 $stj }s$R s {sI AsRI Bt jBtR I {jZR$t >i$%ss M;H !A%$BZRjk bYt Y $t}Z 8RY sjsIk }BRRRRR s JZsI$jssj RZ{Z $ $R tB t{RRsk B s}}jk Y $TJZsI 8RY sjB$Y8 qY$R $R sZB8s${sjjk I{I Ak Y 8RY {BtRZ{B M
e-s8}jR BP V}}j${s$BtR
G Ys% $8}j8tI Y Ikts8${ sIs}$% 8RY j$Ask Bt R%sj }jsPB8R ZR$t Y ] jstZs stI Y ]LL jstZs PB ABY N$tZ- stI G$tIBbR B}s$t RkR8R G sjRB $8}j8tI Y j$Ask $t Fs%s
22
journal of graphics tools
VjB$Y8 wV}}j${s$Bt 8s$t jBB}D RY 8 ) 8RYw8kRZPD bY$j w IB }B{RR$twD D \ Z}Is 8RYw8D 8sIs}wD i
yt Y$R R{$Bt b $% -s8}jR BP I$&t s}}j${s$BtR I%jB}I b$Y Y j$Ask Bt YR }jsPB8R Vjj s}}j${s$BtR Ys% s R$8$js RZ{Z qYk {s s 8RY stI B $tB s jBB} bY Y RZPs{ $R 8BI$hI stI Y 8RY {YstR $R RBjZ$Bt sIs}$%jk sR RYBbt $t VjB$Y8 qY 8s$t I$&t{ Abt Y s}}j${s$BtR $R YBb Y RZPs{ $R R}{$hI stI bY${Y sIs}s$Bt {$$s $R 8}jBkI
Md
sR${ 7ZPs{ 7ZAI$%$R$Bt
yt Y$R -s8}j Y RZPs{ $R s }ss8${sjjk IhtI R}Y qY sIs}sT $Bt {$$s $R $BtTAsRI qY ZR $ts{$%jk {BtBjR Y Y$Y BP s YB$9Btsj }jst Ys I$%$IR Y R}Y $t bB $BtR VAB% Y }jst Y 8RY RBjZ$Bt $R R B ] L d stI AjBb B ] d bY ] $R s Pt{ RBjZ$Bt j%j qY$R }Bs8 bsR $8}j8tI $t Y ] jstZs sR s 8BIT Zj BP pB8%$b >N%k sj 1H 3$Z dnwsDuw{D RYBbR Y Rts}RYBR BP st $ts{$% RRR$Bt
wsD
wAD
w{D
3$Z dn pB8%$b 8BIZjU $BtTAsRI sIs}s$Bt qY ZR {BtBjR s YB$9Btsj }jst I$%$I$t Y 8RY $t bB $BtR b$Y RBjZ$Bt ] d stI ] L d
Velho: A Dynamic Adaptive Mesh Library Based on Stellar Operators
M1
23
y8s yRBT]BtBZ _B{RR$t
yt Y$R s}}j${s$Bt b s $tRI $t Y -s{$Bt stI stR8$RR$Bt BP $RBT %sjZI {BtBZR BP st $8s PB stsjkR$R BP 8I${sj Iss qY $8s IB8s$t $R I{B8}BRI ZR$t st sIs}$% 8RY qY 8RY $R RZAI$%$II sBZtI Y ZAZjs t$YABYBBI BP Y $RBT{Z% stI Y RZA8RY Ys $tR{R Y {Z% $R ZRI PB }B{RR$t qY s}}j${s$Bt bsR I%jB}I $t ]LL b$Y Y b-G$tIBbR BBj,$ >78s H 3$Z d; IR{$AR R%sj RsR BP Y }B{RR 3$Z d;wsD RYBbR Y $t}Z $8sU ]q R{st BP s YZ8st YsI 3$Z d;wAD RYBbR Y {BtBZ {BT R}BtI$t B s ZRTRj{I $RBT%sjZ 3$Z d;w{D RYBbR Y 8RY sIs}I B Y $RBT{Z% qY 8RY $R htI Z} B Y 8s-$8Z8 RBjZ$Bt BP Y $8s Iss s Y $RBT{BtBZ WB Ys Y RBjZ$Bt $t{sRR Btjk ts Y {Z% 3$Z d;wID RYBbR Y $tR{$t RZA8RY Ys $R ZRI PB }B{RR$t stI stR8$RR$Bt BP Y $RBT{Z%
wsD
w{D
wAD
wID
3$Z d; y8s }B{RR$t s}}j${s$BtU Y sIs}$% 8RY $R ZRI PB -s{$Bt stI stR8$RR$Bt BP $RBT%sjZI {BtBZR $t 8I${sj Iss
24
Mn
journal of graphics tools
RY pts$Bt PB 3$t$ ej8t VtsjkR$R w3eD
pBjB${sj 8BIjR BPt {Bts$t 8Zj$$BtR {B8}j- ABIR PsZjR YBjR stI BY ss%s$t {Yss{$R${R Ys 8s, Y j$P BP Y 8RY RRjjsT BR %k YsI qYR 8BIjR BPt Zt YBZY tZ8${sj R$8Zjs$BtR Ys s RtR$$% B R8sjj stjR stI ts$% ssR qY Bsj BP Y s}}j${s$Bt $R B {s s 8RY Ys {s}ZR bjj Y ABZtIs$R Abt I$&t $BtR BP s BjB${sj 8BIj stI {Bts$tR $stjR b$Y s BBI sR}{ s$B Ys s RZ$sAj PB 3e stsjkR$R 3B Y$R }Z}BR b ZR s {B8A$ts$Bt BP sIs}T $% RZAI$%$R$Bt stI }YkR${sjjk AsRI IPB8s$BtR 7ZAI$%$R$Bt htR Y IB8s$t sBZtI ABZtIs$R bY$j IPB8s$Bt 8B%R %${R B Y ABZtIT s$R stI s Y Rs8 $8 8s$ts$tR Y sR}{ s$BR BP $stjR >sBT JZ$8 sj (;H qY s}}j${s$Bt bsR I%jB}I ZR$t ]LL stI Y pN=y BBj,$ >isI8s{Y MH
wsD
wAD
w{D
3$Z dx q$stZjs$Bt BP Ns, 7Z}$B $t ]stsIs
Velho: A Dynamic Adaptive Mesh Library Based on Stellar Operators
25
3$ZR dx stI dE $% RB8 RZjR BP Y$R s}}j${s$Bt 3$Z dxwsD RYBbR Ns, 7Z}$B $t ]stsIs s {jsRR${ 8BIj $t Y 8RY$t ss 3$Z dxwAD RYBbR Y sIs}$% 8RY b$YBZ IPB8s$Bt 3$Z dxw{D RYBbR Y htsj $stZjs$Bt BP Y $t$B $Bt qY 8RY YsR dnE( $stjR stI sjj stjR s Abt >E(( dE;EH 3$Z dE RYBbR st tjsI %$b BP Y ZtIPB8I stI IPB8I 8RYR
wsD
wAD
3$Z dE *s$j BP Y ZtIPB8I stI IPB8I 8RYR
26
M;
journal of graphics tools
qs$t z$RZsj$9s$Bt
qY$R s}}j${s$Bt bsR I%jB}I $t ]LL ZR$t !}tpN _j$t (nH NB{sj bs}$tR s s}}j$I B Y YTI$8tR$Btsj s8A$t R}s{ $t bY${Y Y RZPs{ $R {Bts$tI VR Y RZPs{ $R IPB8I ZtI Y s{$Bt BP YR B}s$BtR Y 8RY $R sIs}I AsRI Bt Y RZPs{ {Z%sZ 3$Z dM RYBbR st st$8sI Ps{ 8BIj {BtRZ{I ZR$t Y$R {Yt$JZ qY $t$$sj RZPs{ $R s R$tj R}Y }B{IZsjjk 8BI$hI Ak 8ZjT $}j R}s{T%sk$t I$R}js{8tR VABZ n( RZ{Y I$R}js{8tR s s}}j$I B Iht sjj Y ABtR stI 8ZR{jR e-}RR$BtR stI 8B$BtR s st$8sI Ak 8BI$Pk$t I$R}js{8tR %$s $8T%sk$t tB$R PZt{$BtR
wsD
wAD
w{D
wID
3$Z dM Vt$8sI Ps{ 8BIj ZR$t R}s{TAsRI IPB8s$BtR
28
journal of graphics tools
V{,tBbjI8tR qY$R Rs{Y bsR }s$sjjk RZ}}BI Ak Rs{Y stR PB8 Y s9$j$st ]BZt{$j PB 7{$t$h{ stI q{YtBjB${sj *%jB}8t w]W_JD stI i$B I Fst$B iRs{Y 3BZtIs$Bt w3V_eiFD G bBZjI j$, B Yst, z$t${$ZR jjB stI iZAtR N%k PB Yj}$t $t Y IT %jB}8t BP Y j$Ask stk Yst,R sjRB B _sZjB iB8s i${sIB sBJZ$8 qYB8sR Nb$t t _j$t stI VjBkR$B _s$%s bYB {BjjsABsI $t Y I%jB}T 8t BP Y s}}j${s$BtR iPt{R > BR{Y sj (1H BR{Y 7 7$tA 7 $R{YB& stI N BAAj X!}t8RY T V pt${ stI e^{$t _BjkBt RY *ss 7Z{Z" yt !}t7p _N=7 7k8}BR$Z8 }} >uH >]yqOHU >_= H 1((1 > BbIt sj H i BbIt q ${Yjj stI 7sYsI$ XisjTq$8 *kts8${ *PB8sAj RYR PB zBjZ8${ 78ts$Bt stI z$RZsj$9s$Bt" yt _B{ z] dd }} nd(udnd >]yqOHU >_= H d >3sA$ sj ((H V 3sA$ p TF p$98st N t 7 7{Y$s stI 7 7{YBtY X!t Y *R$t BP ]pVNus ]B8}Zs$Btsj pB8k VjB$Y8R N$Ask" 7_me n( dd w1(((D ddEud1(1 >3jB$st$ sj MH N * 3jB$st$ _ s$jjB stI e _Z}}B Xe^{$t y8}j8tT s$Bt BP Zj$$stZjs$BtR" yt yeee z$RZsj$9s$Bt :M I$I Ak * eA _= H dM >psjstI H psjstI XZj$RBjZ$Bt BIj$tU 7Z%k m 3ZZ !}}BZT t$$R" yt eZBs}Y${R : 7s BP Y V i}B w7qViD I$I Ak >e*yT q!iH }} >uH >]yqOHU >_= H d >N%k sj 1H 7 N%k q Zt9t stI _Y$jj$}R XpB8%$b" 7BPbs b$T t s Y pB8k ]t =t$%R$k BP $ttRBs V%s$jsAj PB8 GBjI G$I GA wY}U\\bbbB8Z8tIZ\RBPbs\D d1 >N${,B$RY H G i N${,B$RY X7$8}j${$sj B%R Bt ]B8}j-R stI st$PBjIR" yt _B{I$tR BP Y $AkPR zBj 1 }} 1un1( >]yqOHU >_= H d >sBJZ$8 sj (;H i sBJZ$8 _ i ]s%sj{st$ N zjYB stI ] eR}st{s XZj$TiRBjZ$Bt q$stZjs$BtR b$Y VIs}s$Bt B Y *B8s$t sRI Bt _YkR${sj ]B8}RR$Bt" 7ZA8$I 1((; >sk EH F _ sk 7$8}j${$sj !A`{R $t VjAs${ qB}BjBk zBj dd _$t{Bt WFU * zst WBRstI ]B8}stk yt{ dE >Zt,R EEH F Zt,R ej8tsk *$&t$sj qB}BjBk _$t{Bt WFU _$t{T Bt =t$%R$k _RR dEE
Velho: A Dynamic Adaptive Mesh Library Based on Stellar Operators
29
>_j$t (nH _j$t X]jsk {B8R 3jRY" V%s$jsAj PB8 GBjI G$I GA wY}U\\bbb8jtkZIZ\}j$t\-}$8tR\YsID 1((n >_Z}}B MH e _Z}}B Xzs$sAj iRBjZ$Bt q$stZjs$BtR" ]B8}Zs$Btsj pB8T k qYBk stI V}}j${s$BtR ddUn; wdMD 1du1nM >isI8s{Y MH _ isI8s{Y XpjZ$ =R ytPs{ N$Ask" V%s$jsAj PB8 GBjI G$I GA wY}U\\bbb{RZt{IZ\ sI8s{Y\jZ$\D dM >i$%ss M;H ] i$%ss XRY iht8t _B{RRR sRI Bt Y ptsj$9I $R{$Bt BP 7$8}j${R" 7yV F WZ8 Vtsj 1dUn wdM;D E(;uEdn >78s H F 78s Xb-b$tIBbRU ]BRRT_jsPB8 Ws$% =y 3s8bB," V%s$jT sAj PB8 GBjI G$I GA wY}U\\bbbb-b$tIBbRB\D d >zjYB stI pB8R ((H N zjYB stI F pB8R Xzs$sAj iRBjZ$Bt ;T RYRU ]Bt{}R stI V}}j${s$BtR" ]B8}Z ps}Y${R 3BZ8 d w1(((D dxu1d1 >zjYB stI B$t (dH N zjYB stI * B$t X;TM 7ZAI$%$R$Bt" ]B8}ZTV$II pB8${ *R$t dMUx w1((dD nu;1 wR}{$sj $RRZ Bt RZAI$%$R$Bt {YT t$JZRD >zjYB (;H N zjYB X*kts8${ VIs}$% RYR stI 7jjs qYBk" q{Yt${sj i}B qiT1((;T(d y_V T NsABsB$B zy7piV3 1((; >zBt