Commit 68b0ecb2fd39466b62fe85593f3627498b31711f

Authored by Chris Smartt
1 parent 8c230103

Complete mesh generation parameters for flex cables

DOCUMENTATION/THEORY_MANUAL/Tex/cable_types.tex
... ... @@ -480,7 +480,7 @@ I_0 \\
480 480  
481 481 \begin{figure}[h]
482 482 \centering
483   -\includegraphics[scale=0.5]{../USER_GUIDE/Imgs/flex_cable.eps}
  483 +\includegraphics[scale=0.5]{../USER_GUIDE/Imgs/ML_flex_cable.eps}
484 484 \caption{flex cable}
485 485 \label{fig:flex_cable}
486 486 \end{figure}
... ... @@ -566,12 +566,12 @@ V_{d2\_c1} \\
566 566 V_{ref}\\
567 567 \end{array} \right)
568 568 =\left[ \begin{array}{cccccc}
569   - 1 & 0 & \cdots & 0 && -1 0 \\
570   - 0 & 1 & \cdots & 0 && -1 0 \\
571   - \vdots & \vdots & \ddots & \vdots && \vdots\vdots \\
572   - 0 & 0 & \cdots & 1 && -1 0 \\
573   - 0 & 0 & \cdots & 0 && 1 -1 \\
574   - 0 & 0 & \cdots & 0 && 0 1 \\
  569 + 1 & 0 & \cdots & 0 & -1 & 0 \\
  570 + 0 & 1 & \cdots & 0 & -1 & 0 \\
  571 + \vdots & \vdots & \ddots & \vdots & \vdots & \vdots \\
  572 + 0 & 0 & \cdots & 1 & -1 & 0 \\
  573 + 0 & 0 & \cdots & 0 & 1 & -1 \\
  574 + 0 & 0 & \cdots & 0 & 0 & 1 \\
575 575 \end{array} \right]
576 576 \left( \begin{array}{c}
577 577 V_1 \\
... ... @@ -597,7 +597,7 @@ I_{ref}\\
597 597 =\left[ \begin{array}{cccccc}
598 598 1 & 0 & \cdots & 0 & 0 & 0 \\
599 599 0 & 1 & \cdots & 0 & 0 & 0 \\
600   - \vdots & \vdots & \ddots & \vdots & \vdots\vdots \
  600 + \vdots & \vdots & \ddots & \vdots & \vdots & \vdots \
601 601 0 & 0 & \cdots & 1 & 0 & 0 \\
602 602 0 & 0 & \cdots & 0 & 1 & 0 \\
603 603 1 & 1 & \cdots & 1 & 1 & 1 \\
... ...
DOCUMENTATION/THEORY_MANUAL/Tex/preamble.tex
... ... @@ -4,7 +4,7 @@
4 4 \newcommand{\DocumentTitle}{Theory Manual}
5 5 \newcommand{\DocumentSubTitle}{SACAMOS: State of the Art CAble MOdels for Spice}
6 6 \newcommand{\DocumentSubSubTitle}{Open Souce Cable Models for EMI Simulations}
7   -\newcommand{\DocumentVersion}{1.1}
  7 +\newcommand{\DocumentVersion}{1.2}
8 8 \newcommand{\DocumentAuthors}{Christopher Smartt\footnote{\UONname, contact: Chris.Smartt@nottingham.ac.uk}, David Thomas$^1$, Steve Greedy$^1$, \\ Jaco Verpoorte\footnote{\NLRname, contact: Jaco.Verpoorte@nlr.nl}, Jesper Lansink Rotgerink$^2$ and Harmen Schippers$^2$}
9 9 \newcommand{\License}{This document is subject to the GNU Free Documentation License (version 2.0).}
10 10 \newcommand{\Reference}{ESA 40000112765/14/NL/HK}
... ...
DOCUMENTATION/USER_GUIDE/Imgs/ML_flex_cable.eps 0 → 100644
... ... @@ -0,0 +1,927 @@
  1 +%!PS-Adobe-3.0 EPSF-3.0
  2 +%%BoundingBox: -1 335 586 740
  3 +%%Title: ML_flex_cable
  4 +%%CreationDate: Wed Jun 20 11:47:45 2018
  5 +%%Creator: Tgif-4.2.5-QPL written by William Chia-Wei Cheng (bill.cheng@acm.org)
  6 +%%ProducedBy: (unknown)
  7 +%%Pages: 1
  8 +%%DocumentFonts: (atend)
  9 +%%EndComments
  10 +%%BeginProlog
  11 +
  12 +/tgifdict 54 dict def
  13 +tgifdict begin
  14 +
  15 +/tgifarrowtipdict 8 dict def
  16 +tgifarrowtipdict /mtrx matrix put
  17 +
  18 +/TGAT % tgifarrowtip
  19 + { tgifarrowtipdict begin
  20 + /dy exch def
  21 + /dx exch def
  22 + /h exch def
  23 + /w exch def
  24 + /y exch def
  25 + /x exch def
  26 + /savematrix mtrx currentmatrix def
  27 + x y translate
  28 + dy dx atan rotate
  29 + 0 0 moveto
  30 + w neg h lineto
  31 + w neg h neg lineto
  32 + savematrix setmatrix
  33 + end
  34 + } def
  35 +
  36 +/TGMAX
  37 + { exch dup 3 1 roll exch dup 3 1 roll gt { pop } { exch pop } ifelse
  38 + } def
  39 +/TGMIN
  40 + { exch dup 3 1 roll exch dup 3 1 roll lt { pop } { exch pop } ifelse
  41 + } def
  42 +/TGSW { stringwidth pop } def
  43 +/tgifstrw 0 def
  44 +
  45 +/bd { bind def } bind def
  46 +
  47 +/GS { gsave } bd
  48 +/GR { grestore } bd
  49 +/NP { newpath } bd
  50 +/CP { closepath } bd
  51 +/CHP { charpath } bd
  52 +/CT { curveto } bd
  53 +/L { lineto } bd
  54 +/RL { rlineto } bd
  55 +/M { moveto } bd
  56 +/RM { rmoveto } bd
  57 +/S { stroke } bd
  58 +/F { fill } bd
  59 +/TR { translate } bd
  60 +/RO { rotate } bd
  61 +/SC { scale } bd
  62 +/MU { mul } bd
  63 +/DI { div } bd
  64 +/DU { dup } bd
  65 +/NE { neg } bd
  66 +/AD { add } bd
  67 +/SU { sub } bd
  68 +/PO { pop } bd
  69 +/EX { exch } bd
  70 +/CO { concat } bd
  71 +/CL { clip } bd
  72 +/EC { eoclip } bd
  73 +/EF { eofill } bd
  74 +/IM { image } bd
  75 +/IMM { imagemask } bd
  76 +/ARY { array } bd
  77 +/SG { setgray } bd
  78 +/RG { setrgbcolor } bd
  79 +/SD { setdash } bd
  80 +/W { setlinewidth } bd
  81 +/SM { setmiterlimit } bd
  82 +/SLC { setlinecap } bd
  83 +/SLJ { setlinejoin } bd
  84 +/SH { show } bd
  85 +/FF { findfont } bd
  86 +/MS { makefont setfont } bd
  87 +/AR { arcto 4 {pop} repeat } bd
  88 +/CURP { currentpoint } bd
  89 +/FLAT { flattenpath strokepath clip newpath } bd
  90 +/TGSM { tgiforigctm setmatrix } def
  91 +/TGRM { savematrix setmatrix } def
  92 +
  93 +end
  94 +
  95 +%%EndProlog
  96 +%%Page: 1 1
  97 +
  98 +%%PageBoundingBox: -1 335 586 740
  99 +tgifdict begin
  100 +/tgifsavedpage save def
  101 +
  102 +1 SM
  103 +1 W
  104 +
  105 +0 SG
  106 +
  107 +72 0 MU 72 11.602 MU TR
  108 +72 128 DI 100.000 MU 100 DI DU NE SC
  109 +
  110 +GS
  111 +
  112 +/tgiforigctm matrix currentmatrix def
  113 +
  114 +% TEXT
  115 +NP
  116 +0 SG
  117 + GS
  118 + 1 W
  119 + 260 880 M
  120 + GS
  121 + 0 SG
  122 + /Courier FF [24 0 0 -24 0 0] MS
  123 + (Multi-layer conductor Flex cable) SH
  124 + GR
  125 + GR
  126 +
  127 +% TEXT
  128 +NP
  129 +0 SG
  130 + GS
  131 + 1 W
  132 + 120 325 M
  133 + GS
  134 + 0 SG
  135 + /Courier FF [24 0 0 -24 0 0] MS
  136 + (width) SH
  137 + GR
  138 + GR
  139 +
  140 +% TEXT
  141 +NP
  142 +0 SG
  143 + GS
  144 + 1 W
  145 + 70 475 M
  146 + GS
  147 + 1.000 0.000 1.000 RG
  148 + /Courier FF [24 0 0 -24 0 0] MS
  149 + (Conductor No 1) SH
  150 + GR
  151 + GR
  152 +
  153 +% TEXT
  154 +NP
  155 +0 SG
  156 + GS
  157 + 1 W
  158 + 235 410 M
  159 + GS
  160 + 0 SG
  161 + /Courier FF [24 0 0 -24 0 0] MS
  162 + (height) SH
  163 + GR
  164 + GR
  165 +
  166 +% BOX
  167 +0 SG
  168 +GS
  169 + 10 SM
  170 + GS
  171 + NP 70 390 M 220 390 L 220 420 L 70 420 L CP
  172 + 3 W
  173 + S
  174 + GR
  175 +GR
  176 +
  177 +% POLY/OPEN-SPLINE
  178 +0 SG
  179 +GS
  180 + NP
  181 + 70 340 M
  182 + 0 150 atan DU cos 8.000 MU exch sin 8.000 MU RM
  183 + 0 150 atan DU cos 8.000 MU 220 exch SU
  184 + exch sin 8.000 MU 340 exch SU L
  185 + TGSM
  186 + 1 W
  187 + S
  188 +GR
  189 +GS
  190 + TGSM
  191 + NP
  192 + 70 340 8.000 3.000 -150 0 TGAT
  193 + 1 SG CP F
  194 + 0 SG
  195 + NP
  196 + 70 340 8.000 3.000 -150 0 TGAT
  197 + CP F
  198 +GR
  199 +GS
  200 + TGSM
  201 + NP
  202 + 220 340 8.000 3.000 150 0 TGAT
  203 + 1 SG CP F
  204 + 0 SG
  205 + NP
  206 + 220 340 8.000 3.000 150 0 TGAT
  207 + CP F
  208 +GR
  209 +
  210 +% POLY/OPEN-SPLINE
  211 +0 SG
  212 +GS
  213 + NP
  214 + 230 390 M
  215 + 30 0 atan DU cos 8.000 MU exch sin 8.000 MU RM
  216 + 30 0 atan DU cos 8.000 MU 230 exch SU
  217 + exch sin 8.000 MU 420 exch SU L
  218 + TGSM
  219 + 1 W
  220 + S
  221 +GR
  222 +GS
  223 + TGSM
  224 + NP
  225 + 230 390 8.000 3.000 0 -30 TGAT
  226 + 1 SG CP F
  227 + 0 SG
  228 + NP
  229 + 230 390 8.000 3.000 0 -30 TGAT
  230 + CP F
  231 +GR
  232 +GS
  233 + TGSM
  234 + NP
  235 + 230 420 8.000 3.000 0 30 TGAT
  236 + 1 SG CP F
  237 + 0 SG
  238 + NP
  239 + 230 420 8.000 3.000 0 30 TGAT
  240 + CP F
  241 +GR
  242 +
  243 +% POLY/OPEN-SPLINE
  244 +0 SG
  245 +GS
  246 + NP
  247 + 220 340 M
  248 + 0 105 atan DU cos 8.000 MU exch sin 8.000 MU RM
  249 + 0 105 atan DU cos 8.000 MU 325 exch SU
  250 + exch sin 8.000 MU 340 exch SU L
  251 + TGSM
  252 + 1 W
  253 + S
  254 +GR
  255 +GS
  256 + TGSM
  257 + NP
  258 + 220 340 8.000 3.000 -105 0 TGAT
  259 + 1 SG CP F
  260 + 0 SG
  261 + NP
  262 + 220 340 8.000 3.000 -105 0 TGAT
  263 + CP F
  264 +GR
  265 +GS
  266 + TGSM
  267 + NP
  268 + 325 340 8.000 3.000 105 0 TGAT
  269 + 1 SG CP F
  270 + 0 SG
  271 + NP
  272 + 325 340 8.000 3.000 105 0 TGAT
  273 + CP F
  274 +GR
  275 +
  276 +% TEXT
  277 +NP
  278 +0 SG
  279 + GS
  280 + 1 W
  281 + 220 325 M
  282 + GS
  283 + 0 SG
  284 + /Courier FF [24 0 0 -24 0 0] MS
  285 + (separation) SH
  286 + GR
  287 + GR
  288 +
  289 +% BOX
  290 +1.000 0.000 0.000 RG
  291 +GS
  292 + 10 SM
  293 + GS
  294 + NP 55 360 M 920 360 L 920 790 L 55 790 L CP
  295 + 2 W
  296 + S
  297 + GR
  298 +GR
  299 +
  300 +% BOX
  301 +0 SG
  302 +GS
  303 + 10 SM
  304 + GS
  305 + NP 330 390 M 480 390 L 480 420 L 330 420 L CP
  306 + 3 W
  307 + S
  308 + GR
  309 +GR
  310 +
  311 +% BOX
  312 +0 SG
  313 +GS
  314 + 10 SM
  315 + GS
  316 + NP 695 390 M 845 390 L 845 420 L 695 420 L CP
  317 + 3 W
  318 + S
  319 + GR
  320 +GR
  321 +
  322 +% POLY/OPEN-SPLINE
  323 +0 SG
  324 +GS
  325 + [16 16] 0 SD
  326 + NP
  327 + 495 410 M
  328 + 655 410 L
  329 + TGSM
  330 + 4 W
  331 + S
  332 + [] 0 SD
  333 + 1 W
  334 +GR
  335 +
  336 +% TEXT
  337 +NP
  338 +0 SG
  339 + GS
  340 + 1 W
  341 + 315 475 M
  342 + GS
  343 + 1.000 0.000 1.000 RG
  344 + /Courier FF [24 0 0 -24 0 0] MS
  345 + (Conductor No 2) SH
  346 + GR
  347 + GR
  348 +
  349 +% TEXT
  350 +NP
  351 +0 SG
  352 + GS
  353 + 1 W
  354 + 730 835 M
  355 + GS
  356 + 1.000 0.000 1.000 RG
  357 + /Courier FF [24 0 0 -24 0 0] MS
  358 + (Conductor No nc) SH
  359 + GR
  360 + GR
  361 +
  362 +% BOX
  363 +0 SG
  364 +GS
  365 + 10 SM
  366 + GS
  367 + NP 100 740 M 875 740 L 875 755 L 100 755 L CP
  368 + 3 W
  369 + S
  370 + GR
  371 +GR
  372 +
  373 +% BOX
  374 +0 SG
  375 +GS
  376 + 10 SM
  377 + GS
  378 + NP 130 595 M 280 595 L 280 625 L 130 625 L CP
  379 + 3 W
  380 + S
  381 + GR
  382 +GR
  383 +
  384 +% BOX
  385 +0 SG
  386 +GS
  387 + 10 SM
  388 + GS
  389 + NP 400 595 M 553 595 L 553 625 L 400 625 L CP
  390 + 3 W
  391 + S
  392 + GR
  393 +GR
  394 +
  395 +% POLY/OPEN-SPLINE
  396 +0 SG
  397 +GS
  398 + [16 16] 0 SD
  399 + NP
  400 + 296 610 M
  401 + 384 610 L
  402 + TGSM
  403 + 4 W
  404 + S
  405 + [] 0 SD
  406 + 1 W
  407 +GR
  408 +
  409 +% POLY/OPEN-SPLINE
  410 +0 SG
  411 +GS
  412 + [4 12] 0 SD
  413 + NP
  414 + 230 665 M
  415 + 230 730 L
  416 + TGSM
  417 + 4 W
  418 + S
  419 + [] 0 SD
  420 + 1 W
  421 +GR
  422 +
  423 +% POLY/OPEN-SPLINE
  424 +0 SG
  425 +GS
  426 + [4 12] 0 SD
  427 + NP
  428 + 750 660 M
  429 + 750 725 L
  430 + TGSM
  431 + 4 W
  432 + S
  433 + [] 0 SD
  434 + 1 W
  435 +GR
  436 +
  437 +% POLY/OPEN-SPLINE
  438 +1.000 0.000 1.000 RG
  439 +GS
  440 + NP
  441 + 850 805 M
  442 + -60 -80 atan DU cos 8.000 MU 770 exch SU
  443 + exch sin 8.000 MU 745 exch SU L
  444 + TGSM
  445 + 1 W
  446 + S
  447 +GR
  448 +GS
  449 + TGSM
  450 + NP
  451 + 770 745 8.000 3.000 -80 -60 TGAT
  452 + 1 SG CP F
  453 + 1.000 0.000 1.000 RG
  454 + NP
  455 + 770 745 8.000 3.000 -80 -60 TGAT
  456 + CP F
  457 +GR
  458 +
  459 +% POLY/OPEN-SPLINE
  460 +1.000 0.000 1.000 RG
  461 +GS
  462 + NP
  463 + 175 450 M
  464 + -45 -5 atan DU cos 8.000 MU 170 exch SU
  465 + exch sin 8.000 MU 405 exch SU L
  466 + TGSM
  467 + 1 W
  468 + S
  469 +GR
  470 +GS
  471 + TGSM
  472 + NP
  473 + 170 405 8.000 3.000 -5 -45 TGAT
  474 + 1 SG CP F
  475 + 1.000 0.000 1.000 RG
  476 + NP
  477 + 170 405 8.000 3.000 -5 -45 TGAT
  478 + CP F
  479 +GR
  480 +
  481 +% POLY/OPEN-SPLINE
  482 +1.000 0.000 1.000 RG
  483 +GS
  484 + NP
  485 + 425 460 M
  486 + -55 -10 atan DU cos 8.000 MU 415 exch SU
  487 + exch sin 8.000 MU 405 exch SU L
  488 + TGSM
  489 + 1 W
  490 + S
  491 +GR
  492 +GS
  493 + TGSM
  494 + NP
  495 + 415 405 8.000 3.000 -10 -55 TGAT
  496 + 1 SG CP F
  497 + 1.000 0.000 1.000 RG
  498 + NP
  499 + 415 405 8.000 3.000 -10 -55 TGAT
  500 + CP F
  501 +GR
  502 +
  503 +% TEXT
  504 +NP
  505 +0 SG
  506 + GS
  507 + 1 W
  508 + 950 275 M
  509 + GS
  510 + 0 SG
  511 + /Courier FF [24 0 0 -24 0 0] MS
  512 + (Row ) SH
  513 + GR
  514 + 0 24 RM
  515 + GS
  516 + 0 SG
  517 + /Courier FF [24 0 0 -24 0 0] MS
  518 + (Number) SH
  519 + GR
  520 + GR
  521 +
  522 +% POLY/OPEN-SPLINE
  523 +0 SG
  524 +GS
  525 + NP
  526 + 985 310 M
  527 + 55 0 atan DU cos 8.000 MU 985 exch SU
  528 + exch sin 8.000 MU 365 exch SU L
  529 + TGSM
  530 + 1 W
  531 + S
  532 +GR
  533 +GS
  534 + TGSM
  535 + NP
  536 + 985 365 8.000 3.000 0 55 TGAT
  537 + 1 SG CP F
  538 + 0 SG
  539 + NP
  540 + 985 365 8.000 3.000 0 55 TGAT
  541 + CP F
  542 +GR
  543 +
  544 +% TEXT
  545 +NP
  546 +0 SG
  547 + GS
  548 + 1 W
  549 + 970 405 M
  550 + GS
  551 + 0 SG
  552 + /Courier FF [24 0 0 -24 0 0] MS
  553 + (1) SH
  554 + GR
  555 + GR
  556 +
  557 +% TEXT
  558 +NP
  559 +0 SG
  560 + GS
  561 + 1 W
  562 + 975 620 M
  563 + GS
  564 + 0 SG
  565 + /Courier FF [24 0 0 -24 0 0] MS
  566 + (2) SH
  567 + GR
  568 + GR
  569 +
  570 +% TEXT
  571 +NP
  572 +0 SG
  573 + GS
  574 + 1 W
  575 + 940 760 M
  576 + GS
  577 + 0 SG
  578 + /Courier FF [24 0 0 -24 0 0] MS
  579 + (n_rows) SH
  580 + GR
  581 + GR
  582 +
  583 +% POLY/OPEN-SPLINE
  584 +0 SG
  585 +GS
  586 + [4 12] 0 SD
  587 + NP
  588 + 980 650 M
  589 + 980 715 L
  590 + TGSM
  591 + 4 W
  592 + S
  593 + [] 0 SD
  594 + 1 W
  595 +GR
  596 +
  597 +% POLY/OPEN-SPLINE
  598 +0 SG
  599 +GS
  600 + NP
  601 + 475 555 M
  602 + -370 0 atan DU cos 8.000 MU 475 exch SU
  603 + exch sin 8.000 MU 185 exch SU L
  604 + TGSM
  605 + 1 W
  606 + S
  607 +GR
  608 +GS
  609 + TGSM
  610 + NP
  611 + 475 185 8.000 3.000 0 -370 TGAT
  612 + 1 SG CP F
  613 + 0 SG
  614 + NP
  615 + 475 185 8.000 3.000 0 -370 TGAT
  616 + CP F
  617 +GR
  618 +
  619 +% POLY/OPEN-SPLINE
  620 +0 SG
  621 +GS
  622 + NP
  623 + 475 555 M
  624 + 0 485 atan DU cos 8.000 MU 960 exch SU
  625 + exch sin 8.000 MU 555 exch SU L
  626 + TGSM
  627 + 1 W
  628 + S
  629 +GR
  630 +GS
  631 + TGSM
  632 + NP
  633 + 960 555 8.000 3.000 485 0 TGAT
  634 + 1 SG CP F
  635 + 0 SG
  636 + NP
  637 + 960 555 8.000 3.000 485 0 TGAT
  638 + CP F
  639 +GR
  640 +
  641 +% TEXT
  642 +NP
  643 +0 SG
  644 + GS
  645 + 1 W
  646 + 490 190 M
  647 + GS
  648 + 0 SG
  649 + /Courier FF [24 0 0 -24 0 0] MS
  650 + (y) SH
  651 + GR
  652 + GR
  653 +
  654 +% TEXT
  655 +NP
  656 +0 SG
  657 + GS
  658 + 1 W
  659 + 940 540 M
  660 + GS
  661 + 0 SG
  662 + /Courier FF [24 0 0 -24 0 0] MS
  663 + (x) SH
  664 + GR
  665 + GR
  666 +
  667 +% POLY/OPEN-SPLINE
  668 +0 SG
  669 +GS
  670 + NP
  671 + 55 280 M
  672 + 0 860 atan DU cos 8.000 MU exch sin 8.000 MU RM
  673 + 0 860 atan DU cos 8.000 MU 915 exch SU
  674 + exch sin 8.000 MU 280 exch SU L
  675 + TGSM
  676 + 1 W
  677 + S
  678 +GR
  679 +GS
  680 + TGSM
  681 + NP
  682 + 55 280 8.000 3.000 -860 0 TGAT
  683 + 1 SG CP F
  684 + 0 SG
  685 + NP
  686 + 55 280 8.000 3.000 -860 0 TGAT
  687 + CP F
  688 +GR
  689 +GS
  690 + TGSM
  691 + NP
  692 + 915 280 8.000 3.000 860 0 TGAT
  693 + 1 SG CP F
  694 + 0 SG
  695 + NP
  696 + 915 280 8.000 3.000 860 0 TGAT
  697 + CP F
  698 +GR
  699 +
  700 +% TEXT
  701 +NP
  702 +0 SG
  703 + GS
  704 + 1 W
  705 + 320 265 M
  706 + GS
  707 + 0 SG
  708 + /Courier FF [24 0 0 -24 0 0] MS
  709 + (dielectric width) SH
  710 + GR
  711 + GR
  712 +
  713 +% POLY/OPEN-SPLINE
  714 +0 SG
  715 +GS
  716 + NP
  717 + 30 360 M
  718 + 425 0 atan DU cos 8.000 MU exch sin 8.000 MU RM
  719 + 425 0 atan DU cos 8.000 MU 30 exch SU
  720 + exch sin 8.000 MU 785 exch SU L
  721 + TGSM
  722 + 1 W
  723 + S
  724 +GR
  725 +GS
  726 + TGSM
  727 + NP
  728 + 30 360 8.000 3.000 0 -425 TGAT
  729 + 1 SG CP F
  730 + 0 SG
  731 + NP
  732 + 30 360 8.000 3.000 0 -425 TGAT
  733 + CP F
  734 +GR
  735 +GS
  736 + TGSM
  737 + NP
  738 + 30 785 8.000 3.000 0 425 TGAT
  739 + 1 SG CP F
  740 + 0 SG
  741 + NP
  742 + 30 785 8.000 3.000 0 425 TGAT
  743 + CP F
  744 +GR
  745 +
  746 +% TEXT
  747 +NP
  748 +0 SG
  749 +GS
  750 + -192 584 TR
  751 + [0.000 -1.000 1.000 0.000 193 107] CO
  752 + -192 NE 584 NE TR
  753 +GR
  754 + GS
  755 + 1 W
  756 + -192 584 TR
  757 + [0.000 -1.000 1.000 0.000 193 107] CO
  758 + 0 19 M
  759 + GS
  760 + 0 SG
  761 + /Courier FF [24 0 0 -24 0 0] MS
  762 + (dielectric height) SH
  763 + GR
  764 + GR
  765 +
  766 +% POLY/OPEN-SPLINE
  767 +0.000 0.000 1.000 RG
  768 +GS
  769 + NP
  770 + 475 555 M
  771 + -150 -45 atan DU cos 8.000 MU 430 exch SU
  772 + exch sin 8.000 MU 405 exch SU L
  773 + TGSM
  774 + 1 W
  775 + S
  776 +GR
  777 +GS
  778 + TGSM
  779 + NP
  780 + 430 405 8.000 3.000 -45 -150 TGAT
  781 + 1 SG CP F
  782 + 0.000 0.000 1.000 RG
  783 + NP
  784 + 430 405 8.000 3.000 -45 -150 TGAT
  785 + CP F
  786 +GR
  787 +
  788 +% TEXT
  789 +NP
  790 + /tgifstrw 0 def
  791 + /tgifstrw tgifstrw
  792 + /Courier FF [24 0 0 -24 0 0] MS
  793 + (row 1 offset) TGSW
  794 + add def
  795 +0 SG
  796 +NP 280 500 M tgifstrw 0 RL 0 25 RL tgifstrw neg 0 RL CP 1 SG F
  797 +0 SG
  798 + GS
  799 + 1 W
  800 + 280 520 M
  801 + GS
  802 + 0.000 0.000 1.000 RG
  803 + /Courier FF [24 0 0 -24 0 0] MS
  804 + (row 1 offset) SH
  805 + GR
  806 + GR
  807 +
  808 +% POLY/OPEN-SPLINE
  809 +0.000 0.000 1.000 RG
  810 +GS
  811 + NP
  812 + 475 555 M
  813 + 55 -135 atan DU cos 8.000 MU 340 exch SU
  814 + exch sin 8.000 MU 610 exch SU L
  815 + TGSM
  816 + 1 W
  817 + S
  818 +GR
  819 +GS
  820 + TGSM
  821 + NP
  822 + 340 610 8.000 3.000 -135 55 TGAT
  823 + 1 SG CP F
  824 + 0.000 0.000 1.000 RG
  825 + NP
  826 + 340 610 8.000 3.000 -135 55 TGAT
  827 + CP F
  828 +GR
  829 +
  830 +% TEXT
  831 +NP
  832 +0 SG
  833 + GS
  834 + 1 W
  835 + 205 580 M
  836 + GS
  837 + 0.000 0.000 1.000 RG
  838 + /Courier FF [24 0 0 -24 0 0] MS
  839 + (row 2 offset) SH
  840 + GR
  841 + GR
  842 +
  843 +% POLY/OPEN-SPLINE
  844 +0.000 0.000 1.000 RG
  845 +GS
  846 + NP
  847 + 475 555 M
  848 + 190 0 atan DU cos 8.000 MU 475 exch SU
  849 + exch sin 8.000 MU 745 exch SU L
  850 + TGSM
  851 + 1 W
  852 + S
  853 +GR
  854 +GS
  855 + TGSM
  856 + NP
  857 + 475 745 8.000 3.000 0 190 TGAT
  858 + 1 SG CP F
  859 + 0.000 0.000 1.000 RG
  860 + NP
  861 + 475 745 8.000 3.000 0 190 TGAT
  862 + CP F
  863 +GR
  864 +
  865 +% TEXT
  866 +NP
  867 +0 SG
  868 + GS
  869 + 1 W
  870 + 490 695 M
  871 + GS
  872 + 0.000 0.000 1.000 RG
  873 + /Courier FF [24 0 0 -24 0 0] MS
  874 + (row n offset) SH
  875 + GR
  876 + GR
  877 +
  878 +% TEXT
  879 +NP
  880 +0 SG
  881 + GS
  882 + 1 W
  883 + 665 455 M
  884 + GS
  885 + 1.000 0.000 1.000 RG
  886 + /Courier FF [24 0 0 -24 0 0] MS
  887 + (Conductor No n,) SH
  888 + GR
  889 + 0 24 RM
  890 + GS
  891 + 1.000 0.000 1.000 RG
  892 + /Courier FF [24 0 0 -24 0 0] MS
  893 + (row 1) SH
  894 + GR
  895 + GR
  896 +
  897 +% POLY/OPEN-SPLINE
  898 +1.000 0.000 1.000 RG
  899 +GS
  900 + NP
  901 + 765 435 M
  902 + -30 5 atan DU cos 8.000 MU 770 exch SU
  903 + exch sin 8.000 MU 405 exch SU L
  904 + TGSM
  905 + 1 W
  906 + S
  907 +GR
  908 +GS
  909 + TGSM
  910 + NP
  911 + 770 405 8.000 3.000 5 -30 TGAT
  912 + 1 SG CP F
  913 + 1.000 0.000 1.000 RG
  914 + NP
  915 + 770 405 8.000 3.000 5 -30 TGAT
  916 + CP F
  917 +GR
  918 +
  919 +GR
  920 +tgifsavedpage restore
  921 +end
  922 +showpage
  923 +
  924 +%%Trailer
  925 +%MatchingCreationDate: Wed Jun 20 11:47:45 2018
  926 +%%DocumentFonts: Courier
  927 +%%EOF
... ...
DOCUMENTATION/USER_GUIDE/Imgs/ML_flex_cable.obj 0 → 100644
... ... @@ -0,0 +1,343 @@
  1 +%TGIF 4.2.5-QPL
  2 +state(0,37,100.000,0,176,0,16,1,14,1,1,0,0,1,2,1,0,'Courier',0,138240,0,0,1,5,0,0,1,1,0,16,0,0,1,1,1,1,1050,1485,1,0,2880,0).
  3 +%
  4 +% @(#)$Header$
  5 +% %W%
  6 +%
  7 +unit("1 pixel/pixel").
  8 +color_info(50,65535,0,[
  9 + "Black", 0, 0, 0, 0, 0, 0, 1,
  10 + "White", 65535, 65535, 65535, 65535, 65535, 65535, 1,
  11 + "#000080", 0, 0, 32896, 0, 0, 32768, 1,
  12 + "#008000", 0, 32896, 0, 0, 32768, 0, 1,
  13 + "#008080", 0, 32896, 32896, 0, 32768, 32768, 1,
  14 + "#800000", 32896, 0, 0, 32768, 0, 0, 1,
  15 + "#800080", 32896, 0, 32896, 32768, 0, 32768, 1,
  16 + "#ff8000", 65535, 32896, 0, 65280, 32768, 0, 1,
  17 + "#808080", 32896, 32896, 32896, 32768, 32768, 32768, 1,
  18 + "#c0c0c0", 49344, 49344, 49344, 49152, 49152, 49152, 1,
  19 + "#0000ff", 0, 0, 65535, 0, 0, 65280, 1,
  20 + "#00ff00", 0, 65535, 0, 0, 65280, 0, 1,
  21 + "#00ffff", 0, 65535, 65535, 0, 65280, 65280, 1,
  22 + "#ff0000", 65535, 0, 0, 65280, 0, 0, 1,
  23 + "#ff00ff", 65535, 0, 65535, 65280, 0, 65280, 1,
  24 + "#ffff00", 65535, 65535, 0, 65280, 65280, 0, 1,
  25 + "#4c4c4c", 19532, 19532, 19532, 19456, 19456, 19456, 1,
  26 + "#b3b3b3", 46003, 46003, 46003, 45824, 45824, 45824, 1,
  27 + "#e6e6e6", 59110, 59110, 59110, 58880, 58880, 58880, 1,
  28 + "#dc2300", 56540, 8995, 0, 56320, 8960, 0, 1,
  29 + "#ff3333", 65535, 13107, 13107, 65280, 13056, 13056, 1,
  30 + "#b84747", 47288, 18247, 18247, 47104, 18176, 18176, 1,
  31 + "#99284c", 39321, 10280, 19532, 39168, 10240, 19456, 1,
  32 + "#94476b", 38036, 18247, 27499, 37888, 18176, 27392, 1,
  33 + "#9966cc", 39321, 26214, 52428, 39168, 26112, 52224, 1,
  34 + "#6b2394", 27499, 8995, 38036, 27392, 8960, 37888, 1,
  35 + "#5e11a6", 24158, 4369, 42662, 24064, 4352, 42496, 1,
  36 + "#4700b8", 18247, 0, 47288, 18176, 0, 47104, 1,
  37 + "#2323dc", 8995, 8995, 56540, 8960, 8960, 56320, 1,
  38 + "#0099ff", 0, 39321, 65535, 0, 39168, 65280, 1,
  39 + "#99ccff", 39321, 52428, 65535, 39168, 52224, 65280, 1,
  40 + "#00dcff", 0, 56540, 65535, 0, 56320, 65280, 1,
  41 + "#23b8dc", 8995, 47288, 56540, 8960, 47104, 56320, 1,
  42 + "#33a3a3", 13107, 41891, 41891, 13056, 41728, 41728, 1,
  43 + "#355e00", 13621, 24158, 0, 13568, 24064, 0, 1,
  44 + "#7da647", 32125, 42662, 18247, 32000, 42496, 18176, 1,
  45 + "#00ae00", 0, 44718, 0, 0, 44544, 0, 1,
  46 + "#3deb3d", 15677, 60395, 15677, 15616, 60160, 15616, 1,
  47 + "#ffff99", 65535, 65535, 39321, 65280, 65280, 39168, 1,
  48 + "#e6e64c", 59110, 59110, 19532, 58880, 58880, 19456, 1,
  49 + "#b3b300", 46003, 46003, 0, 45824, 45824, 0, 1,
  50 + "#666600", 26214, 26214, 0, 26112, 26112, 0, 1,
  51 + "#4c1900", 19532, 6425, 0, 19456, 6400, 0, 1,
  52 + "#663300", 26214, 13107, 0, 26112, 13056, 0, 1,
  53 + "#804c19", 32896, 19532, 6425, 32768, 19456, 6400, 1,
  54 + "#996633", 39321, 26214, 13107, 39168, 26112, 13056, 1,
  55 + "#cc6633", 52428, 26214, 13107, 52224, 26112, 13056, 1,
  56 + "#ff6633", 65535, 26214, 13107, 65280, 26112, 13056, 1,
  57 + "#ff9966", 65535, 39321, 26214, 65280, 39168, 26112, 1,
  58 + "#ffcc99", 65535, 52428, 39321, 65280, 52224, 39168, 1
  59 +]).
  60 +script_frac("0.6").
  61 +fg_bg_colors('#ff00ff','white').
  62 +dont_reencode("FFDingbests:ZapfDingbats").
  63 +objshadow_info('#c0c0c0',2,2).
  64 +rotate_pivot(0,0,0,0).
  65 +spline_tightness(1).
  66 +page(1,"",1,'').
  67 +text('Black',260,861,1,0,1,480,24,27,19,5,0,0,0,0,-65534,480,24,0,0,"",0,0,0,0,880,'',[
  68 +minilines(480,24,0,0,0,0,0,[
  69 +mini_line(480,19,5,0,0,0,[
  70 +str_block(0,480,19,5,0,-2,0,0,0,[
  71 +str_seg('Black','Courier',0,138240,480,19,5,0,-2,0,0,0,0,0,
  72 + "Multi-layer conductor Flex cable")])
  73 +])
  74 +])]).
  75 +text('Black',120,306,1,0,1,75,24,173,19,5,0,0,0,0,-65534,75,24,0,0,"",0,0,0,0,325,'',[
  76 +minilines(75,24,0,0,0,0,0,[
  77 +mini_line(75,19,5,0,0,0,[
  78 +str_block(0,75,19,5,0,-1,0,0,0,[
  79 +str_seg('Black','Courier',0,138240,75,19,5,0,-1,0,0,0,0,0,
  80 + "width")])
  81 +])
  82 +])]).
  83 +text('Black',70,456,1,0,1,210,24,284,19,5,0,0,0,0,-65534,210,24,0,0,"",0,0,0,0,475,'',[
  84 +minilines(210,24,0,0,0,0,0,[
  85 +mini_line(210,19,5,0,0,0,[
  86 +str_block(0,210,19,5,0,-3,0,0,0,[
  87 +str_seg('#ff00ff','Courier',0,138240,210,19,5,0,-3,0,0,0,0,0,
  88 + "Conductor No 1")])
  89 +])
  90 +])]).
  91 +text('Black',235,391,1,0,1,90,24,288,19,5,0,0,0,0,-65534,90,24,0,0,"",0,0,0,0,410,'',[
  92 +minilines(90,24,0,0,0,0,0,[
  93 +mini_line(90,19,5,0,0,0,[
  94 +str_block(0,90,19,5,0,-3,0,0,0,[
  95 +str_seg('Black','Courier',0,138240,90,19,5,0,-3,0,0,0,0,0,
  96 + "height")])
  97 +])
  98 +])]).
  99 +box('Black','',70,390,220,420,0,3,1,291,0,0,0,0,0,'3',0,[
  100 +]).
  101 +poly('Black','',2,[
  102 + 70,340,220,340],3,1,1,300,0,0,0,0,0,0,0,'1',0,0,
  103 + "0","",[
  104 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  105 +]).
  106 +poly('Black','',2,[
  107 + 230,390,230,420],3,1,1,316,0,0,0,0,0,0,0,'1',0,0,
  108 + "0","",[
  109 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  110 +]).
  111 +poly('Black','',2,[
  112 + 220,340,325,340],3,1,1,319,0,0,0,0,0,0,0,'1',0,0,
  113 + "0","",[
  114 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  115 +]).
  116 +text('Black',220,306,1,0,1,150,24,320,19,5,0,0,0,0,-65534,150,24,0,0,"",0,0,0,0,325,'',[
  117 +minilines(150,24,0,0,0,0,0,[
  118 +mini_line(150,19,5,0,0,0,[
  119 +str_block(0,150,19,5,0,-1,0,0,0,[
  120 +str_seg('Black','Courier',0,138240,150,19,5,0,-1,0,0,0,0,0,
  121 + "separation")])
  122 +])
  123 +])]).
  124 +box('#ff0000','',55,360,920,790,0,2,1,322,0,0,0,0,0,'2',0,[
  125 +]).
  126 +box('Black','',330,390,480,420,0,3,1,325,0,0,0,0,0,'3',0,[
  127 +]).
  128 +box('Black','',695,390,845,420,0,3,1,326,0,0,0,0,0,'3',0,[
  129 +]).
  130 +poly('Black','',2,[
  131 + 495,410,655,410],0,4,1,330,0,0,7,0,0,0,0,'4',0,0,
  132 + "0","",[
  133 + 0,14,6,0,'14','6','0'],[0,14,6,0,'14','6','0'],[
  134 +]).
  135 +text('Black',315,456,1,0,1,210,24,353,19,5,0,0,0,0,-65534,210,24,0,0,"",0,0,0,0,475,'',[
  136 +minilines(210,24,0,0,0,0,0,[
  137 +mini_line(210,19,5,0,0,0,[
  138 +str_block(0,210,19,5,0,-4,0,0,0,[
  139 +str_seg('#ff00ff','Courier',0,138240,210,19,5,0,-4,0,0,0,0,0,
  140 + "Conductor No 2")])
  141 +])
  142 +])]).
  143 +text('Black',730,816,1,0,1,225,24,356,19,5,0,0,0,0,-65534,225,24,0,0,"",0,0,0,0,835,'',[
  144 +minilines(225,24,0,0,0,0,0,[
  145 +mini_line(225,19,5,0,0,0,[
  146 +str_block(0,225,19,5,0,-2,0,0,0,[
  147 +str_seg('#ff00ff','Courier',0,138240,225,19,5,0,-2,0,0,0,0,0,
  148 + "Conductor No nc")])
  149 +])
  150 +])]).
  151 +box('Black','',100,740,875,755,0,3,1,369,0,0,0,0,0,'3',0,[
  152 +]).
  153 +box('Black','',130,595,280,625,0,3,1,379,0,0,0,0,0,'3',0,[
  154 +]).
  155 +box('Black','',400,595,553,625,0,3,1,382,0,0,0,0,0,'3',0,[
  156 +]).
  157 +poly('Black','',2,[
  158 + 296,610,384,610],0,4,1,383,0,0,7,0,0,0,0,'4',0,0,
  159 + "0","",[
  160 + 0,14,6,0,'14','6','0'],[0,14,6,0,'14','6','0'],[
  161 +]).
  162 +poly('Black','',2,[
  163 + 230,665,230,730],0,4,1,391,0,0,1,0,0,0,0,'4',0,0,
  164 + "0","",[
  165 + 0,14,6,0,'14','6','0'],[0,14,6,0,'14','6','0'],[
  166 +]).
  167 +poly('Black','',2,[
  168 + 750,660,750,725],0,4,1,399,0,0,1,0,0,0,0,'4',0,0,
  169 + "0","",[
  170 + 0,14,6,0,'14','6','0'],[0,14,6,0,'14','6','0'],[
  171 +]).
  172 +poly('#ff00ff','',2,[
  173 + 850,805,770,745],1,1,1,401,0,0,0,0,0,0,0,'1',0,0,
  174 + "0","",[
  175 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  176 +]).
  177 +poly('#ff00ff','',2,[
  178 + 175,450,170,405],1,1,1,403,0,0,0,0,0,0,0,'1',0,0,
  179 + "0","",[
  180 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  181 +]).
  182 +poly('#ff00ff','',2,[
  183 + 425,460,415,405],1,1,1,408,0,0,0,0,0,0,0,'1',0,0,
  184 + "0","",[
  185 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  186 +]).
  187 +text('Black',950,256,2,0,1,90,48,410,19,5,0,0,0,0,-65534,90,48,0,0,"",0,0,0,0,275,'',[
  188 +minilines(90,48,0,0,0,0,0,[
  189 +mini_line(60,19,5,0,0,0,[
  190 +str_block(0,60,19,5,0,-14,0,0,0,[
  191 +str_seg('Black','Courier',0,138240,60,19,5,0,-14,0,0,0,0,0,
  192 + "Row ")])
  193 +]),
  194 +mini_line(90,19,5,0,0,0,[
  195 +str_block(0,90,19,5,0,-2,0,0,0,[
  196 +str_seg('Black','Courier',0,138240,90,19,5,0,-2,0,0,0,0,0,
  197 + "Number")])
  198 +])
  199 +])]).
  200 +poly('Black','',2,[
  201 + 985,310,985,365],1,1,1,412,0,0,0,0,0,0,0,'1',0,0,
  202 + "0","",[
  203 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  204 +]).
  205 +text('Black',970,386,1,0,1,15,24,413,19,5,0,0,0,0,-65534,15,24,0,0,"",0,0,0,0,405,'',[
  206 +minilines(15,24,0,0,0,0,0,[
  207 +mini_line(15,19,5,0,0,0,[
  208 +str_block(0,15,19,5,0,-3,0,0,0,[
  209 +str_seg('Black','Courier',0,138240,15,19,5,0,-3,0,0,0,0,0,
  210 + "1")])
  211 +])
  212 +])]).
  213 +text('Black',975,601,1,0,1,15,24,415,19,5,0,0,0,0,-65534,15,24,0,0,"",0,0,0,0,620,'',[
  214 +minilines(15,24,0,0,0,0,0,[
  215 +mini_line(15,19,5,0,0,0,[
  216 +str_block(0,15,19,5,0,-4,0,0,0,[
  217 +str_seg('Black','Courier',0,138240,15,19,5,0,-4,0,0,0,0,0,
  218 + "2")])
  219 +])
  220 +])]).
  221 +text('Black',940,741,1,0,1,90,24,417,19,5,0,0,0,0,-65534,90,24,0,0,"",0,0,0,0,760,'',[
  222 +minilines(90,24,0,0,0,0,0,[
  223 +mini_line(90,19,5,0,0,0,[
  224 +str_block(0,90,19,5,0,-3,0,0,0,[
  225 +str_seg('Black','Courier',0,138240,90,19,5,0,-3,0,0,0,0,0,
  226 + "n_rows")])
  227 +])
  228 +])]).
  229 +poly('Black','',2,[
  230 + 980,650,980,715],0,4,1,420,0,0,1,0,0,0,0,'4',0,0,
  231 + "0","",[
  232 + 0,14,6,0,'14','6','0'],[0,14,6,0,'14','6','0'],[
  233 +]).
  234 +poly('Black','',2,[
  235 + 475,555,475,185],1,1,1,421,0,0,0,0,0,0,0,'1',0,0,
  236 + "0","",[
  237 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  238 +]).
  239 +poly('Black','',2,[
  240 + 475,555,960,555],1,1,1,422,0,0,0,0,0,0,0,'1',0,0,
  241 + "0","",[
  242 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  243 +]).
  244 +text('Black',490,171,1,0,1,15,24,423,19,5,0,0,0,0,-65534,15,24,0,0,"",0,0,0,0,190,'',[
  245 +minilines(15,24,0,0,0,0,0,[
  246 +mini_line(15,19,5,0,0,0,[
  247 +str_block(0,15,19,5,0,-2,0,0,0,[
  248 +str_seg('Black','Courier',0,138240,15,19,5,0,-2,0,0,0,0,0,
  249 + "y")])
  250 +])
  251 +])]).
  252 +text('Black',940,521,1,0,1,15,24,425,19,5,0,0,0,0,-65534,15,24,0,0,"",0,0,0,0,540,'',[
  253 +minilines(15,24,0,0,0,0,0,[
  254 +mini_line(15,19,5,0,0,0,[
  255 +str_block(0,15,19,5,0,-1,0,0,0,[
  256 +str_seg('Black','Courier',0,138240,15,19,5,0,-1,0,0,0,0,0,
  257 + "x")])
  258 +])
  259 +])]).
  260 +poly('Black','',2,[
  261 + 55,280,915,280],3,1,1,431,0,0,0,0,0,0,0,'1',0,0,
  262 + "0","",[
  263 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  264 +]).
  265 +text('Black',320,246,1,0,1,240,24,432,19,5,0,0,0,0,-65534,240,24,0,0,"",0,0,0,0,265,'',[
  266 +minilines(240,24,0,0,0,0,0,[
  267 +mini_line(240,19,5,0,0,0,[
  268 +str_block(0,240,19,5,0,-1,0,0,0,[
  269 +str_seg('Black','Courier',0,138240,240,19,5,0,-1,0,0,0,0,0,
  270 + "dielectric width")])
  271 +])
  272 +])]).
  273 +poly('Black','',2,[
  274 + 30,360,30,785],3,1,1,436,0,0,0,0,0,0,0,'1',0,0,
  275 + "0","",[
  276 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  277 +]).
  278 +text('Black',-192,584,1,0,1,24,255,437,19,5,0,0,0,0,-65534,255,24,0,0,"",0,1,0,0,603,'',[
  279 + -192,584,-192,584,63,608,1.74623e-13,-1000,1000,1.74623e-13,193,107,-193,583,64,609],[
  280 +minilines(255,24,0,0,0,0,0,[
  281 +mini_line(255,19,5,0,0,0,[
  282 +str_block(0,255,19,5,0,-3,0,0,0,[
  283 +str_seg('Black','Courier',0,138240,255,19,5,0,-3,0,0,0,0,0,
  284 + "dielectric height")])
  285 +])
  286 +])]).
  287 +poly('#0000ff','',2,[
  288 + 475,555,430,405],1,1,1,455,0,0,0,0,0,0,0,'1',0,0,
  289 + "0","",[
  290 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  291 +]).
  292 +text('Black',280,501,1,0,1,180,24,458,19,5,2,0,0,0,-65534,180,24,0,0,"",0,0,0,0,520,'',[
  293 +minilines(180,24,0,0,0,0,0,[
  294 +mini_line(180,19,5,0,0,0,[
  295 +str_block(0,180,19,5,0,-3,0,0,0,[
  296 +str_seg('#0000ff','Courier',0,138240,180,19,5,0,-3,0,0,0,0,0,
  297 + "row 1 offset")])
  298 +])
  299 +])]).
  300 +poly('#0000ff','',2,[
  301 + 475,555,340,610],1,1,1,462,0,0,0,0,0,0,0,'1',0,0,
  302 + "0","",[
  303 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  304 +]).
  305 +text('Black',205,561,1,0,1,180,24,464,19,5,0,0,0,0,-65534,180,24,0,0,"",0,0,0,0,580,'',[
  306 +minilines(180,24,0,0,0,0,0,[
  307 +mini_line(180,19,5,0,0,0,[
  308 +str_block(0,180,19,5,0,-3,0,0,0,[
  309 +str_seg('#0000ff','Courier',0,138240,180,19,5,0,-3,0,0,0,0,0,
  310 + "row 2 offset")])
  311 +])
  312 +])]).
  313 +poly('#0000ff','',2,[
  314 + 475,555,475,745],1,1,1,466,0,0,0,0,0,0,0,'1',0,0,
  315 + "0","",[
  316 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  317 +]).
  318 +text('Black',490,676,1,0,1,180,24,467,19,5,0,0,0,0,-65534,180,24,0,0,"",0,0,0,0,695,'',[
  319 +minilines(180,24,0,0,0,0,0,[
  320 +mini_line(180,19,5,0,0,0,[
  321 +str_block(0,180,19,5,0,-3,0,0,0,[
  322 +str_seg('#0000ff','Courier',0,138240,180,19,5,0,-3,0,0,0,0,0,
  323 + "row n offset")])
  324 +])
  325 +])]).
  326 +text('Black',665,436,2,0,1,225,48,470,19,5,0,0,0,0,-65534,225,48,0,0,"",0,0,0,0,455,'',[
  327 +minilines(225,48,0,0,0,0,0,[
  328 +mini_line(225,19,5,0,0,0,[
  329 +str_block(0,225,19,5,0,-6,0,0,0,[
  330 +str_seg('#ff00ff','Courier',0,138240,225,19,5,0,-6,0,0,0,0,0,
  331 + "Conductor No n,")])
  332 +]),
  333 +mini_line(75,19,5,0,0,0,[
  334 +str_block(0,75,19,5,0,-3,0,0,0,[
  335 +str_seg('#ff00ff','Courier',0,138240,75,19,5,0,-3,0,0,0,0,0,
  336 + "row 1")])
  337 +])
  338 +])]).
  339 +poly('#ff00ff','',2,[
  340 + 765,435,770,405],1,1,1,559,0,2,0,0,0,0,0,'1',0,0,
  341 + "0","",[
  342 + 0,8,3,0,'8','3','0'],[0,8,3,0,'8','3','0'],[
  343 +]).
... ...
DOCUMENTATION/USER_GUIDE/Tex/creating_a_cable_bundle_model.tex
... ... @@ -71,6 +71,10 @@ In addition to the data required to specify a cable bundle, additional flags may
71 71 \item `verbose' output detailed summary of the software operation and calculation results.\\
72 72 \item `use\_Laplace' use the numerical Laplace solver to calculate inductance and capacitance matrices for the external domain and any overshielded domains. By default, approximate analytic formulae are used. \\
73 73 \item `plot\_mesh' output a vtk file which shows the mesh used in Finite Element Laplace calculations.\\
  74 +\item `direct\_solver' Solve the Finite Element matrix equation using a direct solver i.e. by calculating the matrix inverse. \\
  75 +\item `iterative\_solver' Solve the Finite Element matrix equation using an iterative solver. This is much more efficient than the direct solver and is the default option \\
  76 +\item `inf\_gnd' Include the ground plane as a boundary condition on the y=0 boundary in the Finite Element Laplace solution for the bundle cross section. the outer boundary in this case is a semi-circle. \\
  77 +\item `finite\_gnd' Include the ground plane as a finite conductor in the Finite Element Laplace solution for the bundle cross section. In this case the ground plane is a finite rectangular conductor within a circular boundary. \\
74 78 \end{enumerate}
75 79  
76 80 If the Laplace solver is used then the mesh generation is be controlled by the parameters
... ... @@ -86,10 +90,12 @@ If the Laplace solver is used then the mesh generation is be controlled by the p
86 90 The edge length of elements on a cylindrical conductor of radius r is
87 91 $\frac{r}{Laplace\_surface\_mesh\_constant}$. The default value is 3. \\
88 92  
  93 +\item `Max\_mesh\_edge\_length' This (real) parameter determines the maximum finite element mesh edge length for the rectangular conductors of flex cables. It may be used to force an increase in mesh density in flex cables. \\
  94 +
89 95 \end{enumerate}
90 96  
91 97 The default parameters are a compromise between accuracy and computation time for the Laplace solution.
92   -The default values may be overridden by the user by appending the following to the end of the \textbf{.bundle\_spec file}:
  98 +The default values may be overridden by the user by appending the following to the end of the \textbf{.bundle\_spec} file:
93 99  
94 100 \begin{verbatim}
95 101 Laplace_boundary_constant
... ... @@ -98,6 +104,14 @@ Laplace_surface_mesh_constant
98 104 5
99 105 \end{verbatim}
100 106  
  107 +If the iterative solver is used to solve the Finite Element matrix equations then the tolerance for the iterative solution may be set using the parameter $cg\_tol$. The default value is $10^{-12}$. The parameter may be set (in this example to 1E-14) by including the following lines int the \textbf{.bundle\_spec} file:
  108 +
  109 +\begin{verbatim}
  110 +cg_tol
  111 +1E-14
  112 +\end{verbatim}
  113 +
  114 +
101 115 A ground plane may be included in the bundle as shown in figure \ref{fig_ground_plane_specification}
102 116  
103 117 \begin{figure}[h]
... ...
DOCUMENTATION/USER_GUIDE/Tex/creating_a_cable_model.tex
... ... @@ -214,6 +214,8 @@ The flags which may be applied in a \textbf{cable\_spec} file are as follows:
214 214 \item `use\_Laplace' use the numerical Laplace solver to calculate inductance and capacitance matrices for the internal domains. By default, approximate analytic formulae are used. \\
215 215 \item `no\_Laplace' use the (approximate) analytic formulae to calculate inductance and capacitance matrices for the internal domains. \\
216 216 \item `plot\_mesh' output a vtk file which shows the mesh used in Finite Element Laplace calculations.\\
  217 +\item `direct\_solver' Solve the Finite Element matrix equation using a direct solver i.e. by calculating the matrix inverse. \\
  218 +\item `iterative\_solver' Solve the Finite Element matrix equation using an iterative solver. This is much more efficient than the direct solver and is the default option \\
217 219 \end{enumerate}
218 220  
219 221 If the Laplace solver is used then the mesh generation is controlled by the parameter
... ... @@ -229,6 +231,13 @@ Laplace_surface_mesh_constant
229 231 5
230 232 \end{verbatim}
231 233  
  234 +If the iterative solver is used to solve the Finite Element matrix equations then the tolerance for the iterative solution may be set using the parameter $cg\_tol$. The default value is $10^{-12}$. The parameter may be set (in this example to 1E-14) by including the following lines int the \textbf{.cable\_spec} file:
  235 +
  236 +\begin{verbatim}
  237 +cg_tol
  238 +1E-14
  239 +\end{verbatim}
  240 +
232 241 \subsection{Cable models available} \label{available_cable_models}
233 242  
234 243 The available cable models are described below. For each cable type a figure is provided which shows the cable cross section and the conductor numbering used for the cable. The parameters required to specify a cable are outlined and an example \textbf{.cable\_spec} file is provided.
... ... @@ -809,29 +818,41 @@ Overshield
809 818  
810 819 \subsubsection{Flex cable} \label{flex_cable}
811 820  
812   -Figure \ref{fig:flex_cable} shows the cross section of the flex cable model.
813   -A description of the model parameters is described in table \ref{table_flex_cable} followed by an example. The flex cable differs from most other cable models in that the number of conductors is a parameter of the model. The conductors are numbered from left to right.
  821 +Version 4.0.0 of the SACAMOS software introduces a new flex cable model in which more than one row of conductors can be included within the rectangular dielelctric region. This allows flex cables with multiple layers as well as cables with different conductor dimensions and spacings to be simulated.
  822 +Figure \ref{fig:flex_cable} shows the cross section of the new flex cable model.
  823 +A description of the model parameters is described in table \ref{table_flex_cable} followed by an example. The flex cable differs from most other cable models in that the number of conductors is a parameter of the model. The conductors are numbered from left to right in each row.
814 824  
815 825 \begin{figure}[h]
816 826 \centering
817   -\includegraphics[scale=0.5]{./Imgs/flex_cable.eps}
  827 +\includegraphics[scale=0.65]{./Imgs/ML_flex_cable.eps}
818 828 \caption{flex cable}
819 829 \label{fig:flex_cable}
820 830 \end{figure}
821 831  
  832 +
822 833 \begin{table}[h]
823 834 \begin{center}
824 835 \begin{tabular}{ | p{3cm} | p{3cm} | p{6cm} |}
825 836 \hline
826 837 example value & unit & Comment \\ \hline
827 838 8 & integer & Number of conductors - can be any number of conductors in a flex cable model \\ \hline
828   -6 & integer & Number of parameters, always 6 for flex cables \\ \hline
829   -1.0e-3 & metre & parameter 1: conductor width (x) \\ \hline
830   -0.2e-3 & metre & parameter 2: conductor height (y) \\ \hline
831   -0.6e-3 & metre & parameter 3: conductor separation (x)\\ \hline
832   -1.0e-3 & metre & parameter 4: dielectric offset in x \\ \hline
833   -0.2e-3 & metre & parameter 5: dielectric offset in y \\ \hline
834   -5E7 & Siemens/metre & parameter 6: conductivity \\ \hline
  839 +6 & integer & Number of parameters = (number of rows of conductors)*6+4 \\ \hline
  840 +6.0e-3 & metre & parameter 1: dielectric width (x) \\ \hline
  841 +1.2e-3 & metre & parameter 2: dielectric height (y) \\ \hline
  842 +2 & integer & parameter 3: number of rows of conductors\\ \hline
  843 +1.0e-3 & metre & parameter 4: row 1 centre offset x \\ \hline
  844 +0.4e-3 & metre & parameter 5: row 1 centre offset y \\ \hline
  845 +0.6e-3 & metre & parameter 6: row 1 conductor width (x dimension) \\ \hline
  846 +1.0e-4 & metre & parameter 7: row 1 conductor height (y dimension) \\ \hline
  847 +0.2e-3 & metre & parameter 8: row 1 conductor separation \\ \hline
  848 +3 & metre & parameter 9: row 1 number of conductors \\ \hline
  849 +1.0e-3 & metre & parameter 10: row 2 centre offset x \\ \hline
  850 +-0.4e-3 & metre & parameter 11: row 2 centre offset y \\ \hline
  851 +0.6e-3 & metre & parameter 12: row 2 conductor width (x dimension) \\ \hline
  852 +1.0e-4 & metre & parameter 13: row 2 conductor height (y dimension) \\ \hline
  853 +0.2e-3 & metre & parameter 14: row 2 conductor separation \\ \hline
  854 +3 & metre & parameter 15: row 2 number of conductors \\ \hline
  855 +5E7 & Siemens/metre & parameter 16: conductivity \\ \hline
835 856 1 & integer & number of frequency dependent parameters \\ \hline
836 857 $\epsilon\left(j\omega \right)$ & rational function coefficients & Frequency dependent dielectric relative permittivity model\\ \hline
837 858 \end{tabular}
... ... @@ -848,24 +869,30 @@ $\epsilon\left(j\omega \right)$ & rational function coefficients & Frequency dep
848 869 \begin{verbatim}
849 870 #MOD_cable_lib_dir
850 871 .
851   -Flex_cable
  872 +flex_cable
852 873 3 # number of conductors
853   -6 # number of parameters
854   -1.0e-3 # parameter 1: conductor width (x dimension)
855   -0.25e-3 # parameter 2: conductor height (y dimension)
856   -0.5e-3 # parameter 3: conductor separation (x dimension)
857   -0.2e-3 # parameter 4: dielectric offset x
858   -0.1e-3 # parameter 5: dielectric offset y
859   -5E7 # parameter 6: conductivity
  874 +10 # number of parameters
  875 +5.0e-3 # parameter 1: dielectric width (x dimension)
  876 +1.25e-3 # parameter 2: dielectric height (y dimension)
  877 +1 # parameter 3: number of rows of conductors
  878 +0.0e-3 # parameter 4: row 1 centre offset x
  879 +0.0e-3 # parameter 5: row 1 centre offset y
  880 +1.0e-3 # parameter 6: row 1 conductor width (x dimension)
  881 +0.25e-3 # parameter 7: row 1 conductor height (y dimension)
  882 +0.5e-3 # parameter 8: row 1 conductor separation
  883 +3 # parameter 9: row 1 number of conductors
  884 +0.0 # parameter 10: conductivity
860 885 1 # number of frequency dependent parameters
861 886 # dielectric relative permittivity model follows
862   - 1E9 # w normalisation constant
863   - 1 # a order, a coefficients follow below:
864   - 2.2 2.0
865   - 1 # b order, b coefficients follow below:
866   - 1.0 1.0
  887 + 1E9 # w normalisation constant
  888 + 0 # a order, a coefficients follow below:
  889 + 2.2
  890 + 0 # b order, b coefficients follow below:
  891 + 1.0
867 892 \end{verbatim}
868 893  
  894 +When creating cable bundle models including flex cables the mesh control parameter $Max\_mesh\_edge\_length$ may be used to give an additional degree of control over the Finite Element mash. The number of mesh elements in the y direction on conductors (height) is set by the $Laplace\_surface\_mesh\_constant$ parameter (although the minimum number is two).
  895 +
869 896 \clearpage
870 897  
871 898 \subsubsection{D connector} \label{Dconnector}
... ...
DOCUMENTATION/USER_GUIDE/Tex/introduction.tex
... ... @@ -2,7 +2,7 @@
2 2  
3 3 \section{Software overview}
4 4  
5   -The purpose of the SACAMOS software is to enable the creation of Spice cable models from the description/ characterisation of cables and bundles of cables together with information required to specify a particular modelling scenario (for example the specification of incident field excitation or transfer impedance coupling model).
  5 +The purpose of the SACAMOS software is to enable the creation of Spice cable models from the description/ characterisation of cables and bundles of cables together with information required to specify a particular modelling scenario (for example the specification of incident field excitation or transfer impedance coupling model). This User Guide relates to version 4.0.0 of the SACAMOS software.
6 6  
7 7 A cable bundle may consist of multiple individual cables usually with the addition of a ground plane. This is illustrated in figure\ref{fig_cable_bundle} The cables may consist of shielded and/ or unshielded conductors.
8 8  
... ...
DOCUMENTATION/USER_GUIDE/Tex/preamble.tex
... ... @@ -3,7 +3,7 @@
3 3 \newcommand{\DocumentTitle}{User Guide}
4 4 \newcommand{\DocumentSubTitle}{SACAMOS: State of the Art CAble MOdels for Spice}
5 5 \newcommand{\DocumentSubSubTitle}{Open Souce Cable Models for EMI Simulations}
6   -\newcommand{\DocumentVersion}{1.1}
  6 +\newcommand{\DocumentVersion}{1.2}
7 7 \newcommand{\DocumentAuthors}{Christopher Smartt\footnote{\UONname, contact: Chris.Smartt@nottingham.ac.uk}, David Thomas$^1$, Steve Greedy$^1$, \\ Jaco Verpoorte\footnote{\NLRname, contact: Jaco.Verpoorte@nlr.nl}, Jesper Lansink Rotgerink$^2$ and Harmen Schippers$^2$}
8 8 \newcommand{\License}{This document is subject to the GNU Free Documentation License (version 2.0).}
9 9 \newcommand{\Reference}{ESA 40000112765/14/NL/HK.}
... ...
SRC/GENERAL_MODULES/constants.F90
... ... @@ -106,6 +106,8 @@ IMPLICIT NONE
106 106 ! if Laplace_surface_mesh_constant=5 we have just over 30 elements on the circumference
107 107  
108 108 real(dp) :: max_mesh_edge_length=1d30 ! the maximum mesh edge length on internal boundaries
  109 +
  110 + real(dp) :: cg_tol=1d-12 ! tolerance for conjugate gradient solution of Finite element Laplace matrix equation
109 111  
110 112 real(dp) :: Twisted_pair_equivalent_radius=1.5d0 ! The twisted pair commmon mode interaction is calculated by treating the
111 113 ! common mode as being carried on an 'equivalent cylindrical conductor'
... ...
SRC/PUL_PARAMETER_CALCULATION/CG_solve.F90
... ... @@ -25,9 +25,9 @@
25 25 !
26 26 ! The University of Nottingham can be contacted at: ggiemr@nottingham.ac.uk
27 27 !
28   -! SUBROUTINE solve_real_symm(n, b, x,tol)
  28 +! SUBROUTINE solve_real_symm(n, b, x,tol,itmax)
29 29 ! SUBROUTINE dot ( n, x, y ,res)
30   -! SUBROUTINE solve_complex_symm(n, b, x,tol)
  30 +! SUBROUTINE solve_complex_symm(n, b, x,tolitmax)
31 31 ! SUBROUTINE zdot ( n, x, y ,res)
32 32 !
33 33 ! NAME
... ... @@ -44,7 +44,7 @@
44 44 !
45 45 ! COMMENTS
46 46 !
47   -SUBROUTINE solve_real_symm(n, b, x,tol)
  47 +SUBROUTINE solve_real_symm(n, b, x,tol,itmax)
48 48  
49 49 USE type_specifications
50 50  
... ... @@ -57,6 +57,7 @@ integer,intent(IN) :: n
57 57 real(dp),intent(IN) :: b(n)
58 58 real(dp),intent(INOUT) :: x(n) ! x contains the initial guess for x
59 59 real(dp),intent(IN) :: tol
  60 +integer,intent(IN) :: itmax
60 61  
61 62 ! local variables
62 63  
... ... @@ -115,7 +116,7 @@ minres=.TRUE.
115 116 pkb=rkb
116 117  
117 118 ! iteration loop
118   - do itloop=1,2*n
  119 + do itloop=1,itmax
119 120  
120 121 ! calculate ak=(rkb.rk)/(pkb.A.pk)
121 122  
... ... @@ -167,7 +168,11 @@ minres=.TRUE.
167 168  
168 169 end do ! next iteration
169 170  
170   -! finish
  171 +! We only get here if the iterative solution has not converged after itmax iterations
  172 +
  173 + run_status='ERROR in solve_real_symm: maximum number of iterations exceeded'
  174 + CALL write_program_status()
  175 + STOP 1
171 176  
172 177 RETURN
173 178  
... ... @@ -219,7 +224,7 @@ END SUBROUTINE dot
219 224 !
220 225 ! COMMENTS
221 226 !
222   - SUBROUTINE solve_complex_symm(n, b, x,tol)
  227 + SUBROUTINE solve_complex_symm(n, b, x,tol,itmax)
223 228  
224 229 USE type_specifications
225 230  
... ... @@ -232,6 +237,7 @@ integer,intent(IN) :: n
232 237 complex(dp),intent(IN) :: b(n)
233 238 complex(dp),intent(INOUT) :: x(n) ! x contains the initial guess for x
234 239 real(dp),intent(IN) :: tol
  240 +integer,intent(IN) :: itmax
235 241  
236 242 ! local variables
237 243  
... ... @@ -291,7 +297,7 @@ minres=.TRUE.
291 297 pkb=rkb
292 298  
293 299 ! iteration loop
294   - do itloop=1,2*n
  300 + do itloop=1,itmax
295 301  
296 302 ! calculate ak=(rkb.rk)/(pkb.A.pk)
297 303  
... ... @@ -343,7 +349,11 @@ minres=.TRUE.
343 349  
344 350 end do ! next iteration
345 351  
346   -! finish
  352 +! We only get here if the iterative solution has not converged after itmax iterations
  353 +
  354 + run_status='ERROR in solve_complex_symm: maximum number of iterations exceeded'
  355 + CALL write_program_status()
  356 + STOP 1
347 357  
348 358 RETURN
349 359  
... ...
SRC/PUL_PARAMETER_CALCULATION/Laplace.F90
... ... @@ -284,23 +284,10 @@ integer :: ierr ! error code for matrix inversion
284 284  
285 285 ! variables for iterative solver
286 286  
287   -logical checkA
288 287 integer itnlim
289 288 real(dp) rtol
290   -integer nout
291   -logical goodb
292   -logical precon
293   -real(dp) shift
294   -
295   -integer istop, itn
296   -real(dp) anorm, acond, rnorm, ynorm
297 289  
298   -real(dp),allocatable :: r1(:)
299   -real(dp),allocatable :: r2(:)
300   -real(dp),allocatable :: vt(:)
301   -real(dp),allocatable :: wt(:)
302   -real(dp),allocatable :: yt(:)
303   -real(dp),allocatable :: bt(:)
  290 +real(dp),allocatable :: bt(:) ! real vectors for conjugate gradient solution for lossless problems
304 291 real(dp),allocatable :: xt(:)
305 292  
306 293 logical :: lossy_dielectric ! flag to indicate lossy dielectric i.e. we must solve a complex problem
... ... @@ -1095,19 +1082,9 @@ if (direct_solver) then
1095 1082  
1096 1083 else if(.NOT.lossy_dielectric) then
1097 1084  
1098   - checkA = .true.
1099   - itnlim = N_unknown * 2
1100   - rtol = 1.0D-12
1101   - nout=6
1102   - goodb=.FALSE.
1103   - precon = .FALSE.
1104   - shift=0d0
  1085 + itnlim = N_unknown * 2 ! maximum number of iterations set to twice the number of unknowns
  1086 + rtol = cg_tol
1105 1087  
1106   - allocate(r1(1:N_unknown))
1107   - allocate(r2(1:N_unknown))
1108   - allocate(vt(1:N_unknown))
1109   - allocate(wt(1:N_unknown))
1110   - allocate(yt(1:N_unknown))
1111 1088 allocate(xt(1:N_unknown))
1112 1089 allocate(bt(1:N_unknown))
1113 1090  
... ... @@ -1122,32 +1099,21 @@ else if(.NOT.lossy_dielectric) then
1122 1099 b_tmp(1:N_unknown)=-matmul(K_rhs,v_tmp)
1123 1100 bt(1:N_unknown)=b_tmp(1:N_unknown)
1124 1101  
1125   -! UoN conjugate gradient solution
1126   - CALL solve_real_symm(N_unknown, bt, xt, rtol)
  1102 +! conjugate gradient solution
  1103 + CALL solve_real_symm(N_unknown, bt, xt, rtol, itnlim)
1127 1104  
1128 1105 x(j1,j2,1:N_unknown)=xt(1:N_unknown)
1129 1106  
1130 1107 end do
1131 1108 end do
1132 1109  
1133   - deallocate(r1)
1134   - deallocate(r2)
1135   - deallocate(vt)
1136   - deallocate(wt)
1137   - deallocate(yt)
1138 1110 deallocate(xt)
1139 1111 deallocate(bt)
1140 1112  
1141 1113 else if (lossy_dielectric) then
1142 1114  
1143   - itnlim=4*N_unknown
1144   - nout=6
1145   - wantse=.FALSE.
1146   - atol=1D-8
1147   - btol=1d-8
1148   - conlim=1d10
1149   - damp=0d0
1150   - allocate(se(1:N_unknown))
  1115 + itnlim = N_unknown * 2 ! maximum number of iterations set to twice the number of unknowns
  1116 + rtol = cg_tol
1151 1117  
1152 1118 ! Iterative solution
1153 1119 do j1=1,jmax-1
... ... @@ -1155,20 +1121,15 @@ else if (lossy_dielectric) then
1155 1121  
1156 1122 v_tmp(1:n_known)=V(j1,j2,1:n_known)
1157 1123 b_tmp(1:N_unknown)=-matmul(K_rhs,v_tmp)
1158   - n=N_unknown
1159   - m=N_unknown
1160   -
1161   -! UoN conjugate gradient solution
1162   - rtol = 1.0D-12
1163   - CALL solve_complex_symm(N_unknown, b_tmp, x_tmp, rtol)
  1124 +
  1125 +! conjugate gradient solution
  1126 + CALL solve_complex_symm(N_unknown, b_tmp, x_tmp, rtol,itnlim )
1164 1127  
1165 1128 x(j1,j2,1:N_unknown)=x_tmp(1:N_unknown)
1166 1129  
1167 1130 end do
1168 1131 end do
1169   -
1170   - deallocate(se)
1171   -
  1132 +
1172 1133 end if
1173 1134  
1174 1135 ! STAGE 12 Determine the voltage phi in each node of the mesh
... ...
SRC/cable_bundle_model_builder.F90
... ... @@ -347,19 +347,23 @@ integer :: dim
347 347  
348 348 ! redefine mesh generation parameters if required
349 349 if (INDEX(line,'laplace_boundary_constant').NE.0) then
350   - read(bundle_spec_file_unit,*,END=100,ERR=100)Laplace_boundary_constant
  350 + read(bundle_spec_file_unit,*,END=9000,ERR=9000)Laplace_boundary_constant
351 351 end if
352 352  
353 353 if (INDEX(line,'laplace_surface_mesh_constant').NE.0) then
354   - read(bundle_spec_file_unit,*,END=100,ERR=100)Laplace_surface_mesh_constant
  354 + read(bundle_spec_file_unit,*,END=9000,ERR=9000)Laplace_surface_mesh_constant
355 355 end if
356 356  
357 357 if (INDEX(line,'twisted_pair_equivalent_radius').NE.0) then
358   - read(bundle_spec_file_unit,*,END=100,ERR=100)Twisted_pair_equivalent_radius
  358 + read(bundle_spec_file_unit,*,END=9000,ERR=9000)Twisted_pair_equivalent_radius
359 359 end if
360 360  
361 361 if (INDEX(line,'max_mesh_edge_length').NE.0) then
362   - read(bundle_spec_file_unit,*,END=100,ERR=100)max_mesh_edge_length
  362 + read(bundle_spec_file_unit,*,END=9000,ERR=9000)max_mesh_edge_length
  363 + end if
  364 +
  365 + if (INDEX(line,'cg_tol').NE.0) then
  366 + read(bundle_spec_file_unit,*,END=9000,ERR=9000)cg_tol
363 367 end if
364 368  
365 369 end do ! continue until all flags are read - indicated by an end of file.
... ... @@ -485,7 +489,12 @@ integer :: dim
485 489  
486 490 run_status='Finished_Correctly'
487 491 CALL write_program_status()
488   -
  492 +
  493 + STOP
  494 +
  495 +9000 run_status='ERROR reading control parameter from the bundle_spec file'
  496 + CALL write_program_status()
  497 + STOP 1
489 498  
490 499 END PROGRAM cable_bundle_model_builder
491 500  
... ...
SRC/cable_model_builder.F90
... ... @@ -430,19 +430,23 @@ integer :: i
430 430  
431 431 ! redefine mesh generation parameters if required
432 432 if (INDEX(line,'laplace_boundary_constant').NE.0) then
433   - read(cable_spec_file_unit,*,END=100,ERR=100)Laplace_boundary_constant
  433 + read(cable_spec_file_unit,*,END=9000,ERR=9000)Laplace_boundary_constant
434 434 end if
435 435  
436 436 if (INDEX(line,'laplace_surface_mesh_constant').NE.0) then
437   - read(cable_spec_file_unit,*,END=100,ERR=100)Laplace_surface_mesh_constant
  437 + read(cable_spec_file_unit,*,END=9000,ERR=9000)Laplace_surface_mesh_constant
438 438 end if
439 439  
440 440 if (INDEX(line,'twisted_pair_equivalent_radius').NE.0) then
441   - read(cable_spec_file_unit,*,END=100,ERR=100)Twisted_pair_equivalent_radius
  441 + read(cable_spec_file_unit,*,END=9000,ERR=9000)Twisted_pair_equivalent_radius
442 442 end if
443 443  
444 444 if (INDEX(line,'max_mesh_edge_length').NE.0) then
445   - read(cable_spec_file_unit,*,END=100,ERR=100)max_mesh_edge_length
  445 + read(cable_spec_file_unit,*,END=9000,ERR=9000)max_mesh_edge_length
  446 + end if
  447 +
  448 + if (INDEX(line,'cg_tol').NE.0) then
  449 + read(cable_spec_file_unit,*,END=9000,ERR=9000)cg_tol
446 450 end if
447 451  
448 452 end do ! continue until all flags are read - indicated by an end of file.
... ... @@ -532,6 +536,12 @@ integer :: i
532 536 run_status='Finished_Correctly'
533 537 CALL write_program_status()
534 538  
  539 + STOP
  540 +
  541 +9000 run_status='ERROR reading control parameter from the cable_spec file'
  542 + CALL write_program_status()
  543 + STOP 1
  544 +
535 545 END PROGRAM cable_model_builder
536 546  
537 547  
... ...