Review from O.M.

This commit is contained in:
Thomas Dehaeze 2025-06-13 11:18:28 +02:00
parent e9591959c0
commit e8f1d98504
20 changed files with 302 additions and 570 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,232 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="141.452" height="139.588" viewBox="0 0 141.452 139.588">
<defs>
<g>
<g id="glyph-0-0">
</g>
<g id="glyph-0-1">
<path d="M 7.296875 -2.40625 L 7.296875 -2.703125 L 6.078125 -2.671875 C 5.6875 -2.671875 4.84375 -2.671875 4.484375 -2.703125 L 4.484375 -2.40625 L 4.796875 -2.40625 C 5.6875 -2.40625 5.71875 -2.296875 5.71875 -1.921875 L 5.71875 -1.296875 C 5.71875 -0.171875 4.46875 -0.09375 4.1875 -0.09375 C 3.546875 -0.09375 1.578125 -0.4375 1.578125 -3.390625 C 1.578125 -6.359375 3.53125 -6.6875 4.125 -6.6875 C 5.1875 -6.6875 6.09375 -5.796875 6.296875 -4.328125 C 6.3125 -4.203125 6.3125 -4.171875 6.453125 -4.171875 C 6.609375 -4.171875 6.609375 -4.203125 6.609375 -4.40625 L 6.609375 -6.75 C 6.609375 -6.921875 6.609375 -7 6.5 -7 C 6.453125 -7 6.421875 -7 6.34375 -6.875 L 5.84375 -6.140625 C 5.53125 -6.453125 4.984375 -7 4.015625 -7 C 2.15625 -7 0.5625 -5.421875 0.5625 -3.390625 C 0.5625 -1.359375 2.140625 0.21875 4.03125 0.21875 C 4.75 0.21875 5.546875 -0.046875 5.890625 -0.625 C 6.015625 -0.40625 6.40625 -0.015625 6.515625 -0.015625 C 6.609375 -0.015625 6.609375 -0.09375 6.609375 -0.234375 L 6.609375 -1.96875 C 6.609375 -2.34375 6.640625 -2.40625 7.296875 -2.40625 Z M 7.296875 -2.40625 "/>
</g>
<g id="glyph-0-2">
<path d="M 3.609375 -3.78125 C 3.609375 -4.09375 3.296875 -4.390625 2.875 -4.390625 C 2.15625 -4.390625 1.796875 -3.71875 1.65625 -3.296875 L 1.65625 -4.390625 L 0.28125 -4.28125 L 0.28125 -3.96875 C 0.96875 -3.96875 1.046875 -3.90625 1.046875 -3.40625 L 1.046875 -0.75 C 1.046875 -0.3125 0.9375 -0.3125 0.28125 -0.3125 L 0.28125 0 L 1.40625 -0.03125 C 1.8125 -0.03125 2.265625 -0.03125 2.671875 0 L 2.671875 -0.3125 L 2.453125 -0.3125 C 1.71875 -0.3125 1.703125 -0.421875 1.703125 -0.78125 L 1.703125 -2.296875 C 1.703125 -3.28125 2.125 -4.171875 2.875 -4.171875 C 2.953125 -4.171875 2.96875 -4.171875 2.984375 -4.15625 C 2.953125 -4.140625 2.765625 -4.03125 2.765625 -3.765625 C 2.765625 -3.5 2.96875 -3.34375 3.1875 -3.34375 C 3.359375 -3.34375 3.609375 -3.46875 3.609375 -3.78125 Z M 3.609375 -3.78125 "/>
</g>
<g id="glyph-0-3">
<path d="M 4.796875 -0.890625 L 4.796875 -1.4375 L 4.546875 -1.4375 L 4.546875 -0.890625 C 4.546875 -0.3125 4.296875 -0.25 4.1875 -0.25 C 3.859375 -0.25 3.8125 -0.6875 3.8125 -0.75 L 3.8125 -2.734375 C 3.8125 -3.140625 3.8125 -3.53125 3.46875 -3.90625 C 3.078125 -4.28125 2.578125 -4.4375 2.109375 -4.4375 C 1.296875 -4.4375 0.609375 -3.984375 0.609375 -3.328125 C 0.609375 -3.03125 0.796875 -2.859375 1.0625 -2.859375 C 1.34375 -2.859375 1.515625 -3.0625 1.515625 -3.3125 C 1.515625 -3.4375 1.46875 -3.765625 1.015625 -3.765625 C 1.28125 -4.125 1.765625 -4.234375 2.078125 -4.234375 C 2.5625 -4.234375 3.140625 -3.84375 3.140625 -2.953125 L 3.140625 -2.59375 C 2.625 -2.5625 1.9375 -2.53125 1.3125 -2.234375 C 0.5625 -1.890625 0.3125 -1.375 0.3125 -0.9375 C 0.3125 -0.140625 1.28125 0.109375 1.90625 0.109375 C 2.5625 0.109375 3.015625 -0.28125 3.203125 -0.75 C 3.25 -0.359375 3.515625 0.0625 3.984375 0.0625 C 4.1875 0.0625 4.796875 -0.078125 4.796875 -0.890625 Z M 3.140625 -1.390625 C 3.140625 -0.453125 2.421875 -0.109375 1.96875 -0.109375 C 1.484375 -0.109375 1.078125 -0.453125 1.078125 -0.953125 C 1.078125 -1.5 1.5 -2.328125 3.140625 -2.375 Z M 3.140625 -1.390625 "/>
</g>
<g id="glyph-0-4">
<path d="M 5.3125 0 L 5.3125 -0.3125 C 4.796875 -0.3125 4.546875 -0.3125 4.53125 -0.609375 L 4.53125 -2.5 C 4.53125 -3.359375 4.53125 -3.65625 4.234375 -4.015625 C 4.09375 -4.1875 3.765625 -4.390625 3.1875 -4.390625 C 2.453125 -4.390625 2 -3.953125 1.71875 -3.34375 L 1.71875 -4.390625 L 0.3125 -4.28125 L 0.3125 -3.96875 C 1.015625 -3.96875 1.09375 -3.90625 1.09375 -3.40625 L 1.09375 -0.75 C 1.09375 -0.3125 0.984375 -0.3125 0.3125 -0.3125 L 0.3125 0 L 1.4375 -0.03125 L 2.546875 0 L 2.546875 -0.3125 C 1.890625 -0.3125 1.78125 -0.3125 1.78125 -0.75 L 1.78125 -2.578125 C 1.78125 -3.609375 2.484375 -4.171875 3.109375 -4.171875 C 3.734375 -4.171875 3.84375 -3.625 3.84375 -3.0625 L 3.84375 -0.75 C 3.84375 -0.3125 3.734375 -0.3125 3.078125 -0.3125 L 3.078125 0 L 4.203125 -0.03125 Z M 5.3125 0 "/>
</g>
<g id="glyph-0-5">
<path d="M 2.453125 0 L 2.453125 -0.3125 C 1.796875 -0.3125 1.75 -0.359375 1.75 -0.75 L 1.75 -4.390625 L 0.359375 -4.28125 L 0.359375 -3.96875 C 1.015625 -3.96875 1.09375 -3.90625 1.09375 -3.421875 L 1.09375 -0.75 C 1.09375 -0.3125 0.984375 -0.3125 0.328125 -0.3125 L 0.328125 0 L 1.421875 -0.03125 C 1.765625 -0.03125 2.109375 -0.015625 2.453125 0 Z M 1.90625 -6 C 1.90625 -6.265625 1.671875 -6.515625 1.375 -6.515625 C 1.046875 -6.515625 0.84375 -6.234375 0.84375 -6 C 0.84375 -5.71875 1.078125 -5.46875 1.375 -5.46875 C 1.703125 -5.46875 1.90625 -5.75 1.90625 -6 Z M 1.90625 -6 "/>
</g>
<g id="glyph-0-6">
<path d="M 3.296875 -1.234375 L 3.296875 -1.796875 L 3.046875 -1.796875 L 3.046875 -1.25 C 3.046875 -0.515625 2.75 -0.140625 2.375 -0.140625 C 1.71875 -0.140625 1.71875 -1.046875 1.71875 -1.203125 L 1.71875 -3.96875 L 3.140625 -3.96875 L 3.140625 -4.28125 L 1.71875 -4.28125 L 1.71875 -6.109375 L 1.46875 -6.109375 C 1.453125 -5.28125 1.15625 -4.234375 0.1875 -4.1875 L 0.1875 -3.96875 L 1.03125 -3.96875 L 1.03125 -1.234375 C 1.03125 -0.015625 1.953125 0.109375 2.3125 0.109375 C 3.015625 0.109375 3.296875 -0.59375 3.296875 -1.234375 Z M 3.296875 -1.234375 "/>
</g>
<g id="glyph-0-7">
<path d="M 4.125 -1.1875 C 4.125 -1.28125 4.03125 -1.296875 3.984375 -1.296875 C 3.90625 -1.296875 3.875 -1.234375 3.859375 -1.15625 C 3.515625 -0.140625 2.625 -0.140625 2.515625 -0.140625 C 2.03125 -0.140625 1.625 -0.4375 1.40625 -0.796875 C 1.09375 -1.28125 1.09375 -1.9375 1.09375 -2.296875 L 3.875 -2.296875 C 4.09375 -2.296875 4.125 -2.296875 4.125 -2.5 C 4.125 -3.484375 3.578125 -4.4375 2.34375 -4.4375 C 1.1875 -4.4375 0.28125 -3.421875 0.28125 -2.1875 C 0.28125 -0.859375 1.3125 0.109375 2.453125 0.109375 C 3.671875 0.109375 4.125 -0.984375 4.125 -1.1875 Z M 3.46875 -2.5 L 1.109375 -2.5 C 1.171875 -3.984375 2 -4.234375 2.34375 -4.234375 C 3.359375 -4.234375 3.46875 -2.890625 3.46875 -2.5 Z M 3.46875 -2.5 "/>
</g>
<g id="glyph-0-8">
<path d="M 5.125 0 L 5.125 -0.3125 C 4.578125 -0.3125 4.40625 -0.328125 4.171875 -0.609375 L 2.84375 -2.328125 C 3.140625 -2.703125 3.515625 -3.1875 3.765625 -3.453125 C 4.0625 -3.8125 4.46875 -3.953125 4.9375 -3.96875 L 4.9375 -4.28125 C 4.6875 -4.25 4.390625 -4.25 4.125 -4.25 C 3.828125 -4.25 3.296875 -4.265625 3.171875 -4.28125 L 3.171875 -3.96875 C 3.390625 -3.953125 3.46875 -3.8125 3.46875 -3.65625 C 3.46875 -3.5 3.359375 -3.375 3.3125 -3.3125 L 2.703125 -2.546875 L 1.921875 -3.546875 C 1.828125 -3.640625 1.828125 -3.65625 1.828125 -3.71875 C 1.828125 -3.875 1.984375 -3.953125 2.1875 -3.96875 L 2.1875 -4.28125 L 1.109375 -4.25 C 0.90625 -4.25 0.4375 -4.25 0.171875 -4.28125 L 0.171875 -3.96875 C 0.859375 -3.96875 0.875 -3.953125 1.34375 -3.359375 L 2.328125 -2.078125 C 1.859375 -1.484375 1.859375 -1.46875 1.390625 -0.90625 C 0.90625 -0.328125 0.328125 -0.3125 0.125 -0.3125 L 0.125 0 C 0.375 -0.015625 0.6875 -0.03125 0.9375 -0.03125 L 1.890625 0 L 1.890625 -0.3125 C 1.671875 -0.34375 1.59375 -0.46875 1.59375 -0.609375 C 1.59375 -0.828125 1.890625 -1.15625 2.484375 -1.875 L 3.25 -0.890625 C 3.328125 -0.78125 3.453125 -0.609375 3.453125 -0.5625 C 3.453125 -0.46875 3.359375 -0.3125 3.09375 -0.3125 L 3.09375 0 L 4.171875 -0.03125 C 4.4375 -0.03125 4.828125 -0.015625 5.125 0 Z M 5.125 0 "/>
</g>
<g id="glyph-0-9">
<path d="M 2.734375 -1.859375 L 2.734375 -2.4375 L 0.109375 -2.4375 L 0.109375 -1.859375 Z M 2.734375 -1.859375 "/>
</g>
<g id="glyph-0-10">
<path d="M 5.046875 -3.96875 L 5.046875 -4.28125 C 4.8125 -4.25 4.53125 -4.25 4.296875 -4.25 L 3.4375 -4.28125 L 3.4375 -3.96875 C 3.734375 -3.953125 3.90625 -3.796875 3.90625 -3.546875 C 3.90625 -3.4375 3.890625 -3.421875 3.84375 -3.296875 L 2.84375 -0.859375 L 1.734375 -3.53125 C 1.703125 -3.625 1.671875 -3.671875 1.671875 -3.703125 C 1.671875 -3.96875 2.046875 -3.96875 2.234375 -3.96875 L 2.234375 -4.28125 L 1.15625 -4.25 C 0.890625 -4.25 0.484375 -4.25 0.1875 -4.28125 L 0.1875 -3.96875 C 0.671875 -3.96875 0.859375 -3.96875 0.984375 -3.625 L 2.484375 0 L 2.234375 0.578125 C 2.015625 1.125 1.734375 1.8125 1.09375 1.8125 C 1.046875 1.8125 0.828125 1.8125 0.640625 1.640625 C 0.9375 1.59375 1.015625 1.375 1.015625 1.21875 C 1.015625 0.96875 0.828125 0.796875 0.609375 0.796875 C 0.40625 0.796875 0.1875 0.9375 0.1875 1.234375 C 0.1875 1.671875 0.609375 2.03125 1.09375 2.03125 C 1.71875 2.03125 2.140625 1.46875 2.375 0.90625 L 4.125 -3.328125 C 4.375 -3.953125 4.875 -3.96875 5.046875 -3.96875 Z M 5.046875 -3.96875 "/>
</g>
<g id="glyph-1-0">
</g>
<g id="glyph-1-1">
<path d="M 8.40625 -1.421875 C 8.40625 -1.515625 8.328125 -1.515625 8.296875 -1.515625 C 8.203125 -1.515625 8.203125 -1.484375 8.140625 -1.34375 C 8 -0.8125 7.671875 -0.109375 7.140625 -0.109375 C 6.96875 -0.109375 6.890625 -0.203125 6.890625 -0.4375 C 6.890625 -0.6875 6.984375 -0.921875 7.078125 -1.140625 C 7.265625 -1.65625 7.671875 -2.765625 7.671875 -3.328125 C 7.671875 -3.96875 7.28125 -4.390625 6.53125 -4.390625 C 5.796875 -4.390625 5.28125 -3.953125 4.921875 -3.421875 C 4.90625 -3.546875 4.875 -3.890625 4.609375 -4.125 C 4.359375 -4.328125 4.03125 -4.390625 3.796875 -4.390625 C 2.890625 -4.390625 2.40625 -3.75 2.25 -3.515625 C 2.1875 -4.09375 1.78125 -4.390625 1.328125 -4.390625 C 0.875 -4.390625 0.6875 -4 0.59375 -3.8125 C 0.421875 -3.46875 0.28125 -2.890625 0.28125 -2.859375 C 0.28125 -2.765625 0.40625 -2.765625 0.40625 -2.765625 C 0.5 -2.765625 0.515625 -2.765625 0.578125 -2.984375 C 0.75 -3.6875 0.9375 -4.171875 1.296875 -4.171875 C 1.453125 -4.171875 1.609375 -4.09375 1.609375 -3.703125 C 1.609375 -3.5 1.578125 -3.390625 1.453125 -2.875 L 0.875 -0.578125 C 0.84375 -0.4375 0.78125 -0.203125 0.78125 -0.15625 C 0.78125 0.015625 0.921875 0.109375 1.078125 0.109375 C 1.1875 0.109375 1.375 0.03125 1.4375 -0.171875 C 1.453125 -0.1875 1.5625 -0.65625 1.625 -0.90625 L 1.84375 -1.796875 C 1.90625 -2.015625 1.96875 -2.234375 2.015625 -2.453125 L 2.140625 -2.953125 C 2.296875 -3.265625 2.8125 -4.171875 3.765625 -4.171875 C 4.203125 -4.171875 4.296875 -3.796875 4.296875 -3.46875 C 4.296875 -3.21875 4.234375 -2.953125 4.140625 -2.65625 L 3.875 -1.5 C 3.765625 -1.125 3.765625 -1.078125 3.671875 -0.75 C 3.625 -0.546875 3.546875 -0.203125 3.546875 -0.15625 C 3.546875 0.015625 3.6875 0.109375 3.828125 0.109375 C 4.140625 0.109375 4.203125 -0.140625 4.28125 -0.453125 L 4.875 -2.84375 C 4.90625 -2.96875 5.421875 -4.171875 6.515625 -4.171875 C 6.9375 -4.171875 7.046875 -3.828125 7.046875 -3.46875 C 7.046875 -2.90625 6.625 -1.78125 6.421875 -1.25 C 6.34375 -1.015625 6.296875 -0.90625 6.296875 -0.703125 C 6.296875 -0.234375 6.640625 0.109375 7.109375 0.109375 C 8.046875 0.109375 8.40625 -1.34375 8.40625 -1.421875 Z M 8.40625 -1.421875 "/>
</g>
<g id="glyph-1-2">
<path d="M 4.859375 -1.421875 C 4.859375 -1.515625 4.765625 -1.515625 4.75 -1.515625 C 4.640625 -1.515625 4.640625 -1.484375 4.609375 -1.34375 C 4.40625 -0.609375 4.171875 -0.109375 3.734375 -0.109375 C 3.546875 -0.109375 3.421875 -0.21875 3.421875 -0.578125 C 3.421875 -0.75 3.46875 -0.96875 3.5 -1.125 C 3.546875 -1.296875 3.546875 -1.34375 3.546875 -1.4375 C 3.546875 -2.078125 2.921875 -2.375 2.078125 -2.484375 C 2.375 -2.65625 2.703125 -2.96875 2.921875 -3.21875 C 3.40625 -3.734375 3.859375 -4.171875 4.34375 -4.171875 C 4.40625 -4.171875 4.421875 -4.171875 4.4375 -4.15625 C 4.546875 -4.140625 4.5625 -4.140625 4.640625 -4.078125 C 4.65625 -4.0625 4.65625 -4.0625 4.6875 -4.03125 C 4.203125 -4.015625 4.125 -3.625 4.125 -3.5 C 4.125 -3.34375 4.234375 -3.15625 4.5 -3.15625 C 4.75 -3.15625 5.046875 -3.375 5.046875 -3.765625 C 5.046875 -4.0625 4.8125 -4.390625 4.359375 -4.390625 C 4.09375 -4.390625 3.625 -4.3125 2.921875 -3.515625 C 2.578125 -3.140625 2.1875 -2.734375 1.8125 -2.59375 L 2.84375 -6.78125 C 2.84375 -6.78125 2.84375 -6.890625 2.71875 -6.890625 C 2.484375 -6.890625 1.765625 -6.8125 1.515625 -6.78125 C 1.421875 -6.78125 1.3125 -6.765625 1.3125 -6.59375 C 1.3125 -6.46875 1.40625 -6.46875 1.5625 -6.46875 C 2.03125 -6.46875 2.046875 -6.40625 2.046875 -6.296875 L 2.03125 -6.109375 L 0.578125 -0.390625 C 0.546875 -0.25 0.546875 -0.234375 0.546875 -0.171875 C 0.546875 0.0625 0.75 0.109375 0.828125 0.109375 C 0.96875 0.109375 1.109375 0.015625 1.171875 -0.09375 C 1.21875 -0.1875 1.671875 -2.03125 1.71875 -2.265625 C 2.0625 -2.25 2.875 -2.078125 2.875 -1.421875 C 2.875 -1.359375 2.875 -1.3125 2.84375 -1.21875 C 2.828125 -1.09375 2.8125 -0.984375 2.8125 -0.875 C 2.8125 -0.28125 3.203125 0.109375 3.71875 0.109375 C 4.015625 0.109375 4.28125 -0.046875 4.5 -0.421875 C 4.75 -0.859375 4.859375 -1.421875 4.859375 -1.421875 Z M 4.859375 -1.421875 "/>
</g>
<g id="glyph-1-3">
<path d="M 4.265625 -1.0625 C 4.265625 -1.125 4.203125 -1.1875 4.140625 -1.1875 C 4.09375 -1.1875 4.078125 -1.171875 4.015625 -1.09375 C 3.234375 -0.109375 2.15625 -0.109375 2.03125 -0.109375 C 1.40625 -0.109375 1.140625 -0.59375 1.140625 -1.1875 C 1.140625 -1.59375 1.34375 -2.5625 1.671875 -3.171875 C 1.984375 -3.734375 2.53125 -4.171875 3.078125 -4.171875 C 3.40625 -4.171875 3.796875 -4.03125 3.921875 -3.765625 C 3.765625 -3.765625 3.625 -3.765625 3.5 -3.625 C 3.328125 -3.484375 3.3125 -3.3125 3.3125 -3.25 C 3.3125 -3 3.5 -2.890625 3.6875 -2.890625 C 3.96875 -2.890625 4.234375 -3.140625 4.234375 -3.53125 C 4.234375 -4.015625 3.765625 -4.390625 3.0625 -4.390625 C 1.71875 -4.390625 0.40625 -2.96875 0.40625 -1.5625 C 0.40625 -0.671875 0.984375 0.109375 2.015625 0.109375 C 3.4375 0.109375 4.265625 -0.9375 4.265625 -1.0625 Z M 4.265625 -1.0625 "/>
</g>
<g id="glyph-1-4">
<path d="M 5.484375 -6.3125 C 5.484375 -6.765625 5.015625 -7 4.609375 -7 C 4.28125 -7 3.65625 -6.8125 3.359375 -5.828125 C 3.296875 -5.625 3.265625 -5.53125 3.03125 -4.28125 L 2.34375 -4.28125 C 2.15625 -4.28125 2.046875 -4.28125 2.046875 -4.09375 C 2.046875 -3.96875 2.140625 -3.96875 2.328125 -3.96875 L 2.96875 -3.96875 L 2.234375 -0.046875 C 2.046875 0.90625 1.890625 1.8125 1.375 1.8125 C 1.328125 1.8125 1.078125 1.8125 0.890625 1.640625 C 1.34375 1.609375 1.4375 1.25 1.4375 1.09375 C 1.4375 0.875 1.265625 0.75 1.078125 0.75 C 0.8125 0.75 0.53125 0.96875 0.53125 1.34375 C 0.53125 1.796875 0.96875 2.03125 1.375 2.03125 C 1.921875 2.03125 2.3125 1.453125 2.484375 1.078125 C 2.8125 0.453125 3.03125 -0.75 3.046875 -0.828125 L 3.640625 -3.96875 L 4.5 -3.96875 C 4.6875 -3.96875 4.796875 -3.96875 4.796875 -4.171875 C 4.796875 -4.28125 4.6875 -4.28125 4.53125 -4.28125 L 3.703125 -4.28125 C 3.8125 -4.859375 3.796875 -4.828125 3.90625 -5.40625 C 3.953125 -5.609375 4.09375 -6.3125 4.140625 -6.4375 C 4.234375 -6.625 4.40625 -6.78125 4.609375 -6.78125 C 4.65625 -6.78125 4.90625 -6.78125 5.09375 -6.59375 C 4.65625 -6.5625 4.5625 -6.21875 4.5625 -6.0625 C 4.5625 -5.828125 4.75 -5.71875 4.9375 -5.71875 C 5.1875 -5.71875 5.484375 -5.9375 5.484375 -6.3125 Z M 5.484375 -6.3125 "/>
</g>
<g id="glyph-1-5">
<path d="M 6.375 -2.453125 C 6.375 -2.484375 6.34375 -2.5625 6.265625 -2.5625 C 6.171875 -2.5625 6.15625 -2.515625 6.09375 -2.34375 C 5.75 -1.4375 5.3125 -0.3125 3.609375 -0.3125 L 2.671875 -0.3125 C 2.53125 -0.3125 2.515625 -0.3125 2.453125 -0.3125 C 2.34375 -0.328125 2.328125 -0.34375 2.328125 -0.421875 C 2.328125 -0.453125 2.328125 -0.46875 2.375 -0.640625 L 3.703125 -6 C 3.796875 -6.359375 3.828125 -6.46875 4.765625 -6.46875 C 5.0625 -6.46875 5.140625 -6.46875 5.140625 -6.65625 C 5.140625 -6.78125 5.03125 -6.78125 4.984375 -6.78125 L 3.515625 -6.75 L 2.1875 -6.78125 C 2.125 -6.78125 2 -6.78125 2 -6.578125 C 2 -6.46875 2.09375 -6.46875 2.28125 -6.46875 C 2.28125 -6.46875 2.484375 -6.46875 2.65625 -6.453125 C 2.84375 -6.421875 2.921875 -6.421875 2.921875 -6.296875 C 2.921875 -6.25 2.921875 -6.21875 2.890625 -6.109375 L 1.5625 -0.78125 C 1.453125 -0.390625 1.4375 -0.3125 0.65625 -0.3125 C 0.484375 -0.3125 0.390625 -0.3125 0.390625 -0.109375 C 0.390625 0 0.46875 0 0.65625 0 L 5.25 0 C 5.484375 0 5.5 0 5.5625 -0.171875 L 6.34375 -2.3125 C 6.375 -2.421875 6.375 -2.453125 6.375 -2.453125 Z M 6.375 -2.453125 "/>
</g>
<g id="glyph-2-0">
</g>
<g id="glyph-2-1">
<path d="M 4.578125 -1 C 4.578125 -1.078125 4.484375 -1.078125 4.46875 -1.078125 C 4.359375 -1.078125 4.359375 -1.046875 4.328125 -0.96875 C 4.171875 -0.40625 3.875 -0.125 3.59375 -0.125 C 3.453125 -0.125 3.421875 -0.21875 3.421875 -0.375 C 3.421875 -0.53125 3.453125 -0.625 3.578125 -0.9375 C 3.671875 -1.140625 3.953125 -1.890625 3.953125 -2.28125 C 3.953125 -2.953125 3.40625 -3.0625 3.046875 -3.0625 C 2.46875 -3.0625 2.078125 -2.71875 1.875 -2.4375 C 1.828125 -2.90625 1.40625 -3.0625 1.125 -3.0625 C 0.828125 -3.0625 0.671875 -2.84375 0.578125 -2.6875 C 0.421875 -2.4375 0.328125 -2.03125 0.328125 -2 C 0.328125 -1.90625 0.421875 -1.90625 0.4375 -1.90625 C 0.546875 -1.90625 0.546875 -1.9375 0.59375 -2.125 C 0.703125 -2.53125 0.828125 -2.875 1.109375 -2.875 C 1.28125 -2.875 1.328125 -2.71875 1.328125 -2.53125 C 1.328125 -2.40625 1.265625 -2.140625 1.21875 -1.953125 L 1.078125 -1.328125 L 0.84375 -0.4375 C 0.828125 -0.34375 0.78125 -0.171875 0.78125 -0.15625 C 0.78125 0 0.90625 0.0625 1.015625 0.0625 C 1.140625 0.0625 1.25 -0.015625 1.28125 -0.078125 C 1.328125 -0.140625 1.375 -0.375 1.40625 -0.515625 L 1.5625 -1.140625 C 1.609375 -1.296875 1.640625 -1.453125 1.6875 -1.609375 C 1.765625 -1.890625 1.765625 -1.953125 1.96875 -2.234375 C 2.171875 -2.515625 2.5 -2.875 3.015625 -2.875 C 3.421875 -2.875 3.421875 -2.515625 3.421875 -2.390625 C 3.421875 -1.96875 3.125 -1.203125 3.015625 -0.90625 C 2.9375 -0.703125 2.90625 -0.640625 2.90625 -0.53125 C 2.90625 -0.15625 3.21875 0.0625 3.578125 0.0625 C 4.265625 0.0625 4.578125 -0.890625 4.578125 -1 Z M 4.578125 -1 "/>
</g>
<g id="glyph-2-2">
<path d="M 3.125 -1.078125 C 3.125 -1.71875 2.421875 -1.84375 2.171875 -1.890625 C 2.109375 -1.90625 1.9375 -1.9375 1.890625 -1.953125 C 1.640625 -2 1.515625 -2.140625 1.515625 -2.296875 C 1.515625 -2.453125 1.640625 -2.640625 1.78125 -2.734375 C 1.96875 -2.859375 2.21875 -2.875 2.34375 -2.875 C 2.484375 -2.875 2.84375 -2.84375 3 -2.609375 C 2.8125 -2.578125 2.703125 -2.421875 2.703125 -2.28125 C 2.703125 -2.125 2.84375 -2.0625 2.9375 -2.0625 C 3 -2.0625 3.265625 -2.109375 3.265625 -2.46875 C 3.265625 -2.90625 2.765625 -3.0625 2.34375 -3.0625 C 1.265625 -3.0625 1.0625 -2.265625 1.0625 -2.046875 C 1.0625 -1.796875 1.203125 -1.625 1.3125 -1.546875 C 1.484375 -1.40625 1.609375 -1.375 2.09375 -1.296875 C 2.234375 -1.265625 2.6875 -1.1875 2.6875 -0.828125 C 2.6875 -0.71875 2.609375 -0.453125 2.3125 -0.28125 C 2.046875 -0.125 1.703125 -0.125 1.625 -0.125 C 1.34375 -0.125 0.953125 -0.1875 0.78125 -0.421875 C 1.015625 -0.4375 1.171875 -0.625 1.171875 -0.8125 C 1.171875 -0.984375 1.046875 -1.078125 0.890625 -1.078125 C 0.703125 -1.078125 0.5 -0.90625 0.5 -0.609375 C 0.5 -0.1875 0.9375 0.0625 1.609375 0.0625 C 2.890625 0.0625 3.125 -0.8125 3.125 -1.078125 Z M 3.125 -1.078125 "/>
</g>
<g id="glyph-3-0">
</g>
<g id="glyph-3-1">
<path d="M -4.125 -5.203125 C -4.28125 -5.203125 -4.390625 -5.078125 -4.390625 -4.90625 C -4.390625 -4.828125 -4.34375 -4.609375 -4.0625 -4.53125 C -1.8125 -3.890625 -0.6875 -2.375 -0.328125 -1.25 L -4.28125 -2.21875 C -4.28125 -2.21875 -4.390625 -2.21875 -4.390625 -2.09375 C -4.390625 -1.859375 -4.3125 -1.140625 -4.28125 -0.890625 C -4.28125 -0.796875 -4.265625 -0.6875 -4.09375 -0.6875 C -3.96875 -0.6875 -3.96875 -0.78125 -3.96875 -0.9375 C -3.96875 -1.40625 -3.90625 -1.421875 -3.796875 -1.421875 C -3.734375 -1.421875 -3.265625 -1.3125 -3 -1.234375 L -0.5625 -0.640625 L -0.125 -0.53125 C -0.015625 -0.53125 0 -0.625 0 -0.6875 L 0 -0.828125 C -0.125 -1.515625 -0.5 -2.59375 -1.453125 -3.625 C -2.671875 -4.9375 -4.03125 -5.203125 -4.125 -5.203125 Z M -4.125 -5.203125 "/>
</g>
<g id="glyph-4-0">
</g>
<g id="glyph-4-1">
<path d="M -1.859375 -2.734375 L -2.4375 -2.734375 L -2.4375 -0.109375 L -1.859375 -0.109375 Z M -1.859375 -2.734375 "/>
</g>
<g id="glyph-4-2">
<path d="M 0 -5.3125 L -0.3125 -5.3125 C -0.3125 -4.796875 -0.3125 -4.546875 -0.609375 -4.53125 L -2.5 -4.53125 C -3.359375 -4.53125 -3.65625 -4.53125 -4.015625 -4.234375 C -4.1875 -4.09375 -4.390625 -3.765625 -4.390625 -3.1875 C -4.390625 -2.34375 -3.796875 -1.921875 -3.4375 -1.75 L -6.890625 -1.75 L -6.78125 -0.3125 L -6.46875 -0.3125 C -6.46875 -1.015625 -6.40625 -1.09375 -5.90625 -1.09375 L -0.75 -1.09375 C -0.3125 -1.09375 -0.3125 -0.984375 -0.3125 -0.3125 L 0 -0.3125 L -0.03125 -1.4375 L 0 -2.546875 L -0.3125 -2.546875 C -0.3125 -1.890625 -0.3125 -1.78125 -0.75 -1.78125 L -2.578125 -1.78125 C -3.609375 -1.78125 -4.171875 -2.484375 -4.171875 -3.109375 C -4.171875 -3.734375 -3.625 -3.84375 -3.0625 -3.84375 L -0.75 -3.84375 C -0.3125 -3.84375 -0.3125 -3.734375 -0.3125 -3.078125 L 0 -3.078125 L -0.03125 -4.203125 Z M 0 -5.3125 "/>
</g>
<g id="glyph-4-3">
<path d="M -1.1875 -4.125 C -1.28125 -4.125 -1.296875 -4.03125 -1.296875 -3.984375 C -1.296875 -3.90625 -1.234375 -3.875 -1.15625 -3.859375 C -0.140625 -3.515625 -0.140625 -2.625 -0.140625 -2.515625 C -0.140625 -2.03125 -0.4375 -1.625 -0.796875 -1.40625 C -1.28125 -1.09375 -1.9375 -1.09375 -2.296875 -1.09375 L -2.296875 -3.875 C -2.296875 -4.09375 -2.296875 -4.125 -2.5 -4.125 C -3.484375 -4.125 -4.4375 -3.578125 -4.4375 -2.34375 C -4.4375 -1.1875 -3.421875 -0.28125 -2.1875 -0.28125 C -0.859375 -0.28125 0.109375 -1.3125 0.109375 -2.453125 C 0.109375 -3.671875 -0.984375 -4.125 -1.1875 -4.125 Z M -2.5 -3.46875 L -2.5 -1.109375 C -3.984375 -1.171875 -4.234375 -2 -4.234375 -2.34375 C -4.234375 -3.359375 -2.890625 -3.46875 -2.5 -3.46875 Z M -2.5 -3.46875 "/>
</g>
<g id="glyph-4-4">
<path d="M 0 -5.125 L -0.3125 -5.125 C -0.3125 -4.578125 -0.328125 -4.40625 -0.609375 -4.171875 L -2.328125 -2.84375 C -2.703125 -3.140625 -3.1875 -3.515625 -3.453125 -3.765625 C -3.8125 -4.0625 -3.953125 -4.46875 -3.96875 -4.9375 L -4.28125 -4.9375 C -4.25 -4.6875 -4.25 -4.390625 -4.25 -4.125 C -4.25 -3.828125 -4.265625 -3.296875 -4.28125 -3.171875 L -3.96875 -3.171875 C -3.953125 -3.390625 -3.8125 -3.46875 -3.65625 -3.46875 C -3.5 -3.46875 -3.375 -3.359375 -3.3125 -3.3125 L -2.546875 -2.703125 L -3.546875 -1.921875 C -3.640625 -1.828125 -3.65625 -1.828125 -3.71875 -1.828125 C -3.875 -1.828125 -3.953125 -1.984375 -3.96875 -2.1875 L -4.28125 -2.1875 L -4.25 -1.109375 C -4.25 -0.90625 -4.25 -0.4375 -4.28125 -0.171875 L -3.96875 -0.171875 C -3.96875 -0.859375 -3.953125 -0.875 -3.359375 -1.34375 L -2.078125 -2.328125 C -1.484375 -1.859375 -1.46875 -1.859375 -0.90625 -1.390625 C -0.328125 -0.90625 -0.3125 -0.328125 -0.3125 -0.125 L 0 -0.125 C -0.015625 -0.375 -0.03125 -0.6875 -0.03125 -0.9375 L 0 -1.890625 L -0.3125 -1.890625 C -0.34375 -1.671875 -0.46875 -1.59375 -0.609375 -1.59375 C -0.828125 -1.59375 -1.15625 -1.890625 -1.875 -2.484375 L -0.890625 -3.25 C -0.78125 -3.328125 -0.609375 -3.453125 -0.5625 -3.453125 C -0.46875 -3.453125 -0.3125 -3.359375 -0.3125 -3.09375 L 0 -3.09375 L -0.03125 -4.171875 C -0.03125 -4.4375 -0.015625 -4.828125 0 -5.125 Z M 0 -5.125 "/>
</g>
<g id="glyph-4-5">
<path d="M -0.890625 -4.796875 L -1.4375 -4.796875 L -1.4375 -4.546875 L -0.890625 -4.546875 C -0.3125 -4.546875 -0.25 -4.296875 -0.25 -4.1875 C -0.25 -3.859375 -0.6875 -3.8125 -0.75 -3.8125 L -2.734375 -3.8125 C -3.140625 -3.8125 -3.53125 -3.8125 -3.90625 -3.46875 C -4.28125 -3.078125 -4.4375 -2.578125 -4.4375 -2.109375 C -4.4375 -1.296875 -3.984375 -0.609375 -3.328125 -0.609375 C -3.03125 -0.609375 -2.859375 -0.796875 -2.859375 -1.0625 C -2.859375 -1.34375 -3.0625 -1.515625 -3.3125 -1.515625 C -3.4375 -1.515625 -3.765625 -1.46875 -3.765625 -1.015625 C -4.125 -1.28125 -4.234375 -1.765625 -4.234375 -2.078125 C -4.234375 -2.5625 -3.84375 -3.140625 -2.953125 -3.140625 L -2.59375 -3.140625 C -2.5625 -2.625 -2.53125 -1.9375 -2.234375 -1.3125 C -1.890625 -0.5625 -1.375 -0.3125 -0.9375 -0.3125 C -0.140625 -0.3125 0.109375 -1.28125 0.109375 -1.90625 C 0.109375 -2.5625 -0.28125 -3.015625 -0.75 -3.203125 C -0.359375 -3.25 0.0625 -3.515625 0.0625 -3.984375 C 0.0625 -4.1875 -0.078125 -4.796875 -0.890625 -4.796875 Z M -1.390625 -3.140625 C -0.453125 -3.140625 -0.109375 -2.421875 -0.109375 -1.96875 C -0.109375 -1.484375 -0.453125 -1.078125 -0.953125 -1.078125 C -1.5 -1.078125 -2.328125 -1.5 -2.375 -3.140625 Z M -1.390625 -3.140625 "/>
</g>
<g id="glyph-4-6">
<path d="M -2.140625 -5.171875 C -3.40625 -5.171875 -4.390625 -4.203125 -4.390625 -3.09375 C -4.390625 -2.328125 -3.953125 -1.90625 -3.734375 -1.703125 L -4.390625 -1.703125 L -4.28125 -0.28125 L -3.96875 -0.28125 C -3.96875 -0.984375 -3.90625 -1.046875 -3.46875 -1.046875 L 1.171875 -1.046875 C 1.625 -1.046875 1.625 -0.9375 1.625 -0.28125 L 1.921875 -0.28125 L 1.890625 -1.390625 L 1.921875 -2.515625 L 1.625 -2.515625 C 1.625 -1.84375 1.625 -1.734375 1.171875 -1.734375 L -0.578125 -1.734375 C -0.421875 -1.78125 0.109375 -2.203125 0.109375 -2.953125 C 0.109375 -4.140625 -0.859375 -5.171875 -2.140625 -5.171875 Z M -2.140625 -4.34375 C -0.9375 -4.34375 -0.109375 -3.65625 -0.109375 -2.921875 C -0.109375 -2.515625 -0.3125 -2.140625 -0.71875 -1.875 C -0.921875 -1.734375 -0.9375 -1.734375 -1.125 -1.734375 L -3.34375 -1.734375 C -3.84375 -2.03125 -4.140625 -2.515625 -4.140625 -3.015625 C -4.140625 -3.734375 -3.265625 -4.34375 -2.140625 -4.34375 Z M -2.140625 -4.34375 "/>
</g>
<g id="glyph-4-7">
<path d="M -2.125 -4.671875 C -3.390625 -4.671875 -4.4375 -3.6875 -4.4375 -2.484375 C -4.4375 -1.234375 -3.359375 -0.28125 -2.125 -0.28125 C -0.84375 -0.28125 0.109375 -1.3125 0.109375 -2.46875 C 0.109375 -3.671875 -0.859375 -4.671875 -2.125 -4.671875 Z M -2.203125 -3.84375 C -1.84375 -3.84375 -1.3125 -3.84375 -0.875 -3.625 C -0.421875 -3.40625 -0.140625 -2.96875 -0.140625 -2.484375 C -0.140625 -2.046875 -0.34375 -1.625 -0.796875 -1.34375 C -1.234375 -1.09375 -1.84375 -1.09375 -2.203125 -1.09375 C -2.59375 -1.09375 -3.125 -1.09375 -3.5625 -1.34375 C -4.015625 -1.609375 -4.234375 -2.078125 -4.234375 -2.46875 C -4.234375 -2.90625 -4.015625 -3.328125 -3.578125 -3.59375 C -3.15625 -3.84375 -2.578125 -3.84375 -2.203125 -3.84375 Z M -2.203125 -3.84375 "/>
</g>
<g id="glyph-4-8">
<path d="M 0 -5.234375 L -0.3125 -5.234375 C -0.3125 -4.53125 -0.375 -4.453125 -0.859375 -4.453125 L -6.890625 -4.453125 L -6.78125 -3.03125 L -6.46875 -3.03125 C -6.46875 -3.71875 -6.40625 -3.796875 -5.90625 -3.796875 L -3.765625 -3.796875 C -4.125 -3.515625 -4.390625 -3.078125 -4.390625 -2.546875 C -4.390625 -1.375 -3.40625 -0.34375 -2.140625 -0.34375 C -0.875 -0.34375 0.109375 -1.3125 0.109375 -2.4375 C 0.109375 -3.078125 -0.234375 -3.515625 -0.546875 -3.765625 L 0.109375 -3.765625 Z M -1.171875 -3.765625 C -0.984375 -3.765625 -0.96875 -3.765625 -0.796875 -3.65625 C -0.328125 -3.359375 -0.109375 -2.921875 -0.109375 -2.484375 C -0.109375 -2.046875 -0.359375 -1.6875 -0.75 -1.453125 C -1.15625 -1.1875 -1.71875 -1.15625 -2.125 -1.15625 C -2.484375 -1.15625 -3.078125 -1.1875 -3.53125 -1.46875 C -3.84375 -1.671875 -4.171875 -2.046875 -4.171875 -2.59375 C -4.171875 -2.9375 -4.015625 -3.359375 -3.578125 -3.65625 C -3.40625 -3.765625 -3.390625 -3.765625 -3.203125 -3.765625 Z M -1.171875 -3.765625 "/>
</g>
<g id="glyph-4-9">
<path d="M -4.9375 -6.1875 C -5.90625 -6.1875 -6.78125 -5.203125 -6.78125 -3.84375 L -6.78125 -0.34375 L -6.46875 -0.34375 L -6.46875 -0.578125 C -6.46875 -1.34375 -6.359375 -1.375 -6 -1.375 L -0.78125 -1.375 C -0.421875 -1.375 -0.3125 -1.34375 -0.3125 -0.578125 L -0.3125 -0.34375 L 0 -0.34375 C -0.03125 -0.6875 -0.03125 -1.421875 -0.03125 -1.8125 C -0.03125 -2.1875 -0.03125 -2.921875 0 -3.28125 L -0.3125 -3.28125 L -0.3125 -3.03125 C -0.3125 -2.265625 -0.421875 -2.25 -0.78125 -2.25 L -3.140625 -2.25 L -3.140625 -3.921875 C -3.140625 -5.125 -3.9375 -6.1875 -4.9375 -6.1875 Z M -4.9375 -5.171875 C -4.46875 -5.171875 -3.390625 -5.171875 -3.390625 -3.59375 L -3.390625 -2.21875 L -6.078125 -2.21875 C -6.40625 -2.21875 -6.46875 -2.25 -6.46875 -2.703125 L -6.46875 -3.59375 C -6.46875 -5.171875 -5.421875 -5.171875 -4.9375 -5.171875 Z M -4.9375 -5.171875 "/>
</g>
<g id="glyph-4-10">
<path d="M -3.96875 -5.046875 L -4.28125 -5.046875 C -4.25 -4.8125 -4.25 -4.53125 -4.25 -4.296875 L -4.28125 -3.4375 L -3.96875 -3.4375 C -3.953125 -3.734375 -3.796875 -3.90625 -3.546875 -3.90625 C -3.4375 -3.90625 -3.421875 -3.890625 -3.296875 -3.84375 L -0.859375 -2.84375 L -3.53125 -1.734375 C -3.625 -1.703125 -3.671875 -1.671875 -3.703125 -1.671875 C -3.96875 -1.671875 -3.96875 -2.046875 -3.96875 -2.234375 L -4.28125 -2.234375 L -4.25 -1.15625 C -4.25 -0.890625 -4.25 -0.484375 -4.28125 -0.1875 L -3.96875 -0.1875 C -3.96875 -0.671875 -3.96875 -0.859375 -3.625 -0.984375 L 0 -2.484375 L 0.578125 -2.234375 C 1.125 -2.015625 1.8125 -1.734375 1.8125 -1.09375 C 1.8125 -1.046875 1.8125 -0.828125 1.640625 -0.640625 C 1.59375 -0.9375 1.375 -1.015625 1.21875 -1.015625 C 0.96875 -1.015625 0.796875 -0.828125 0.796875 -0.609375 C 0.796875 -0.40625 0.9375 -0.1875 1.234375 -0.1875 C 1.671875 -0.1875 2.03125 -0.609375 2.03125 -1.09375 C 2.03125 -1.71875 1.46875 -2.140625 0.90625 -2.375 L -3.328125 -4.125 C -3.953125 -4.375 -3.96875 -4.875 -3.96875 -5.046875 Z M -3.96875 -5.046875 "/>
</g>
<g id="glyph-4-11">
<path d="M 0 -2.53125 L -0.3125 -2.53125 C -0.3125 -1.859375 -0.3125 -1.75 -0.75 -1.75 L -6.890625 -1.75 L -6.78125 -0.328125 L -6.46875 -0.328125 C -6.46875 -1.015625 -6.40625 -1.09375 -5.90625 -1.09375 L -0.75 -1.09375 C -0.3125 -1.09375 -0.3125 -0.984375 -0.3125 -0.328125 L 0 -0.328125 L -0.03125 -1.421875 Z M 0 -2.53125 "/>
</g>
<g id="glyph-5-0">
</g>
<g id="glyph-5-1">
<path d="M 2.078125 -3.5 C 2.078125 -3.71875 1.890625 -3.890625 1.671875 -3.890625 C 1.390625 -3.890625 1.328125 -3.65625 1.296875 -3.5625 L 0.375 -0.5625 L 0.328125 -0.4375 C 0.328125 -0.359375 0.546875 -0.28125 0.609375 -0.28125 C 0.65625 -0.28125 0.6875 -0.3125 0.703125 -0.390625 L 2.015625 -3.28125 C 2.046875 -3.359375 2.078125 -3.40625 2.078125 -3.5 Z M 2.078125 -3.5 "/>
</g>
</g>
<clipPath id="clip-0">
<path clip-rule="nonzero" d="M 4 0.0625 L 41 0.0625 L 41 72 L 4 72 Z M 4 0.0625 "/>
</clipPath>
<clipPath id="clip-1">
<path clip-rule="nonzero" d="M 82 0.0625 L 116 0.0625 L 116 30 L 82 30 Z M 82 0.0625 "/>
</clipPath>
</defs>
<path fill-rule="nonzero" fill="rgb(69.999695%, 69.999695%, 69.999695%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M -62.360931 -22.6788 L -62.360931 -0.00144094 L 62.362583 -0.00144094 L 62.362583 -22.6788 Z M -62.360931 -22.6788 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-0-1" x="50.696596" y="130.242815"/>
<use xlink:href="#glyph-0-2" x="58.484079" y="130.242815"/>
<use xlink:href="#glyph-0-3" x="62.371369" y="130.242815"/>
<use xlink:href="#glyph-0-4" x="67.333446" y="130.242815"/>
<use xlink:href="#glyph-0-5" x="72.847305" y="130.242815"/>
<use xlink:href="#glyph-0-6" x="75.604235" y="130.242815"/>
<use xlink:href="#glyph-0-7" x="79.463738" y="130.242815"/>
</g>
<path fill-rule="nonzero" fill="rgb(98.50769%, 93.215942%, 90.940857%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M -31.182013 34.016559 L -31.182013 56.693918 L 31.179744 56.693918 L 31.179744 34.016559 Z M -31.182013 34.016559 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-1-1" x="60.226675" y="71.742451"/>
</g>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-2-1" x="68.940916" y="73.230686"/>
</g>
<path fill="none" stroke-width="0.79701" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M -24.943093 -0.00144094 L -24.943093 5.668879 L -27.433171 7.162926 L -22.453014 10.15102 L -27.433171 13.143036 L -22.453014 16.13113 L -27.433171 19.119224 L -22.453014 22.107318 L -27.433171 25.095412 L -24.943093 26.589459 L -24.943093 34.016559 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-1-2" x="25.339831" y="101.288985"/>
</g>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-2-1" x="30.505817" y="102.77722"/>
</g>
<path fill="none" stroke-width="0.79701" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.376995 20.69562 L 6.376995 15.115491 L -6.375343 15.115491 L -6.375343 20.69562 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill="none" stroke-width="0.79701" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 3.58497 18.899626 L -3.58724 18.899626 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill="none" stroke-width="0.79701" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 0.000826058 -0.00144094 L 0.000826058 15.115491 M 0.000826058 18.899626 L 0.000826058 34.016559 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-1-3" x="48.236128" y="99.97906"/>
</g>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-2-1" x="52.530491" y="101.46829"/>
</g>
<path fill-rule="nonzero" fill="rgb(98.50769%, 93.215942%, 90.940857%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 22.109585 22.675918 L 22.109585 11.339199 L 27.779905 11.339199 L 27.779905 22.675918 Z M 22.109585 22.675918 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 24.944745 4.633634 L 24.944745 10.841184 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill-rule="nonzero" fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.05396 0.000304754 L 1.607112 1.682578 L 3.089394 0.000304754 L 1.607112 -1.681969 Z M 6.05396 0.000304754 " transform="matrix(0, 0.996141, 0.996141, 0, 92.132509, 108.08659)"/>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 24.944745 29.381484 L 24.944745 23.173934 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill-rule="nonzero" fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.053028 -0.000304754 L 1.610101 1.681969 L 3.088462 -0.000304754 L 1.610101 -1.682578 Z M 6.053028 -0.000304754 " transform="matrix(0, -0.996141, -0.996141, 0, 92.132509, 89.088262)"/>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-1-4" x="79.677322" y="101.068838"/>
</g>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-dasharray="2.98883 2.98883" stroke-miterlimit="10" d="M 31.179744 34.016559 L 65.197744 34.016559 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M -41.142327 1.4181 C -43.534371 2.614122 -45.130373 5.402225 -45.130373 9.386351 L -45.130373 20.377988 C -45.130373 24.362113 -46.722455 27.150217 -49.114499 28.346238 C -46.722455 29.54226 -45.130373 32.330364 -45.130373 36.31841 L -45.130373 47.306126 C -45.130373 51.290252 -43.534371 54.082277 -41.142327 55.274377 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-3-1" x="10.642769" y="110.046059"/>
</g>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-4-1" x="10.642769" y="104.512497"/>
<use xlink:href="#glyph-4-2" x="10.642769" y="101.204777"/>
<use xlink:href="#glyph-4-3" x="10.642769" y="95.690917"/>
<use xlink:href="#glyph-4-4" x="10.642769" y="91.279632"/>
<use xlink:href="#glyph-4-5" x="10.642769" y="86.041664"/>
<use xlink:href="#glyph-4-6" x="10.642769" y="81.079587"/>
</g>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-4-7" x="10.642769" y="75.287852"/>
</g>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-4-8" x="10.642769" y="70.057823"/>
</g>
<path fill-rule="nonzero" fill="rgb(89.99939%, 94.468689%, 97.410583%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 44.706726%, 74.116516%)" stroke-opacity="1" stroke-miterlimit="10" d="M -18.708093 90.707996 L -18.708093 113.385355 L 18.709745 113.385355 L 18.709745 90.707996 Z M -18.708093 90.707996 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill="none" stroke-width="0.79701" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 44.706726%, 74.116516%)" stroke-opacity="1" stroke-miterlimit="10" d="M -12.473094 56.693918 L -12.473094 62.364238 L -14.963172 63.858285 L -9.983016 66.846379 L -14.963172 69.834473 L -9.983016 72.822567 L -14.963172 75.810661 L -9.983016 78.802676 L -14.963172 81.79077 L -12.473094 83.284817 L -12.473094 90.707996 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<g fill="rgb(0%, 44.706726%, 74.116516%)" fill-opacity="1">
<use xlink:href="#glyph-1-2" x="38.924204" y="44.814772"/>
</g>
<g fill="rgb(0%, 44.706726%, 74.116516%)" fill-opacity="1">
<use xlink:href="#glyph-2-2" x="44.09019" y="46.303007"/>
</g>
<path fill="none" stroke-width="0.79701" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 44.706726%, 74.116516%)" stroke-opacity="1" stroke-miterlimit="10" d="M 18.846994 77.387057 L 18.846994 71.806929 L 6.094656 71.806929 L 6.094656 77.387057 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill="none" stroke-width="0.79701" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 44.706726%, 74.116516%)" stroke-opacity="1" stroke-miterlimit="10" d="M 16.05889 75.594985 L 8.88668 75.594985 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill="none" stroke-width="0.79701" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 44.706726%, 74.116516%)" stroke-opacity="1" stroke-miterlimit="10" d="M 12.470825 56.693918 L 12.470825 71.806929 M 12.470825 75.594985 L 12.470825 90.707996 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<g fill="rgb(0%, 44.706726%, 74.116516%)" fill-opacity="1">
<use xlink:href="#glyph-1-3" x="61.820501" y="43.505843"/>
</g>
<g fill="rgb(0%, 44.706726%, 74.116516%)" fill-opacity="1">
<use xlink:href="#glyph-2-2" x="66.114864" y="44.994078"/>
</g>
<g clip-path="url(#clip-0)">
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M -41.142327 58.109537 C -43.534371 59.305559 -45.130373 62.097584 -45.130373 66.081709 L -45.130373 77.069425 C -45.130373 81.05355 -46.722455 83.845575 -49.114499 85.041597 C -46.722455 86.237619 -45.130373 89.025722 -45.130373 93.009848 L -45.130373 104.001485 C -45.130373 107.98561 -43.534371 110.773714 -41.142327 111.969736 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
</g>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-4-9" x="10.642769" y="48.116979"/>
</g>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-4-5" x="10.642769" y="41.640477"/>
</g>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-4-10" x="10.642769" y="36.956277"/>
<use xlink:href="#glyph-4-11" x="10.642769" y="31.718309"/>
<use xlink:href="#glyph-4-7" x="10.642769" y="28.961379"/>
<use xlink:href="#glyph-4-5" x="10.642769" y="23.999303"/>
<use xlink:href="#glyph-4-8" x="10.642769" y="19.037227"/>
</g>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(100%, 0%, 0%)" stroke-opacity="1" stroke-dasharray="2.98883 2.98883" stroke-miterlimit="10" d="M 0.000826058 102.048636 L 70.868064 102.048636 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill-rule="nonzero" fill="rgb(100%, 0%, 0%)" fill-opacity="1" d="M 96.550781 13.875 L 100.980469 12.199219 L 99.503906 13.875 L 100.980469 15.550781 Z M 96.550781 13.875 "/>
<g clip-path="url(#clip-1)">
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(100%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M -6.053641 0.000176117 L -1.606792 1.68245 L -3.089075 0.000176117 L -1.606792 -1.682097 Z M -6.053641 0.000176117 " transform="matrix(0.996141, 0, 0, -0.996141, 102.58106, 13.875175)"/>
</g>
<path fill-rule="nonzero" fill="rgb(100%, 0%, 0%)" fill-opacity="1" d="M 69.269531 13.875 C 69.269531 12.777344 68.378906 11.890625 67.285156 11.890625 C 66.1875 11.890625 65.300781 12.777344 65.300781 13.875 C 65.300781 14.972656 66.1875 15.859375 67.285156 15.859375 C 68.378906 15.859375 69.269531 14.972656 69.269531 13.875 Z M 69.269531 13.875 "/>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-0-8" x="109.050527" y="8.142843"/>
<use xlink:href="#glyph-0-9" x="114.288495" y="8.142843"/>
<use xlink:href="#glyph-0-2" x="117.596215" y="8.142843"/>
<use xlink:href="#glyph-0-3" x="121.483505" y="8.142843"/>
</g>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-0-10" x="126.167705" y="8.142843"/>
</g>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-dasharray="2.98883 2.98883" stroke-miterlimit="10" d="M 56.692263 29.381484 L 56.692263 4.633634 " transform="matrix(0.996141, 0, 0, -0.996141, 67.284333, 115.529815)"/>
<path fill-rule="nonzero" fill="rgb(0%, 0%, 0%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.053018 0.00100665 L 1.610091 1.68328 L 3.088452 0.00100665 L 1.610091 -1.681267 Z M 6.053018 0.00100665 " transform="matrix(0, -0.996141, -0.996141, 0, 123.758815, 89.088252)"/>
<path fill-rule="nonzero" fill="rgb(0%, 0%, 0%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.05398 -0.00100665 L 1.607132 1.681267 L 3.089414 -0.00100665 L 1.607132 -1.68328 Z M 6.05398 -0.00100665 " transform="matrix(0, 0.996141, 0.996141, 0, 123.758815, 108.086571)"/>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-1-5" x="127.562808" y="102.317999"/>
</g>
<g fill="rgb(0%, 0%, 0%)" fill-opacity="1">
<use xlink:href="#glyph-5-1" x="134.316643" y="98.715953"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -33,7 +33,7 @@
<path d="M 4.25 -1.0625 C 4.25 -1.109375 4.1875 -1.1875 4.125 -1.1875 C 4.078125 -1.1875 4.0625 -1.171875 4 -1.09375 C 3.21875 -0.109375 2.140625 -0.109375 2.03125 -0.109375 C 1.40625 -0.109375 1.140625 -0.59375 1.140625 -1.1875 C 1.140625 -1.59375 1.328125 -2.546875 1.671875 -3.15625 C 1.96875 -3.71875 2.515625 -4.140625 3.0625 -4.140625 C 3.390625 -4.140625 3.765625 -4.015625 3.90625 -3.75 C 3.75 -3.75 3.609375 -3.75 3.46875 -3.609375 C 3.3125 -3.46875 3.296875 -3.296875 3.296875 -3.234375 C 3.296875 -2.984375 3.46875 -2.890625 3.65625 -2.890625 C 3.953125 -2.890625 4.21875 -3.125 4.21875 -3.515625 C 4.21875 -4 3.75 -4.359375 3.046875 -4.359375 C 1.71875 -4.359375 0.40625 -2.953125 0.40625 -1.5625 C 0.40625 -0.671875 0.984375 0.109375 2 0.109375 C 3.421875 0.109375 4.25 -0.9375 4.25 -1.0625 Z M 4.25 -1.0625 "/>
</g>
<g id="glyph-1-3">
<path d="M 5.453125 -6.28125 C 5.453125 -6.734375 5 -6.96875 4.59375 -6.96875 C 4.25 -6.96875 3.640625 -6.78125 3.34375 -5.8125 C 3.28125 -5.59375 3.25 -5.5 3.015625 -4.25 L 2.328125 -4.25 C 2.140625 -4.25 2.03125 -4.25 2.03125 -4.0625 C 2.03125 -3.953125 2.125 -3.953125 2.3125 -3.953125 L 2.96875 -3.953125 L 2.21875 -0.046875 C 2.046875 0.90625 1.875 1.8125 1.359375 1.8125 C 1.328125 1.8125 1.078125 1.8125 0.890625 1.625 C 1.34375 1.59375 1.4375 1.25 1.4375 1.09375 C 1.4375 0.875 1.25 0.75 1.0625 0.75 C 0.8125 0.75 0.515625 0.96875 0.515625 1.34375 C 0.515625 1.78125 0.953125 2.03125 1.359375 2.03125 C 1.90625 2.03125 2.296875 1.4375 2.484375 1.0625 C 2.796875 0.4375 3.015625 -0.75 3.03125 -0.8125 L 3.625 -3.953125 L 4.46875 -3.953125 C 4.671875 -3.953125 4.765625 -3.953125 4.765625 -4.140625 C 4.765625 -4.25 4.671875 -4.25 4.5 -4.25 L 3.6875 -4.25 C 3.796875 -4.828125 3.78125 -4.8125 3.890625 -5.375 C 3.9375 -5.59375 4.0625 -6.296875 4.125 -6.40625 C 4.21875 -6.59375 4.390625 -6.75 4.59375 -6.75 C 4.625 -6.75 4.890625 -6.75 5.078125 -6.5625 C 4.640625 -6.53125 4.546875 -6.1875 4.546875 -6.03125 C 4.546875 -5.8125 4.71875 -5.6875 4.90625 -5.6875 C 5.171875 -5.6875 5.453125 -5.90625 5.453125 -6.28125 Z M 5.453125 -6.28125 "/>
<path d="M 7.1875 -4.734375 L 7.390625 -6.453125 C 7.421875 -6.71875 7.359375 -6.71875 7.125 -6.71875 L 2.28125 -6.71875 C 2.078125 -6.71875 1.984375 -6.71875 1.984375 -6.515625 C 1.984375 -6.40625 2.078125 -6.40625 2.265625 -6.40625 C 2.625 -6.40625 2.90625 -6.40625 2.90625 -6.234375 C 2.90625 -6.1875 2.90625 -6.171875 2.859375 -6 L 1.546875 -0.765625 C 1.453125 -0.390625 1.4375 -0.3125 0.65625 -0.3125 C 0.484375 -0.3125 0.375 -0.3125 0.375 -0.125 C 0.375 0 0.5 0 0.515625 0 L 1.828125 -0.03125 L 3.296875 0 C 3.390625 0 3.5 0 3.5 -0.1875 C 3.5 -0.265625 3.453125 -0.296875 3.453125 -0.296875 C 3.421875 -0.3125 3.390625 -0.3125 3.171875 -0.3125 C 2.953125 -0.3125 2.90625 -0.3125 2.65625 -0.328125 C 2.375 -0.359375 2.34375 -0.390625 2.34375 -0.515625 C 2.34375 -0.515625 2.34375 -0.609375 2.375 -0.75 L 2.984375 -3.203125 L 3.953125 -3.203125 C 4.6875 -3.203125 4.765625 -3.046875 4.765625 -2.765625 C 4.765625 -2.703125 4.765625 -2.578125 4.703125 -2.28125 C 4.6875 -2.234375 4.671875 -2.171875 4.671875 -2.171875 C 4.671875 -2.09375 4.734375 -2.046875 4.796875 -2.046875 C 4.890625 -2.046875 4.890625 -2.078125 4.9375 -2.265625 L 5.484375 -4.40625 C 5.515625 -4.515625 5.515625 -4.53125 5.515625 -4.5625 C 5.515625 -4.5625 5.484375 -4.671875 5.390625 -4.671875 C 5.296875 -4.671875 5.28125 -4.625 5.25 -4.46875 C 5.03125 -3.6875 4.8125 -3.515625 3.96875 -3.515625 L 3.078125 -3.515625 L 3.703125 -6.03125 C 3.796875 -6.375 3.796875 -6.40625 4.234375 -6.40625 L 5.546875 -6.40625 C 6.75 -6.40625 6.984375 -6.078125 6.984375 -5.328125 C 6.984375 -5.09375 6.984375 -5.0625 6.953125 -4.796875 C 6.9375 -4.65625 6.9375 -4.640625 6.9375 -4.609375 C 6.9375 -4.5625 6.96875 -4.5 7.046875 -4.5 C 7.15625 -4.5 7.171875 -4.546875 7.1875 -4.734375 Z M 7.1875 -4.734375 "/>
</g>
<g id="glyph-1-4">
<path d="M 6.34375 -2.4375 C 6.34375 -2.484375 6.3125 -2.546875 6.234375 -2.546875 C 6.140625 -2.546875 6.125 -2.5 6.0625 -2.34375 C 5.734375 -1.4375 5.296875 -0.3125 3.578125 -0.3125 L 2.65625 -0.3125 C 2.515625 -0.3125 2.5 -0.3125 2.4375 -0.3125 C 2.34375 -0.328125 2.3125 -0.328125 2.3125 -0.421875 C 2.3125 -0.4375 2.3125 -0.46875 2.359375 -0.640625 L 3.6875 -5.96875 C 3.78125 -6.328125 3.8125 -6.4375 4.734375 -6.4375 C 5.03125 -6.4375 5.109375 -6.4375 5.109375 -6.625 C 5.109375 -6.75 5 -6.75 4.953125 -6.75 L 3.5 -6.71875 L 2.1875 -6.75 C 2.109375 -6.75 2 -6.75 2 -6.546875 C 2 -6.4375 2.078125 -6.4375 2.265625 -6.4375 C 2.265625 -6.4375 2.484375 -6.4375 2.640625 -6.421875 C 2.828125 -6.40625 2.90625 -6.390625 2.90625 -6.265625 C 2.90625 -6.21875 2.90625 -6.1875 2.875 -6.078125 L 1.546875 -0.765625 C 1.453125 -0.390625 1.4375 -0.3125 0.65625 -0.3125 C 0.484375 -0.3125 0.390625 -0.3125 0.390625 -0.109375 C 0.390625 0 0.46875 0 0.65625 0 L 5.21875 0 C 5.453125 0 5.46875 0 5.53125 -0.171875 L 6.3125 -2.296875 C 6.34375 -2.40625 6.34375 -2.4375 6.34375 -2.4375 Z M 6.34375 -2.4375 "/>
@ -130,7 +130,7 @@
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 24.944344 29.381332 L 24.944344 23.1764 " transform="matrix(0.990895, 0, 0, -0.990895, 77.372612, 79.637259)"/>
<path fill-rule="nonzero" fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.05413 0.0000960518 L 1.607394 1.683391 L 3.085697 0.0000960518 L 1.607394 -1.683199 Z M 6.05413 0.0000960518 " transform="matrix(0, -0.990895, -0.990895, 0, 102.089939, 53.334946)"/>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-1-3" x="89.70034" y="65.252433"/>
<use xlink:href="#glyph-1-3" x="87.877093" y="66.157121"/>
</g>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-dasharray="2.98883 2.98883" stroke-miterlimit="10" d="M 31.180813 34.017291 L 65.197559 34.017291 " transform="matrix(0.990895, 0, 0, -0.990895, 77.372612, 79.637259)"/>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M -41.145671 1.415775 C -43.534609 2.614186 -45.127235 5.401281 -45.127235 9.386786 L -45.127235 20.377479 C -45.127235 24.362985 -46.723802 27.150079 -49.112741 28.348491 C -46.723802 29.54296 -45.127235 32.330054 -45.127235 36.31556 L -45.127235 47.306253 C -45.127235 51.291759 -43.534609 54.078853 -41.145671 55.277264 " transform="matrix(0.990895, 0, 0, -0.990895, 77.372612, 79.637259)"/>

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -33,7 +33,7 @@
<path d="M 4.25 -1.0625 C 4.25 -1.125 4.1875 -1.1875 4.140625 -1.1875 C 4.078125 -1.1875 4.0625 -1.171875 4 -1.09375 C 3.21875 -0.109375 2.140625 -0.109375 2.03125 -0.109375 C 1.40625 -0.109375 1.140625 -0.59375 1.140625 -1.1875 C 1.140625 -1.59375 1.328125 -2.546875 1.671875 -3.171875 C 1.984375 -3.734375 2.515625 -4.15625 3.0625 -4.15625 C 3.40625 -4.15625 3.78125 -4.03125 3.921875 -3.765625 C 3.765625 -3.765625 3.625 -3.765625 3.484375 -3.625 C 3.328125 -3.46875 3.296875 -3.296875 3.296875 -3.234375 C 3.296875 -3 3.484375 -2.890625 3.671875 -2.890625 C 3.953125 -2.890625 4.21875 -3.125 4.21875 -3.515625 C 4.21875 -4 3.765625 -4.375 3.0625 -4.375 C 1.71875 -4.375 0.40625 -2.953125 0.40625 -1.5625 C 0.40625 -0.671875 0.984375 0.109375 2 0.109375 C 3.421875 0.109375 4.25 -0.9375 4.25 -1.0625 Z M 4.25 -1.0625 "/>
</g>
<g id="glyph-1-3">
<path d="M 5.453125 -6.296875 C 5.453125 -6.75 5 -6.96875 4.59375 -6.96875 C 4.265625 -6.96875 3.640625 -6.796875 3.34375 -5.8125 C 3.28125 -5.609375 3.25 -5.515625 3.015625 -4.265625 L 2.328125 -4.265625 C 2.140625 -4.265625 2.03125 -4.265625 2.03125 -4.078125 C 2.03125 -3.953125 2.125 -3.953125 2.3125 -3.953125 L 2.96875 -3.953125 L 2.21875 -0.046875 C 2.046875 0.90625 1.875 1.8125 1.359375 1.8125 C 1.328125 1.8125 1.078125 1.8125 0.890625 1.625 C 1.34375 1.609375 1.4375 1.25 1.4375 1.09375 C 1.4375 0.875 1.25 0.75 1.0625 0.75 C 0.8125 0.75 0.53125 0.96875 0.53125 1.34375 C 0.53125 1.796875 0.953125 2.03125 1.359375 2.03125 C 1.90625 2.03125 2.296875 1.4375 2.484375 1.0625 C 2.796875 0.4375 3.03125 -0.75 3.03125 -0.828125 L 3.625 -3.953125 L 4.484375 -3.953125 C 4.671875 -3.953125 4.78125 -3.953125 4.78125 -4.15625 C 4.78125 -4.265625 4.671875 -4.265625 4.515625 -4.265625 L 3.6875 -4.265625 C 3.796875 -4.84375 3.78125 -4.8125 3.890625 -5.390625 C 3.9375 -5.59375 4.078125 -6.296875 4.140625 -6.421875 C 4.21875 -6.609375 4.390625 -6.75 4.59375 -6.75 C 4.640625 -6.75 4.890625 -6.75 5.078125 -6.578125 C 4.65625 -6.53125 4.546875 -6.1875 4.546875 -6.046875 C 4.546875 -5.8125 4.734375 -5.703125 4.921875 -5.703125 C 5.171875 -5.703125 5.453125 -5.921875 5.453125 -6.296875 Z M 5.453125 -6.296875 "/>
<path d="M 7.203125 -4.75 L 7.390625 -6.453125 C 7.421875 -6.71875 7.375 -6.71875 7.125 -6.71875 L 2.28125 -6.71875 C 2.09375 -6.71875 1.984375 -6.71875 1.984375 -6.53125 C 1.984375 -6.421875 2.078125 -6.421875 2.265625 -6.421875 C 2.625 -6.421875 2.90625 -6.421875 2.90625 -6.234375 C 2.90625 -6.203125 2.90625 -6.1875 2.859375 -6 L 1.546875 -0.765625 C 1.453125 -0.390625 1.4375 -0.3125 0.65625 -0.3125 C 0.484375 -0.3125 0.375 -0.3125 0.375 -0.125 C 0.375 0 0.5 0 0.53125 0 L 1.828125 -0.03125 L 3.296875 0 C 3.390625 0 3.515625 0 3.515625 -0.1875 C 3.515625 -0.265625 3.453125 -0.296875 3.453125 -0.296875 C 3.421875 -0.3125 3.40625 -0.3125 3.171875 -0.3125 C 2.953125 -0.3125 2.90625 -0.3125 2.65625 -0.328125 C 2.375 -0.359375 2.34375 -0.390625 2.34375 -0.53125 C 2.34375 -0.53125 2.34375 -0.609375 2.390625 -0.75 L 3 -3.21875 L 3.953125 -3.21875 C 4.703125 -3.21875 4.78125 -3.0625 4.78125 -2.765625 C 4.78125 -2.703125 4.78125 -2.578125 4.703125 -2.28125 C 4.6875 -2.234375 4.671875 -2.171875 4.671875 -2.171875 C 4.671875 -2.09375 4.734375 -2.0625 4.796875 -2.0625 C 4.890625 -2.0625 4.890625 -2.09375 4.9375 -2.265625 L 5.484375 -4.40625 C 5.515625 -4.515625 5.515625 -4.546875 5.515625 -4.5625 C 5.515625 -4.5625 5.5 -4.671875 5.40625 -4.671875 C 5.296875 -4.671875 5.296875 -4.625 5.25 -4.46875 C 5.046875 -3.703125 4.8125 -3.515625 3.96875 -3.515625 L 3.078125 -3.515625 L 3.703125 -6.03125 C 3.796875 -6.375 3.8125 -6.421875 4.25 -6.421875 L 5.546875 -6.421875 C 6.765625 -6.421875 7 -6.09375 7 -5.328125 C 7 -5.109375 7 -5.0625 6.96875 -4.796875 C 6.9375 -4.671875 6.9375 -4.65625 6.9375 -4.625 C 6.9375 -4.5625 6.96875 -4.5 7.0625 -4.5 C 7.171875 -4.5 7.1875 -4.5625 7.203125 -4.75 Z M 7.203125 -4.75 "/>
</g>
<g id="glyph-1-4">
<path d="M 6.359375 -2.4375 C 6.359375 -2.484375 6.328125 -2.546875 6.234375 -2.546875 C 6.15625 -2.546875 6.140625 -2.5 6.078125 -2.34375 C 5.734375 -1.4375 5.296875 -0.3125 3.59375 -0.3125 L 2.65625 -0.3125 C 2.515625 -0.3125 2.5 -0.3125 2.4375 -0.3125 C 2.34375 -0.328125 2.3125 -0.34375 2.3125 -0.421875 C 2.3125 -0.4375 2.3125 -0.46875 2.359375 -0.640625 L 3.703125 -5.984375 C 3.78125 -6.34375 3.8125 -6.453125 4.75 -6.453125 C 5.046875 -6.453125 5.125 -6.453125 5.125 -6.640625 C 5.125 -6.75 5.015625 -6.75 4.96875 -6.75 L 3.5 -6.71875 L 2.1875 -6.75 C 2.109375 -6.75 2 -6.75 2 -6.5625 C 2 -6.453125 2.09375 -6.453125 2.28125 -6.453125 C 2.28125 -6.453125 2.484375 -6.453125 2.65625 -6.421875 C 2.828125 -6.40625 2.921875 -6.40625 2.921875 -6.265625 C 2.921875 -6.234375 2.90625 -6.203125 2.875 -6.078125 L 1.546875 -0.765625 C 1.453125 -0.390625 1.4375 -0.3125 0.65625 -0.3125 C 0.484375 -0.3125 0.390625 -0.3125 0.390625 -0.109375 C 0.390625 0 0.46875 0 0.65625 0 L 5.234375 0 C 5.46875 0 5.484375 0 5.53125 -0.171875 L 6.3125 -2.296875 C 6.359375 -2.40625 6.359375 -2.4375 6.359375 -2.4375 Z M 6.359375 -2.4375 "/>
@ -133,7 +133,7 @@
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 24.943946 29.382779 L 24.943946 23.176703 " transform="matrix(0.99323, 0, 0, -0.99323, 77.287419, 113.609645)"/>
<path fill-rule="nonzero" fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.051947 0.000493694 L 1.607799 1.683764 L 3.08656 0.000493694 L 1.607799 -1.682777 Z M 6.051947 0.000493694 " transform="matrix(0, -0.99323, -0.99323, 0, 102.06299, 87.245352)"/>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-1-3" x="89.644196" y="99.190922"/>
<use xlink:href="#glyph-1-3" x="87.816652" y="100.097741"/>
</g>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-dasharray="2.98883 2.98883" stroke-miterlimit="10" d="M 31.181486 34.015705 L 65.196919 34.015705 " transform="matrix(0.99323, 0, 0, -0.99323, 77.287419, 113.609645)"/>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M -41.14408 1.416107 C -43.535268 2.611701 -45.128082 5.404042 -45.128082 9.388044 L -45.128082 20.376496 C -45.128082 24.360498 -46.72483 27.152839 -49.116017 28.348433 C -46.72483 29.544027 -45.128082 32.332435 -45.128082 36.316437 L -45.128082 47.304889 C -45.128082 51.292824 -43.535268 54.081232 -41.14408 55.276826 " transform="matrix(0.99323, 0, 0, -0.99323, 77.287419, 113.609645)"/>

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -33,7 +33,7 @@
<path d="M 4.25 -1.0625 C 4.25 -1.125 4.1875 -1.1875 4.140625 -1.1875 C 4.078125 -1.1875 4.0625 -1.171875 4 -1.09375 C 3.21875 -0.109375 2.140625 -0.109375 2.03125 -0.109375 C 1.40625 -0.109375 1.140625 -0.59375 1.140625 -1.1875 C 1.140625 -1.59375 1.328125 -2.546875 1.671875 -3.171875 C 1.984375 -3.734375 2.515625 -4.15625 3.0625 -4.15625 C 3.40625 -4.15625 3.78125 -4.03125 3.921875 -3.765625 C 3.765625 -3.765625 3.625 -3.765625 3.484375 -3.625 C 3.328125 -3.46875 3.296875 -3.296875 3.296875 -3.234375 C 3.296875 -3 3.484375 -2.890625 3.671875 -2.890625 C 3.953125 -2.890625 4.21875 -3.125 4.21875 -3.515625 C 4.21875 -4 3.765625 -4.375 3.0625 -4.375 C 1.71875 -4.375 0.40625 -2.953125 0.40625 -1.5625 C 0.40625 -0.671875 0.984375 0.109375 2 0.109375 C 3.421875 0.109375 4.25 -0.9375 4.25 -1.0625 Z M 4.25 -1.0625 "/>
</g>
<g id="glyph-1-3">
<path d="M 5.453125 -6.296875 C 5.453125 -6.75 5 -6.96875 4.59375 -6.96875 C 4.265625 -6.96875 3.640625 -6.796875 3.34375 -5.8125 C 3.28125 -5.609375 3.25 -5.515625 3.015625 -4.265625 L 2.328125 -4.265625 C 2.140625 -4.265625 2.03125 -4.265625 2.03125 -4.078125 C 2.03125 -3.953125 2.125 -3.953125 2.3125 -3.953125 L 2.96875 -3.953125 L 2.21875 -0.046875 C 2.046875 0.90625 1.875 1.8125 1.359375 1.8125 C 1.328125 1.8125 1.078125 1.8125 0.890625 1.625 C 1.34375 1.609375 1.4375 1.25 1.4375 1.09375 C 1.4375 0.875 1.25 0.75 1.0625 0.75 C 0.8125 0.75 0.53125 0.96875 0.53125 1.34375 C 0.53125 1.796875 0.953125 2.03125 1.359375 2.03125 C 1.90625 2.03125 2.296875 1.4375 2.484375 1.0625 C 2.796875 0.4375 3.03125 -0.75 3.03125 -0.828125 L 3.625 -3.953125 L 4.484375 -3.953125 C 4.671875 -3.953125 4.78125 -3.953125 4.78125 -4.15625 C 4.78125 -4.265625 4.671875 -4.265625 4.515625 -4.265625 L 3.6875 -4.265625 C 3.796875 -4.84375 3.78125 -4.8125 3.890625 -5.390625 C 3.9375 -5.59375 4.078125 -6.296875 4.140625 -6.421875 C 4.21875 -6.609375 4.390625 -6.75 4.59375 -6.75 C 4.640625 -6.75 4.890625 -6.75 5.078125 -6.578125 C 4.65625 -6.53125 4.546875 -6.1875 4.546875 -6.046875 C 4.546875 -5.8125 4.734375 -5.703125 4.921875 -5.703125 C 5.171875 -5.703125 5.453125 -5.921875 5.453125 -6.296875 Z M 5.453125 -6.296875 "/>
<path d="M 7.203125 -4.75 L 7.390625 -6.453125 C 7.421875 -6.71875 7.375 -6.71875 7.125 -6.71875 L 2.28125 -6.71875 C 2.09375 -6.71875 1.984375 -6.71875 1.984375 -6.53125 C 1.984375 -6.421875 2.078125 -6.421875 2.265625 -6.421875 C 2.625 -6.421875 2.90625 -6.421875 2.90625 -6.234375 C 2.90625 -6.203125 2.90625 -6.1875 2.859375 -6 L 1.546875 -0.765625 C 1.453125 -0.390625 1.4375 -0.3125 0.65625 -0.3125 C 0.484375 -0.3125 0.375 -0.3125 0.375 -0.125 C 0.375 0 0.5 0 0.53125 0 L 1.828125 -0.03125 L 3.296875 0 C 3.390625 0 3.515625 0 3.515625 -0.1875 C 3.515625 -0.265625 3.453125 -0.296875 3.453125 -0.296875 C 3.421875 -0.3125 3.40625 -0.3125 3.171875 -0.3125 C 2.953125 -0.3125 2.90625 -0.3125 2.65625 -0.328125 C 2.375 -0.359375 2.34375 -0.390625 2.34375 -0.53125 C 2.34375 -0.53125 2.34375 -0.609375 2.390625 -0.75 L 3 -3.21875 L 3.953125 -3.21875 C 4.703125 -3.21875 4.78125 -3.0625 4.78125 -2.765625 C 4.78125 -2.703125 4.78125 -2.578125 4.703125 -2.28125 C 4.6875 -2.234375 4.671875 -2.171875 4.671875 -2.171875 C 4.671875 -2.09375 4.734375 -2.0625 4.796875 -2.0625 C 4.890625 -2.0625 4.890625 -2.09375 4.9375 -2.265625 L 5.484375 -4.40625 C 5.515625 -4.515625 5.515625 -4.546875 5.515625 -4.5625 C 5.515625 -4.5625 5.5 -4.671875 5.40625 -4.671875 C 5.296875 -4.671875 5.296875 -4.625 5.25 -4.46875 C 5.046875 -3.703125 4.8125 -3.515625 3.96875 -3.515625 L 3.078125 -3.515625 L 3.703125 -6.03125 C 3.796875 -6.375 3.8125 -6.421875 4.25 -6.421875 L 5.546875 -6.421875 C 6.765625 -6.421875 7 -6.09375 7 -5.328125 C 7 -5.109375 7 -5.0625 6.96875 -4.796875 C 6.9375 -4.671875 6.9375 -4.65625 6.9375 -4.625 C 6.9375 -4.5625 6.96875 -4.5 7.0625 -4.5 C 7.171875 -4.5 7.1875 -4.5625 7.203125 -4.75 Z M 7.203125 -4.75 "/>
</g>
<g id="glyph-1-4">
<path d="M 6.359375 -2.4375 C 6.359375 -2.484375 6.328125 -2.546875 6.234375 -2.546875 C 6.15625 -2.546875 6.140625 -2.5 6.078125 -2.34375 C 5.734375 -1.4375 5.296875 -0.3125 3.59375 -0.3125 L 2.65625 -0.3125 C 2.515625 -0.3125 2.5 -0.3125 2.4375 -0.3125 C 2.34375 -0.328125 2.3125 -0.34375 2.3125 -0.421875 C 2.3125 -0.4375 2.3125 -0.46875 2.359375 -0.640625 L 3.703125 -5.984375 C 3.78125 -6.34375 3.8125 -6.453125 4.75 -6.453125 C 5.046875 -6.453125 5.125 -6.453125 5.125 -6.640625 C 5.125 -6.75 5.015625 -6.75 4.96875 -6.75 L 3.5 -6.71875 L 2.1875 -6.75 C 2.109375 -6.75 2 -6.75 2 -6.5625 C 2 -6.453125 2.09375 -6.453125 2.28125 -6.453125 C 2.28125 -6.453125 2.484375 -6.453125 2.65625 -6.421875 C 2.828125 -6.40625 2.921875 -6.40625 2.921875 -6.265625 C 2.921875 -6.234375 2.90625 -6.203125 2.875 -6.078125 L 1.546875 -0.765625 C 1.453125 -0.390625 1.4375 -0.3125 0.65625 -0.3125 C 0.484375 -0.3125 0.390625 -0.3125 0.390625 -0.109375 C 0.390625 0 0.46875 0 0.65625 0 L 5.234375 0 C 5.46875 0 5.484375 0 5.53125 -0.171875 L 6.3125 -2.296875 C 6.359375 -2.40625 6.359375 -2.4375 6.359375 -2.4375 Z M 6.359375 -2.4375 "/>
@ -130,7 +130,7 @@
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 24.946023 29.382282 L 24.946023 23.174126 " transform="matrix(0.992268, 0, 0, -0.992268, 77.285915, 57.24495)"/>
<path fill-rule="nonzero" fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.054565 -0.0015825 L 1.610045 1.68332 L 3.086303 -0.0015825 L 1.610045 -1.682548 Z M 6.054565 -0.0015825 " transform="matrix(0, -0.992268, -0.992268, 0, 102.037492, 30.90619)"/>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-1-3" x="89.630725" y="42.840191"/>
<use xlink:href="#glyph-1-3" x="87.804952" y="43.746132"/>
</g>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-dasharray="2.98883 2.98883" stroke-miterlimit="10" d="M 31.181735 34.015762 L 65.19865 34.015762 " transform="matrix(0.992268, 0, 0, -0.992268, 77.285915, 57.24495)"/>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M -41.143084 1.416055 C -43.53659 2.612808 -45.130948 5.403919 -45.130948 9.387847 L -45.130948 20.375141 C -45.130948 24.363005 -46.72137 27.15018 -49.114876 28.346933 C -46.72137 29.543686 -45.130948 32.33086 -45.130948 36.318725 L -45.130948 47.306019 C -45.130948 51.289946 -43.53659 54.081058 -41.143084 55.277811 " transform="matrix(0.992268, 0, 0, -0.992268, 77.285915, 57.24495)"/>

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -33,7 +33,7 @@
<path d="M 4.25 -1.0625 C 4.25 -1.125 4.1875 -1.1875 4.140625 -1.1875 C 4.078125 -1.1875 4.0625 -1.171875 4 -1.09375 C 3.21875 -0.109375 2.140625 -0.109375 2.03125 -0.109375 C 1.40625 -0.109375 1.140625 -0.59375 1.140625 -1.1875 C 1.140625 -1.59375 1.328125 -2.546875 1.671875 -3.171875 C 1.984375 -3.734375 2.515625 -4.15625 3.0625 -4.15625 C 3.40625 -4.15625 3.78125 -4.03125 3.921875 -3.765625 C 3.765625 -3.765625 3.625 -3.765625 3.484375 -3.625 C 3.328125 -3.46875 3.296875 -3.296875 3.296875 -3.234375 C 3.296875 -3 3.484375 -2.890625 3.671875 -2.890625 C 3.953125 -2.890625 4.21875 -3.125 4.21875 -3.515625 C 4.21875 -4 3.765625 -4.375 3.0625 -4.375 C 1.71875 -4.375 0.40625 -2.953125 0.40625 -1.5625 C 0.40625 -0.671875 0.984375 0.109375 2 0.109375 C 3.421875 0.109375 4.25 -0.9375 4.25 -1.0625 Z M 4.25 -1.0625 "/>
</g>
<g id="glyph-1-3">
<path d="M 5.453125 -6.296875 C 5.453125 -6.75 5 -6.96875 4.59375 -6.96875 C 4.265625 -6.96875 3.640625 -6.796875 3.34375 -5.8125 C 3.28125 -5.609375 3.25 -5.515625 3.015625 -4.265625 L 2.328125 -4.265625 C 2.140625 -4.265625 2.03125 -4.265625 2.03125 -4.078125 C 2.03125 -3.953125 2.125 -3.953125 2.3125 -3.953125 L 2.96875 -3.953125 L 2.21875 -0.046875 C 2.046875 0.90625 1.875 1.8125 1.359375 1.8125 C 1.328125 1.8125 1.078125 1.8125 0.890625 1.625 C 1.34375 1.609375 1.4375 1.25 1.4375 1.09375 C 1.4375 0.875 1.25 0.75 1.0625 0.75 C 0.8125 0.75 0.53125 0.96875 0.53125 1.34375 C 0.53125 1.796875 0.953125 2.03125 1.359375 2.03125 C 1.90625 2.03125 2.296875 1.4375 2.484375 1.0625 C 2.796875 0.4375 3.03125 -0.75 3.03125 -0.828125 L 3.625 -3.953125 L 4.484375 -3.953125 C 4.671875 -3.953125 4.78125 -3.953125 4.78125 -4.15625 C 4.78125 -4.265625 4.671875 -4.265625 4.515625 -4.265625 L 3.6875 -4.265625 C 3.796875 -4.84375 3.78125 -4.8125 3.890625 -5.390625 C 3.9375 -5.59375 4.078125 -6.296875 4.140625 -6.421875 C 4.21875 -6.609375 4.390625 -6.75 4.59375 -6.75 C 4.640625 -6.75 4.890625 -6.75 5.078125 -6.578125 C 4.65625 -6.53125 4.546875 -6.1875 4.546875 -6.046875 C 4.546875 -5.8125 4.734375 -5.703125 4.921875 -5.703125 C 5.171875 -5.703125 5.453125 -5.921875 5.453125 -6.296875 Z M 5.453125 -6.296875 "/>
<path d="M 7.203125 -4.75 L 7.390625 -6.453125 C 7.421875 -6.71875 7.375 -6.71875 7.125 -6.71875 L 2.28125 -6.71875 C 2.09375 -6.71875 1.984375 -6.71875 1.984375 -6.53125 C 1.984375 -6.421875 2.078125 -6.421875 2.265625 -6.421875 C 2.625 -6.421875 2.90625 -6.421875 2.90625 -6.234375 C 2.90625 -6.203125 2.90625 -6.1875 2.859375 -6 L 1.546875 -0.765625 C 1.453125 -0.390625 1.4375 -0.3125 0.65625 -0.3125 C 0.484375 -0.3125 0.375 -0.3125 0.375 -0.125 C 0.375 0 0.5 0 0.53125 0 L 1.828125 -0.03125 L 3.296875 0 C 3.390625 0 3.515625 0 3.515625 -0.1875 C 3.515625 -0.265625 3.453125 -0.296875 3.453125 -0.296875 C 3.421875 -0.3125 3.40625 -0.3125 3.171875 -0.3125 C 2.953125 -0.3125 2.90625 -0.3125 2.65625 -0.328125 C 2.375 -0.359375 2.34375 -0.390625 2.34375 -0.53125 C 2.34375 -0.53125 2.34375 -0.609375 2.390625 -0.75 L 3 -3.21875 L 3.953125 -3.21875 C 4.703125 -3.21875 4.78125 -3.0625 4.78125 -2.765625 C 4.78125 -2.703125 4.78125 -2.578125 4.703125 -2.28125 C 4.6875 -2.234375 4.671875 -2.171875 4.671875 -2.171875 C 4.671875 -2.09375 4.734375 -2.0625 4.796875 -2.0625 C 4.890625 -2.0625 4.890625 -2.09375 4.9375 -2.265625 L 5.484375 -4.40625 C 5.515625 -4.515625 5.515625 -4.546875 5.515625 -4.5625 C 5.515625 -4.5625 5.5 -4.671875 5.40625 -4.671875 C 5.296875 -4.671875 5.296875 -4.625 5.25 -4.46875 C 5.046875 -3.703125 4.8125 -3.515625 3.96875 -3.515625 L 3.078125 -3.515625 L 3.703125 -6.03125 C 3.796875 -6.375 3.8125 -6.421875 4.25 -6.421875 L 5.546875 -6.421875 C 6.765625 -6.421875 7 -6.09375 7 -5.328125 C 7 -5.109375 7 -5.0625 6.96875 -4.796875 C 6.9375 -4.671875 6.9375 -4.65625 6.9375 -4.625 C 6.9375 -4.5625 6.96875 -4.5 7.0625 -4.5 C 7.171875 -4.5 7.1875 -4.5625 7.203125 -4.75 Z M 7.203125 -4.75 "/>
</g>
<g id="glyph-1-4">
<path d="M 4.921875 -1.421875 C 4.921875 -1.515625 4.84375 -1.515625 4.8125 -1.515625 C 4.703125 -1.515625 4.703125 -1.46875 4.671875 -1.328125 C 4.5 -0.6875 4.328125 -0.109375 3.921875 -0.109375 C 3.65625 -0.109375 3.625 -0.359375 3.625 -0.5625 C 3.625 -0.796875 3.640625 -0.875 3.671875 -1.03125 L 5.109375 -6.75 C 5.109375 -6.75 5.109375 -6.859375 4.96875 -6.859375 C 4.828125 -6.859375 3.890625 -6.78125 3.71875 -6.75 C 3.640625 -6.75 3.578125 -6.703125 3.578125 -6.5625 C 3.578125 -6.453125 3.671875 -6.453125 3.8125 -6.453125 C 4.296875 -6.453125 4.3125 -6.375 4.3125 -6.28125 L 4.28125 -6.078125 L 3.6875 -3.734375 C 3.515625 -4.109375 3.21875 -4.375 2.78125 -4.375 C 1.625 -4.375 0.390625 -2.921875 0.390625 -1.46875 C 0.390625 -0.546875 0.9375 0.109375 1.71875 0.109375 C 1.90625 0.109375 2.40625 0.0625 3 -0.640625 C 3.078125 -0.21875 3.421875 0.109375 3.890625 0.109375 C 4.25 0.109375 4.46875 -0.125 4.625 -0.4375 C 4.796875 -0.796875 4.921875 -1.421875 4.921875 -1.421875 Z M 3.546875 -3.109375 L 3.046875 -1.171875 C 3 -1 3 -0.984375 2.84375 -0.8125 C 2.40625 -0.265625 2 -0.109375 1.734375 -0.109375 C 1.234375 -0.109375 1.09375 -0.65625 1.09375 -1.03125 C 1.09375 -1.53125 1.421875 -2.75 1.640625 -3.203125 C 1.953125 -3.78125 2.390625 -4.15625 2.796875 -4.15625 C 3.4375 -4.15625 3.578125 -3.34375 3.578125 -3.28125 C 3.578125 -3.21875 3.546875 -3.171875 3.546875 -3.109375 Z M 3.546875 -3.109375 "/>
@ -183,7 +183,7 @@
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 24.944961 86.075168 L 24.944961 79.869092 " transform="matrix(0.99323, 0, 0, -0.99323, 77.079379, 113.609645)"/>
<path fill-rule="nonzero" fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(85.096741%, 32.157898%, 9.411621%)" stroke-opacity="1" stroke-miterlimit="10" d="M 6.054649 -0.000521497 L 1.610501 1.682749 L 3.089262 -0.000521497 L 1.610501 -1.683792 Z M 6.054649 -0.000521497 " transform="matrix(0, -0.99323, -0.99323, 0, 101.854951, 30.935536)"/>
<g fill="rgb(85.096741%, 32.157898%, 9.411621%)" fill-opacity="1">
<use xlink:href="#glyph-1-3" x="89.436156" y="42.881721"/>
<use xlink:href="#glyph-1-3" x="87.608613" y="43.788541"/>
</g>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-dasharray="2.98883 2.98883" stroke-miterlimit="10" d="M 31.182501 90.708094 L 65.197934 90.708094 " transform="matrix(0.99323, 0, 0, -0.99323, 77.079379, 113.609645)"/>
<path fill="none" stroke-width="0.99628" stroke-linecap="butt" stroke-linejoin="miter" stroke="rgb(0%, 0%, 0%)" stroke-opacity="1" stroke-miterlimit="10" d="M -41.143065 58.112429 C -43.534253 59.308023 -45.131 62.096431 -45.131 66.080433 L -45.131 77.068885 C -45.131 81.05682 -46.723814 83.845228 -49.115002 85.040822 C -46.723814 86.236416 -45.131 89.024824 -45.131 93.008826 L -45.131 104.001211 C -45.131 107.985213 -43.534253 110.773621 -41.143065 111.969215 " transform="matrix(0.99323, 0, 0, -0.99323, 77.079379, 113.609645)"/>

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

@ -307,8 +307,8 @@ The research presented in this manuscript has been possible thanks to the Fonds
**** Synchrotron Radiation Facilities :ignore:
Synchrotron radiation facilities are particle accelerators where electrons are accelerated to near the speed of light.
As these electrons traverse magnetic fields, typically generated by insertion devices or bending magnets, they produce exceptionally bright light known as synchrotron light.
This intense electromagnetic radiation, particularly in the X-ray spectrum, is subsequently used for the detailed study of matter.
As these electrons interact with magnetic fields, typically generated by insertion devices or bending magnets, they produce exceptionally bright light known as synchrotron light.
This intense electromagnetic radiation, centered mainly in the X-ray spectrum domain, is subsequently used for the detailed study of matter.
Approximately 70 synchrotron light sources are operational worldwide, some of which are indicated in Figure\nbsp{}ref:fig:introduction_synchrotrons.
This global distribution of such facilities underscores the significant utility of synchrotron light for the scientific community.
@ -320,7 +320,7 @@ This global distribution of such facilities underscores the significant utility
These facilities fundamentally comprise two main parts: the accelerator and storage ring, where electron acceleration and light generation occur, and the beamlines, where the intense X-ray beams are conditioned and directed for experimental use.
The acrfull:esrf, shown in Figure\nbsp{}ref:fig:introduction_esrf_picture, is a joint research institution supported by 19 member countries.
The acrfull:esrf, shown in Figure\nbsp{}ref:fig:introduction_esrf_picture, is a joint research institution supported by 19 partner nations.
The acrshort:esrf started user operations in 1994 as the world's first third-generation synchrotron.
Its accelerator complex, schematically depicted in Figure\nbsp{}ref:fig:introduction_esrf_schematic, includes a linear accelerator where electrons are initially generated and accelerated, a booster synchrotron to further accelerate the electrons, and an 844-meter circumference storage ring where electrons are maintained in a stable orbit.
@ -349,7 +349,7 @@ In August 2020, following an extensive 20-month upgrade period, the acrshort:esr
This upgrade implemented a novel storage ring concept that substantially increases the brilliance and coherence of the X-ray beams.
Brilliance, a measure of the photon flux, is a key figure of merit for synchrotron facilities.
It experienced an approximate 100-fold increase with the implementation of acrshort:ebs, as shown in the historical evolution depicted in Figure\nbsp{}ref:fig:introduction_moore_law_brillance.
It experienced an approximate 30-fold increase with the implementation of acrshort:ebs, as shown in the historical evolution depicted in Figure\nbsp{}ref:fig:introduction_moore_law_brillance.
While this enhanced beam quality presents unprecedented scientific opportunities, it concurrently introduces considerable engineering challenges, particularly regarding experimental instrumentation and sample positioning systems.
#+name: fig:introduction_moore_law_brillance
@ -389,11 +389,12 @@ These components are housed in multiple Optical Hutches, as depicted in Figure\n
#+end_figure
Following the optical hutches, the conditioned beam enters the Experimental Hutch (Figure\nbsp{}ref:fig:introduction_id31_cad), where, for experiments pertinent to this work, focusing optics are used.
The sample is mounted on a positioning stage, referred to as the "end-station", that enables precise alignment relative to the X-ray beam.
Detectors are used to capture the X-rays transmitted through or scattered by the sample.
The sample is mounted on a positioning stage, referred to as the "end-station", which enables precise alignment relative to the X-ray beam.
Detectors are used to capture the X-rays beam after interaction with the sample.
Throughout this thesis, the standard acrshort:esrf coordinate system is adopted, wherein the X-axis aligns with the beam direction, Y is transverse horizontal, and Z is vertical upwards against gravity.
The specific end-station employed on the ID31 beamline is designated the "micro-station".
The specific end-station employed on the ID31 beamline is referred to as the "micro-station".
As depicted in Figure\nbsp{}ref:fig:introduction_micro_station_dof, it comprises a stack of positioning stages: a translation stage (in blue), a tilt stage (in red), a spindle for continuous rotation (in yellow), and a positioning hexapod (in purple).
The sample itself (cyan), potentially housed within complex sample environments (e.g., for high pressure or extreme temperatures), is mounted on top of this assembly.
Each stage serves distinct positioning functions; for example, the positioning hexapod enables fine static adjustments, while the $T_y$ translation and $R_z$ rotation stages are used for specific scanning applications.
@ -421,10 +422,10 @@ Two illustrative examples are provided.
Tomography experiments, schematically represented in Figure\nbsp{}ref:fig:introduction_tomography_schematic, involve placing a sample in the X-ray beam path while controlling its vertical rotation angle using a dedicated stage.
Detector images are captured at numerous rotation angles, allowing the reconstruction of three-dimensional sample structure (Figure\nbsp{}ref:fig:introduction_tomography_results)\nbsp{}[[cite:&schoeppler17_shapin_highl_regul_glass_archit]].
This reconstruction depends critically on maintaining the sample's acrfull:poi within the beam throughout the rotation process.
This reconstruction depends critically on maintaining the sample's acrfull:poi within the beam during the rotation process.
Mapping or scanning experiments, depicted in Figure\nbsp{}ref:fig:introduction_scanning_schematic, typically use focusing optics to have a small beam size at the sample's location.
The sample is then translated perpendicular to the beam (along Y and Z axes), while data is collected at each position.
The sample is then translated perpendicular to the beam (along Y and Z axes), while data are collected at each position.
An example\nbsp{}[[cite:&sanchez-cano17_synch_x_ray_fluor_nanop]] of a resulting two-dimensional map, acquired with $20\,\text{nm}$ step increments, is shown in Figure\nbsp{}ref:fig:introduction_scanning_results.
The fidelity and resolution of such images are intrinsically linked to the focused beam size and the positioning precision of the sample relative to the focused beam.
Positional instabilities, such as vibrations and thermal drifts, inevitably lead to blurring and distortion in the obtained image.
@ -472,7 +473,7 @@ Other advanced imaging modalities practiced on ID31 include reflectivity, diffra
:END:
Continuous progress in both synchrotron source technology and X-ray optics have led to the availability of smaller, more intense, and more stable X-ray beams.
The ESRF-EBS upgrade, for instance, resulted in a significantly reduced source size, particularly in the horizontal dimension, coupled with increased brilliance, as illustrated in Figure\nbsp{}ref:fig:introduction_beam_3rd_4th_gen.
The ESRF-EBS upgrade, for instance, resulted in a significantly reduction of the horizontal source size, coupled with a decrease of the beam horizontal divergence, leading to an increased brilliance, as illustrated in Figure\nbsp{}ref:fig:introduction_beam_3rd_4th_gen.
#+name: fig:introduction_beam_3rd_4th_gen
#+caption: View of the ESRF X-ray beam before the EBS upgrade (\subref{fig:introduction_beam_3rd_gen}) and after the EBS upgrade (\subref{fig:introduction_beam_4th_gen}). The brilliance is increased, whereas the horizontal size and emittance are reduced.
@ -493,9 +494,9 @@ The ESRF-EBS upgrade, for instance, resulted in a significantly reduced source s
#+end_figure
Concurrently, substantial progress has been made in micro- and nano-focusing optics since the early days of acrshort:esrf, where typical spot sizes were on the order of $10\,\upmu\text{m}$ [[cite:&riekel89_microf_works_at_esrf]].
Various technologies, including zone plates, Kirkpatrick-Baez mirrors, and compound refractive lenses, have been developed and refined, each presenting unique advantages and limitations\nbsp{}[[cite:&barrett16_reflec_optic_hard_x_ray]].
Various technologies, including Fresnel Zone Plates (FZP), Kirkpatrick-Baez (KB) mirrors, Multilayer Laue Lenses (MLL), and Compound Refractive Lenses (CRL), have been developed and refined, each presenting unique advantages and limitations\nbsp{}[[cite:&barrett16_reflec_optic_hard_x_ray]].
The historical reduction in achievable spot sizes is represented in Figure\nbsp{}ref:fig:introduction_moore_law_focus.
Presently, focused beam dimensions in the range of 10 to 20 nm (Full Width at Half Maximum, FWHM) are routinely achieved on specialized nano-focusing beamlines.
Presently, focused beam dimensions in the range of 10 to 20 nm (Full Width at Half Maximum, FWHM) may be achieved on specialized nano-focusing beamlines.
#+name: fig:introduction_moore_law_focus
#+caption: Evolution of the measured spot size for different hard X-ray focusing elements. Adapted from [[cite:&barrett24_x_optic_accel_based_light_sourc]].
@ -504,7 +505,7 @@ Presently, focused beam dimensions in the range of 10 to 20 nm (Full Width at Ha
[[file:figs/introduction_moore_law_focus.png]]
The increased brilliance introduces challenges related to radiation damage, particularly at high-energy beamlines like ID31.
Consequently, prolonged exposure of a single sample area to the focused beam must be avoided.
Consequently, long exposure of a single sample area to the focused beam must be avoided.
Traditionally, experiments were conducted in a "step-scan" mode, illustrated in Figure\nbsp{}ref:fig:introduction_scan_step.
In this mode, the sample is moved to the desired position, the detector acquisition is initiated, and a beam shutter is opened for a brief, controlled duration to limit radiation damage before closing; this cycle is repeated for each measurement point.
While effective for mitigating radiation damage, this sequential process can be time-consuming, especially for high-resolution maps requiring numerous points.
@ -531,14 +532,14 @@ An alternative, more efficient approach is the "fly-scan" or "continuous-scan" m
Here, the sample is moved continuously while the detector is triggered to acquire data "on the fly" at predefined positions or time intervals.
This technique significantly accelerates data acquisition, enabling better use of valuable beamtime while potentially enabling finer spatial resolution\nbsp{}[[cite:&huang15_fly_scan_ptych]].
Recent developments in detector technology have yielded sensors with improved spatial resolution, lower noise characteristics, and substantially higher frame rates\nbsp{}[[cite:&hatsui15_x_ray_imagin_detec_synch_xfel_sourc]].
Recent developments in detector technology have yielded sensors with improved spatial resolution, lower noise characteristics, better efficiency, and substantially higher frame rates\nbsp{}[[cite:&hatsui15_x_ray_imagin_detec_synch_xfel_sourc]].
Historically, detector integration times for scanning and tomography experiments were in the range of 0.1 to 1 second.
This extended integration effectively filtered high-frequency vibrations in beam or sample position, resulting in apparently stable but larger beam.
With higher X-ray flux and reduced detector noise, integration times can now be shortened to approximately 1 millisecond, with frame rates exceeding $100\,\text{Hz}$.
With higher X-ray flux and reduced detector noise, integration times can now be shortened down to approximately 1 millisecond, with frame rates exceeding $100\,\text{Hz}$.
This reduction in integration time has two major implications for positioning requirements.
Firstly, for a given spatial sampling ("pixel size"), faster integration necessitates proportionally higher scanning velocities.
Secondly, the shorter integration times make the measurements more susceptible to high-frequency vibrations.
Secondly, the shorter integration times make the measurements more sensitive to high-frequency vibrations.
Therefore, not only the sample position must be stable against long-term drifts, but it must also be actively controlled to minimize vibrations, especially during dynamic fly-scan acquisitions.
**** Existing Nano Positioning End-Stations
@ -599,7 +600,7 @@ However, when a large number of DoFs are required, the cumulative errors and lim
#+end_subfigure
#+end_figure
The concept of using an external metrology to measure and potentially correct for positioning errors is increasing used for nano-positioning end-stations.
The concept of using an external metrology to measure and potentially correct for positioning errors is increasingly used for nano-positioning end-stations.
Ideally, the relative position between the sample's acrfull:poi and the X-ray beam focus would be measured directly.
In practice, direct measurement is often impossible; instead, the sample position is typically measured relative to a reference frame associated with the focusing optics, providing an indirect measurement.
@ -695,18 +696,18 @@ The advent of fourth-generation light sources, coupled with advancements in focu
With ID31's anticipated minimum beam dimensions of approximately $200\,\text{nm}\times 100\,\text{nm}$, the primary experimental objective is maintaining the sample's acrshort:poi within this beam.
This necessitates peak-to-peak positioning errors below $200\,\text{nm}$ in $D_y$ and $200\,\text{nm}$ in $D_z$, corresponding to acrfull:rms errors of $30\,\text{nm}$ and $15\,\text{nm}$, respectively.
Additionally, the $R_y$ tilt angle error must remain below $0.1\,\text{mdeg}$ ($250\,\text{nrad RMS}$).
Given the high frame rates of modern detectors, these specified positioning errors must be maintained even when considering high-frequency vibrations.
Given the high frame rates of modern detectors, these specified positioning errors must be maintained even when considering high-frequency vibrations (typically up to $1\,\text{kHz}$).
These demanding stability requirements must be achieved within the specific context of the ID31 beamline, which necessitates the integration with the existing micro-station, accommodating a wide range of experimental configurations requiring high mobility, and handling substantial payloads up to $50\,\text{kg}$.
The existing micro-station, despite being composed of high-performance stages, has a positioning accuracy limited to approximately $\SI{10}{\micro\m}$ and $\SI{10}{\micro\rad}$ due to inherent factors such as backlash, thermal expansion, imperfect guiding, and vibrations.
The existing micro-station, despite being composed of high-performance stages, has a positioning accuracy limited to approximately $10\,\upmu m$ and $10\,\upmu\text{rad}$ (peak to peak) due to inherent factors such as backlash, thermal expansion, imperfect guiding, and vibrations.
The primary objective of this project is therefore defined as enhancing the positioning accuracy and stability of the ID31 micro-station by roughly two orders of magnitude, to fully leverage the capabilities offered by the ESRF-EBS source and modern detectors, without compromising its existing mobility and payload capacity.
***** The Nano Active Stabilization System Concept
To address these challenges, the concept of a acrfull:nass is proposed.
As schematically illustrated in Figure\nbsp{}ref:fig:introduction_nass_concept_schematic, the acrshort:nass comprises four principal components integrated with the existing micro-station (yellow): a 5-DoFs online metrology system (red), an active stabilization platform (blue), and the associated control system and instrumentation (purple).
As schematically illustrated in Figure\nbsp{}ref:fig:introduction_nass_concept_schematic, the acrshort:nass comprises three principal components integrated with the existing micro-station (yellow): a 5-DoFs online metrology system (red), an active stabilization platform (blue), and the associated control system and instrumentation (purple).
This system essentially functions as a high-performance, multi-axis vibration isolation and error correction platform situated between the micro-station and the sample.
It actively compensates for positioning errors measured by the external metrology system.
@ -963,7 +964,7 @@ The measurement setup is schematically shown in Figure\nbsp{}ref:fig:uniaxial_us
The vertical inertial motion of the granite $x_{g}$ and the top platform of the positioning hexapod $x_{h}$ are measured using geophones[fn:uniaxial_1].
Three acrfullpl:frf were computed: one from $F_{h}$ to $x_{h}$ (i.e., the compliance of the micro-station), one from $F_{g}$ to $x_{h}$ (or from $F_{h}$ to $x_{g}$) and one from $F_{g}$ to $x_{g}$.
Due to the poor coherence at low frequencies, these acrlongpl:frf will only be shown between 20 and $200\,\text{Hz}$ (solid lines in Figure\nbsp{}ref:fig:uniaxial_comp_frf_meas_model).
Due to the poor coherence[fn:uniaxial_2] at low frequencies, these acrlongpl:frf will only be shown between 20 and $200\,\text{Hz}$ (solid lines in Figure\nbsp{}ref:fig:uniaxial_comp_frf_meas_model).
#+name: fig:micro_station_uniaxial_model
#+caption: Schematic of the Micro-Station measurement setup and uniaxial model.
@ -1016,7 +1017,7 @@ However, the goal is not to have a perfect match with the measurement (this woul
More accurate models will be used later on.
#+name: fig:uniaxial_comp_frf_meas_model
#+caption: Comparison of the measured FRF and the uniaxial model dynamics.
#+caption: Comparison of the measured Frequency Response Functions (FRF) and the uniaxial model dynamics.
#+attr_latex: :scale 0.8
[[file:figs/uniaxial_comp_frf_meas_model.png]]
@ -1088,7 +1089,7 @@ For further analysis, 9 "configurations" of the uniaxial NASS model of Figure\nb
*** Identification of Disturbances
<<sec:uniaxial_disturbances>>
***** Introduction :ignore:
To quantify disturbances (red signals in Figure\nbsp{}ref:fig:uniaxial_model_micro_station_nass), three geophones[fn:uniaxial_2] are used.
To quantify disturbances (red signals in Figure\nbsp{}ref:fig:uniaxial_model_micro_station_nass), three geophones[fn:uniaxial_3] are used.
One is located on the floor, another one on the granite, and the last one on the positioning hexapod's top platform (see Figure\nbsp{}ref:fig:uniaxial_ustation_meas_disturbances).
The geophone located on the floor was used to measure the floor motion $x_f$ while the other two geophones were used to measure vibrations introduced by scanning of the $T_y$ stage and $R_z$ stage (see Figure\nbsp{}ref:fig:uniaxial_ustation_dynamical_id_setup).
@ -1112,7 +1113,7 @@ The geophone located on the floor was used to measure the floor motion $x_f$ whi
***** Ground Motion
To acquire the geophone signals, the measurement setup shown in Figure\nbsp{}ref:fig:uniaxial_geophone_meas_chain is used.
The voltage generated by the geophone is amplified using a low noise voltage amplifier[fn:uniaxial_3] with a gain of $60\,\text{dB}$ before going to the acrfull:adc.
The voltage generated by the geophone is amplified using a low noise voltage amplifier[fn:uniaxial_4] with a gain of $60\,\text{dB}$ before going to the acrfull:adc.
This is done to improve the signal-to-noise ratio.
To reconstruct the displacement $x_f$ from the measured voltage $\hat{V}_{x_f}$, the transfer function of the measurement chain from $x_f$ to $\hat{V}_{x_f}$ needs to be estimated.
@ -1194,7 +1195,7 @@ This is done for two extreme sample masses $m_s = 1\,\text{kg}$ and $m_s = 50\,\
The obtained sensitivity to disturbances for the three active platform stiffnesses are shown in Figure\nbsp{}ref:fig:uniaxial_sensitivity_disturbances_nano_hexapod_stiffnesses for the sample mass $m_s = 1\,\text{kg}$ (the same conclusions can be drawn with $m_s = 50\,\text{kg}$):
- The soft active platform is more sensitive to forces applied on the sample (cable forces for instance), which is expected due to its lower stiffness (Figure\nbsp{}ref:fig:uniaxial_sensitivity_disturbances_nano_hexapod_stiffnesses_fs)
- Between the suspension mode of the active platform (here at $5\,\text{Hz}$) and the first mode of the micro-station (here at $70\,\text{Hz}$), the disturbances induced by the stage vibrations are filtered out (Figure\nbsp{}ref:fig:uniaxial_sensitivity_disturbances_nano_hexapod_stiffnesses_ft)
- Between the suspension mode[fn:uniaxial_5] of the active platform (here at $5\,\text{Hz}$) and the first mode of the micro-station (here at $70\,\text{Hz}$), the disturbances induced by the stage vibrations are filtered out (Figure\nbsp{}ref:fig:uniaxial_sensitivity_disturbances_nano_hexapod_stiffnesses_ft)
- Above the suspension mode of the active platform, the sample's inertial motion is unaffected by the floor motion; therefore, the sensitivity to floor motion is close to $1$ (Figure\nbsp{}ref:fig:uniaxial_sensitivity_disturbances_nano_hexapod_stiffnesses_xf)
#+name: fig:uniaxial_sensitivity_disturbances_nano_hexapod_stiffnesses
@ -1426,7 +1427,7 @@ All three active damping approaches can lead to /critical damping/ of the active
There is even some damping authority on micro-station modes in the following cases:
- IFF with a stiff active platform (Figure\nbsp{}ref:fig:uniaxial_root_locus_damping_techniques_stiff) ::
This can be understood from the mechanical equivalent of IFF shown in Figure\nbsp{}ref:fig:uniaxial_active_damping_iff_equiv considering an high stiffness $k$.
The micro-station top platform is connected to an inertial mass (the active platform) through a damper, which dampens the micro-station suspension suspension mode.
The micro-station top platform is connected to an inertial mass (the active platform) through a damper, which dampens the micro-station suspension mode.
- DVF with a stiff active platform (Figure\nbsp{}ref:fig:uniaxial_root_locus_damping_techniques_stiff) ::
In that case, the "sky hook damper" (see mechanical equivalent of acrshort:dvf in Figure\nbsp{}ref:fig:uniaxial_active_damping_dvf_equiv) is connected to the micro-station top platform through the stiff active platform.
- RDC with a soft active platform (Figure\nbsp{}ref:fig:uniaxial_root_locus_damping_techniques_micro_station_mode) ::
@ -1667,7 +1668,7 @@ The required feedback bandwidths were estimated in Section\nbsp{}ref:sec:uniaxia
Position feedback controllers are designed for each active platform such that it is stable for all considered sample masses with similar stability margins (see Nyquist plots in Figure\nbsp{}ref:fig:uniaxial_nyquist_hac).
An arbitrary minimum modulus margin of $0.25$ was chosen when designing the controllers.
These acrfullpl:hac are generally composed of a lag at low frequency for disturbance rejection, a lead to increase the phase margin near the crossover frequency, and a acrfull:lpf to increase the robustness to high frequency dynamics.
These acrfullpl:hac are generally composed of a lag at low frequency for disturbance rejection, a lead to increase the phase margin near the crossover frequency, and a acrfull:lpf to increase the robustness to high-frequency dynamics.
The controllers used for the three active platform are shown in Equation\nbsp{}eqref:eq:uniaxial_hac_formulas, and the parameters used are summarized in Table\nbsp{}ref:tab:uniaxial_feedback_controller_parameters.
\begin{subequations} \label{eq:uniaxial_hac_formulas}
@ -1885,7 +1886,7 @@ When neglecting the support compliance, a large feedback bandwidth can be achiev
#+end_subfigure
#+end_figure
***** Effect of support compliance on $L/F$
***** Effect of support compliance on $L/f$
Some support compliance is now added and the model shown in Figure\nbsp{}ref:fig:uniaxial_support_compliance_test_system is used.
The parameters of the support (i.e., $m_{\mu}$, $c_{\mu}$ and $k_{\mu}$) are chosen to match the vertical mode at $70\,\text{Hz}$ seen on the micro-station (Figure\nbsp{}ref:fig:uniaxial_comp_frf_meas_model).
@ -1973,38 +1974,38 @@ Note that the observations made in this section are also affected by the ratio b
***** Introduction :ignore:
Up to this section, the sample was modeled as a mass rigidly fixed to the active platform (as shown in Figure\nbsp{}ref:fig:uniaxial_paylaod_dynamics_rigid_schematic).
Up to this section, the sample was modeled as a mass rigidly fixed to the active platform (as shown in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_rigid_schematic).
However, such a sample may present internal dynamics, and its mounting on the active platform may have limited stiffness.
To study the effect of the sample dynamics, the models shown in Figure\nbsp{}ref:fig:uniaxial_paylaod_dynamics_schematic are used.
To study the effect of the sample dynamics, the models shown in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_schematic are used.
#+name: fig:uniaxial_payload_dynamics_models
#+caption: Models used to study the effect of payload dynamics.
#+attr_latex: :options [htbp]
#+begin_figure
#+attr_latex: :caption \subcaption{\label{fig:uniaxial_paylaod_dynamics_rigid_schematic}Rigid payload}
#+attr_latex: :caption \subcaption{\label{fig:uniaxial_payload_dynamics_rigid_schematic}Rigid payload}
#+attr_latex: :options {0.49\textwidth}
#+begin_subfigure
#+attr_latex: :scale 1
[[file:figs/uniaxial_paylaod_dynamics_rigid_schematic.png]]
[[file:figs/uniaxial_payload_dynamics_rigid_schematic.png]]
#+end_subfigure
#+attr_latex: :caption \subcaption{\label{fig:uniaxial_paylaod_dynamics_schematic}Flexible payload}
#+attr_latex: :caption \subcaption{\label{fig:uniaxial_payload_dynamics_schematic}Flexible payload}
#+attr_latex: :options {0.49\textwidth}
#+begin_subfigure
#+attr_latex: :scale 1
[[file:figs/uniaxial_paylaod_dynamics_schematic.png]]
[[file:figs/uniaxial_payload_dynamics_schematic.png]]
#+end_subfigure
#+end_figure
***** Impact on Plant Dynamics
To study the impact of the flexibility between the active platform and the payload, a first (reference) model with a rigid payload, as shown in Figure\nbsp{}ref:fig:uniaxial_paylaod_dynamics_rigid_schematic is used.
Then "flexible" payload whose model is shown in Figure\nbsp{}ref:fig:uniaxial_paylaod_dynamics_schematic are considered.
To study the impact of the flexibility between the active platform and the payload, a first (reference) model with a rigid payload, as shown in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_rigid_schematic is used.
Then "flexible" payload whose model is shown in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_schematic are considered.
The resonances of the payload are set at $\omega_s = 20\,\text{Hz}$ and at $\omega_s = 200\,\text{Hz}$ while its mass is either $m_s = 1\,\text{kg}$ or $m_s = 50\,\text{kg}$.
The transfer functions from the active platform force $f$ to the motion of the active platform top platform are computed for all the above configurations and are compared for a soft active platform ($k_n = 0.01\,\text{N}/\upmu\text{m}$) in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_soft_nano_hexapod.
The transfer functions from the active platform force $F$ to the motion of the active platform top platform are computed for all the above configurations and are compared for a soft active platform ($k_n = 0.01\,\text{N}/\upmu\text{m}$) in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_soft_nano_hexapod.
It can be seen that the mode of the sample adds an anti-resonance followed by a resonance (zero/pole pattern).
The frequency of the anti-resonance corresponds to the "free" resonance of the sample $\omega_s = \sqrt{k_s/m_s}$.
The flexibility of the sample also changes the high frequency gain (the mass line is shifted from $\frac{1}{(m_n + m_s)s^2}$ to $\frac{1}{m_ns^2}$).
The flexibility of the sample also changes the high-frequency gain (the mass line is shifted from $\frac{1}{(m_n + m_s)s^2}$ to $\frac{1}{m_ns^2}$).
#+name: fig:uniaxial_payload_dynamics_soft_nano_hexapod
#+caption: Effect of the payload dynamics on the soft active platform with light sample (\subref{fig:uniaxial_payload_dynamics_soft_nano_hexapod_light}), and heavy sample (\subref{fig:uniaxial_payload_dynamics_soft_nano_hexapod_heavy}).
@ -2027,7 +2028,7 @@ The flexibility of the sample also changes the high frequency gain (the mass lin
The same transfer functions are now compared when using a stiff active platform ($k_n = 100\,\text{N}/\upmu\text{m}$) in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_stiff_nano_hexapod.
In this case, the sample's resonance $\omega_s$ is smaller than the active platform resonance $\omega_n$.
This changes the zero/pole pattern to a pole/zero pattern (the frequency of the zero still being equal to $\omega_s$).
Even though the added sample's flexibility still shifts the high frequency mass line as for the soft active platform, the dynamics below the active platform resonance is much less impacted, even when the sample mass is high and when the sample resonance is at low frequency (see yellow curve in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_stiff_nano_hexapod_heavy).
Even though the added sample's flexibility still shifts the high-frequency mass line as for the soft active platform, the dynamics below the active platform resonance is much less impacted, even when the sample mass is high and when the sample resonance is at low frequency (see yellow curve in Figure\nbsp{}ref:fig:uniaxial_payload_dynamics_stiff_nano_hexapod_heavy).
#+name: fig:uniaxial_payload_dynamics_stiff_nano_hexapod
#+caption: Effect of the payload dynamics on the stiff active platform with light sample (\subref{fig:uniaxial_payload_dynamics_stiff_nano_hexapod_light}), and heavy sample (\subref{fig:uniaxial_payload_dynamics_stiff_nano_hexapod_heavy}).
@ -2093,7 +2094,7 @@ What happens is that above $\omega_s$, even though the motion $d$ can be control
Payload dynamics is usually a major concern when designing a positioning system.
In this section, the impact of the sample dynamics on the plant was found to vary with the sample mass and the relative resonance frequency of the sample $\omega_s$ and of the active platform $\omega_n$.
The larger the sample mass, the larger the effect (i.e., change of high frequency gain, appearance of additional resonances and anti-resonances).
The larger the sample mass, the larger the effect (i.e., change of high-frequency gain, appearance of additional resonances and anti-resonances).
A zero/pole pattern is observed if $\omega_s > \omega_n$ and a pole/zero pattern if $\omega_s > \omega_n$.
Such additional dynamics can induce stability issues depending on their position relative to the desired feedback bandwidth, as explained in\nbsp{}[[cite:&rankers98_machin Section 4.2]].
The general conclusion is that the stiffer the active platform, the less it is impacted by the payload's dynamics, which would make the feedback controller more robust to a change of payload.
@ -2167,7 +2168,7 @@ After the dynamics of this system is studied, the objective will be to dampen th
To obtain the equations of motion for the system represented in Figure\nbsp{}ref:fig:rotating_3dof_model_schematic, the Lagrangian equation\nbsp{}eqref:eq:rotating_lagrangian_equations is used.
$L = T - V$ is the Lagrangian, $T$ the kinetic coenergy, $V$ the potential energy, $D$ the dissipation function, and $Q_i$ the generalized force associated with the generalized variable $\begin{bmatrix}q_1 & q_2\end{bmatrix} = \begin{bmatrix}d_u & d_v\end{bmatrix}$.
These terms are derived in\nbsp{}eqref:eq:rotating_energy_functions_lagrange.
Note that the equation of motion corresponding to constant rotation along $\vec{i}_w$ is disregarded because this motion is imposed by the rotation stage.
Note that the equation of motion corresponding to constant rotation around $\vec{i}_w$ is disregarded because this motion is imposed by the rotation stage.
\begin{equation}\label{eq:rotating_lagrangian_equations}
\frac{d}{dt} \left( \frac{\partial L}{\partial \dot{q}_i} \right) + \frac{\partial D}{\partial \dot{q}_i} - \frac{\partial L}{\partial q_i} = Q_i
@ -2175,7 +2176,7 @@ Note that the equation of motion corresponding to constant rotation along $\vec{
\begin{equation} \label{eq:rotating_energy_functions_lagrange}
\begin{aligned}
T &= \frac{1}{2} m \left( ( \dot{d}_u - \Omega d_v )^2 + ( \dot{d}_v + \Omega d_u )^2 \right), \quad Q_1 = F_u, \quad Q_2 = F_v, \\
T &= \frac{1}{2} m \left( ( \dot{d}_u - \Omega d_v )^2 + ( \dot{d}_v + \Omega d_u )^2 \right), \quad Q_u = F_u, \quad Q_v = F_v, \\
V &= \frac{1}{2} k \big( {d_u}^2 + {d_v}^2 \big), \quad D = \frac{1}{2} c \big( \dot{d}_u{}^2 + \dot{d}_v{}^2 \big)
\end{aligned}
\end{equation}
@ -2422,7 +2423,7 @@ As explained in\nbsp{}[[cite:&preumont08_trans_zeros_struc_contr_with;&skogestad
Whereas collocated IFF is usually associated with unconditional stability\nbsp{}[[cite:&preumont91_activ]], this property is lost due to gyroscopic effects as soon as the rotation velocity becomes non-null.
This can be seen in the Root locus plot (Figure\nbsp{}ref:fig:rotating_root_locus_iff_pure_int) where poles corresponding to the controller are bound to the right half plane implying closed-loop system instability.
Physically, this can be explained as follows: at low frequencies, the loop gain is huge due to the pure integrator in $K_{F}$ and the finite gain of the plant (Figure\nbsp{}ref:fig:rotating_iff_bode_plot_effect_rot).
The control system is thus cancels the spring forces, which makes the suspended platform not capable to hold the payload against centrifugal forces, hence the instability.
The control system is thus canceling the spring forces, which makes the suspended platform not capable to hold the payload against centrifugal forces, hence the instability.
*** Integral Force Feedback with a High-Pass Filter
<<sec:rotating_iff_pseudo_int>>
@ -2782,7 +2783,7 @@ This is a useful metric when disturbances are directly applied to the payload.
Here, it is defined as the transfer function from external forces applied on the payload along $\vec{i}_x$ to the displacement of the payload along the same direction.
Very similar results were obtained for the two proposed IFF modifications in terms of transmissibility and compliance (Figure\nbsp{}ref:fig:rotating_comp_techniques_trans_compliance).
Using IFF degrades the compliance at low frequencies, whereas using relative damping control degrades the transmissibility at high frequencies.
Using IFF degrades the compliance at low frequencies, whereas using relative damping control degrades the transmissibility at high-frequencies.
This is very well known characteristics of these common active damping techniques that hold when applied to rotating platforms.
#+name: fig:rotating_comp_techniques_trans_compliance
@ -3145,7 +3146,7 @@ The dynamics of the soft active platform ($k_n = 0.01\,\text{N}/\upmu\text{m}$)
In addition, the attainable damping ratio of the soft active platform when using acrshort:iff is limited by gyroscopic effects.
To be closer to the acrlong:nass dynamics, the limited compliance of the micro-station has been considered.
Results are similar to those of the uniaxial model except that come complexity is added for the soft active platform due to the spindle's rotation.
Results are similar to those of the uniaxial model except that some complexity is added for the soft active platform due to the spindle's rotation.
For the moderately stiff active platform ($k_n = 1\,\text{N}/\upmu\text{m}$), the gyroscopic effects only slightly affect the system dynamics, and therefore could represent a good alternative to the soft active platform that showed better results with the uniaxial model.
** Micro Station - Modal Analysis
@ -3159,7 +3160,7 @@ Although the inertia of each solid body can easily be estimated from its geometr
Experimental modal analysis will be used to tune the model, and to verify that a multi-body model can accurately represent the dynamics of the micro-station.
The tuning approach for the multi-body model based on measurements is illustrated in Figure\nbsp{}ref:fig:modal_vibration_analysis_procedure.
First, a /response model/ is obtained, which corresponds to a set of acrshortpl:frf computed from experimental measurements.
First, a /response model/ is obtained, which corresponds to a set of acrfullpl:frf computed from experimental measurements.
From this response model, the modal model can be computed, which consists of two matrices: one containing the natural frequencies and damping factors of the considered modes, and another describing the mode shapes.
This modal model can then be used to tune the spatial model (i.e. the multi-body model), that is, to tune the mass of the considered solid bodies and the springs and dampers connecting the solid bodies.
@ -3600,7 +3601,7 @@ The obtained natural frequencies and associated modal damping are summarized in
**** Modal Parameter Extraction
<<ssec:modal_parameter_extraction>>
Generally, modal identification is using curve-fitting a theoretical expression to the actual measured acrshort:frf data.
Generally, modal identification involves curve-fitting a theoretical model to the measured acrshort:frf data.
However, there are multiple levels of complexity, from fitting of a single resonance, to fitting a complete curve encompassing several resonances and working on a set of many acrshort:frf plots all obtained from the same structure.
Here, the last method is used because it provides a unique and consistent model.
@ -3748,7 +3749,7 @@ The kinematics of the micro-station (i.e. how the motion of the stages are combi
Then, the multi-body model is presented and tuned to match the measured dynamics of the micro-station (Section\nbsp{}ref:sec:ustation_modeling).
Disturbances affecting the positioning accuracy also need to be modeled properly.
To do so, the effects of these disturbances were first measured experimental and then injected into the multi-body model (Section\nbsp{}ref:sec:ustation_disturbances).
To do so, the effects of these disturbances were first measured experimentally and then injected into the multi-body model (Section\nbsp{}ref:sec:ustation_disturbances).
To validate the accuracy of the micro-station model, "real world" experiments are simulated and compared with measurements in Section\nbsp{}ref:sec:ustation_experiments.
@ -3907,7 +3908,7 @@ The rotation matrix can be used to express the coordinates of a point $P$ in a f
{}^AP = {}^A\bm{R}_B {}^BP
\end{equation}
For rotations along $x$, $y$ or $z$ axis, the formulas of the corresponding rotation matrices are given in Equation\nbsp{}eqref:eq:ustation_rotation_matrices_xyz.
For rotations around $x$, $y$ or $z$ axis, the formulas of the corresponding rotation matrices are given in Equation\nbsp{}eqref:eq:ustation_rotation_matrices_xyz.
\begin{subequations}\label{eq:ustation_rotation_matrices_xyz}
\begin{align}
@ -4733,7 +4734,7 @@ These limitations generally make serial architectures unsuitable for nano-positi
In contrast, parallel mechanisms, which connect the mobile platform to the fixed base through multiple parallel struts, offer several advantages for precision positioning.
Their closed-loop kinematic structure provides inherently higher structural stiffness, as the platform is simultaneously supported by multiple struts\nbsp{}[[cite:&taghirad13_paral]].
Although parallel mechanisms typically exhibit limited workspace compared to serial architectures, this limitation is not critical for NASS given its modest stroke requirements.
Numerous parallel kinematic architectures have been developed\nbsp{}[[cite:&dong07_desig_precis_compl_paral_posit]] to address various positioning requirements, with designs varying based on the desired acrshortpl:dof and specific application constraints.
Numerous parallel kinematic architectures have been developed\nbsp{}[[cite:&dong07_desig_precis_compl_paral_posit]] to address various positioning requirements, with designs varying based on the intended acrshortpl:dof and specific application constraints.
Furthermore, hybrid architectures combining both serial and parallel elements have been proposed\nbsp{}[[cite:&shen19_dynam_analy_flexur_nanop_stage]], as illustrated in Figure\nbsp{}ref:fig:nhexa_serial_parallel_examples, offering potential compromises between the advantages of both approaches.
#+name: fig:nhexa_serial_parallel_examples
@ -4755,7 +4756,7 @@ Furthermore, hybrid architectures combining both serial and parallel elements ha
#+end_figure
After evaluating the different options, the Stewart platform architecture was selected for several reasons.
In addition to providing control over all required acrshortpl:dof, its compact design and predictable dynamic characteristics make it particularly suitable for nano-positioning when combined with flexible joints.
In addition to allow control over all required acrshortpl:dof, its compact design and predictable dynamic characteristics make it particularly suitable for nano-positioning when combined with flexible joints.
Stewart platforms have been implemented in a wide variety of configurations, as illustrated in Figure\nbsp{}ref:fig:nhexa_stewart_examples, which shows two distinct implementations: one implementing piezoelectric actuators for nano-positioning applications, and another based on voice coil actuators for vibration isolation.
These examples demonstrate the architecture's versatility in terms of geometry, actuator selection, and scale, all of which can be optimized for specific applications.
Furthermore, the successful implementation of Integral Force Feedback (IFF) control on Stewart platforms has been well documented\nbsp{}[[cite:&abu02_stiff_soft_stewar_platf_activ;&hanieh03_activ_stewar;&preumont07_six_axis_singl_stage_activ]], and the extensive body of research on this architecture enables thorough optimization specifically for the NASS.
@ -4947,7 +4948,7 @@ For a series of platform positions, the exact strut lengths are computed using t
These strut lengths are then used with the Jacobian to estimate the platform pose\nbsp{}eqref:eq:nhexa_forward_kinematics_approximate, from which the error between the estimated and true poses can be calculated, both in terms of position $\epsilon_D$ and orientation $\epsilon_R$.
For motion strokes from $1\,\upmu\text{m}$ to $10\,\text{mm}$, the errors are estimated for all direction of motion, and the worst case errors are shown in Figure\nbsp{}ref:fig:nhexa_forward_kinematics_approximate_errors.
The results demonstrate that for displacements up to approximately $1\,\%$ of the hexapod's size (which corresponds to $100\,\upmu\text{m}$ as the size of the Stewart platform is here $\approx 100\,\text{mm}$), the Jacobian approximation provides excellent accuracy.
The results demonstrate that for displacements up to approximately $0.1\,\%$ of the hexapod's size (which corresponds to $100\,\upmu\text{m}$ as the size of the Stewart platform is here $\approx 100\,\text{mm}$), the Jacobian approximation provides excellent accuracy.
Since the maximum required stroke of the active platform ($\approx 100\,\upmu\text{m}$) is three orders of magnitude smaller than its overall size ($\approx 100\,\text{mm}$), the Jacobian matrix can be considered constant throughout the workspace.
It can be computed once at the rest position and used for both forward and inverse kinematics with high accuracy.
@ -5254,7 +5255,7 @@ This reduction from six to four observable modes is attributed to the system's s
The system's behavior can be characterized in three frequency regions.
At low frequencies, well below the first resonance, the plant demonstrates good decoupling between actuators, with the response dominated by the strut stiffness: $\bm{G}(j\omega) \xrightarrow[\omega \to 0]{} \bm{\mathcal{K}}^{-1}$.
In the mid-frequency range, the system exhibits coupled dynamics through its resonant modes, reflecting the complex interactions between the platform's degrees of freedom.
At high frequencies, above the highest resonance, the response is governed by the payload's inertia mapped to the strut coordinates: $\bm{G}(j\omega) \xrightarrow[\omega \to \infty]{} \bm{J} \bm{M}^{-\intercal} \bm{J}^{\intercal} \frac{-1}{\omega^2}$
At high-frequencies, above the highest resonance, the response is governed by the payload's inertia mapped to the strut coordinates: $\bm{G}(j\omega) \xrightarrow[\omega \to \infty]{} \bm{J} \bm{M}^{-\intercal} \bm{J}^{\intercal} \frac{-1}{\omega^2}$
The force sensor transfer functions, shown in Figure\nbsp{}ref:fig:nhexa_multi_body_plant_fm, display characteristics typical of collocated actuator-sensor pairs.
Each actuator's transfer function to its associated force sensor exhibits alternating complex conjugate poles and zeros.
@ -5653,7 +5654,9 @@ The external metrology system measures the sample position relative to the fixed
Due to the system's symmetry, this metrology provides measurements for five acrshortpl:dof: three translations ($D_x$, $D_y$, $D_z$) and two rotations ($R_x$, $R_y$).
The sixth acrshort:dof ($R_z$) is still required to compute the errors in the frame of the active platform struts (i.e. to compute the active platform inverse kinematics).
This $R_z$ rotation is estimated by combining measurements from the spindle encoder and the active platform's internal metrology, which consists of relative motion sensors in each strut (note that the positioning hexapod is not used for $R_z$ rotation, and is therefore ignored for $R_z$ estimation).
This $R_z$ rotation is estimated by combining measurements from the spindle encoder and the active platform's internal metrology.
The active platform's metrology consists of relative motion sensors in each strut, such that the $R_z$ rotation of the active platform can be estimated by solving the forward kinematics eqref:eq:nhexa_forward_kinematics_approximate.
Note that the positioning hexapod is not used for $R_z$ rotation, and is therefore ignored for $R_z$ estimation.
The measured sample pose is represented by the homogeneous transformation matrix $\bm{T}_{\text{sample}}$, as shown in equation\nbsp{}eqref:eq:nass_sample_pose.
@ -5965,7 +5968,7 @@ The current approach of controlling the position in the strut frame is inadequat
<<ssec:nass_hac_controller>>
A high authority controller was designed to meet two key requirements: stability for all payload masses (i.e. for all the damped plants of Figure\nbsp{}ref:fig:nass_hac_plants), and achievement of sufficient bandwidth (targeted at $10\,\text{Hz}$) for high performance operation.
The controller structure is defined in Equation\nbsp{}eqref:eq:nass_robust_hac, incorporating an integrator term for low frequency performance, a lead compensator for phase margin improvement, and a low-pass filter for robustness against high frequency modes.
The controller structure is defined in Equation\nbsp{}eqref:eq:nass_robust_hac, incorporating an integrator term for low frequency performance, a lead compensator for phase margin improvement, and a low-pass filter for robustness against high-frequency modes.
\begin{equation}\label{eq:nass_robust_hac}
K_{\text{HAC}}(s) = g_0 \cdot \underbrace{\frac{\omega_c}{s}}_{\text{int}} \cdot \underbrace{\frac{1}{\sqrt{\alpha}}\frac{1 + \frac{s}{\omega_c/\sqrt{\alpha}}}{1 + \frac{s}{\omega_c\sqrt{\alpha}}}}_{\text{lead}} \cdot \underbrace{\frac{1}{1 + \frac{s}{\omega_0}}}_{\text{LPF}}, \quad \left( \omega_c = 2\pi10\,\text{rad/s},\ \alpha = 2,\ \omega_0 = 2\pi80\,\text{rad/s} \right)
@ -6434,8 +6437,8 @@ In that case, the obtained stiffness matrix linearly depends on the strut stiffn
As shown by equation\nbsp{}eqref:eq:detail_kinematics_stiffness_matrix_simplified, the translation stiffnesses (the $3 \times 3$ top left terms of the stiffness matrix) only depend on the orientation of the struts and not their location: $\hat{\bm{s}}_i \cdot \hat{\bm{s}}_i^{\intercal}$.
In the extreme case where all struts are vertical ($s_i = [0\ 0\ 1]$), a vertical stiffness of $6k$ is achieved, but with null stiffness in the horizontal directions.
If two struts are aligned with the X axis, two struts with the Y axis, and two struts with the Z axis, then $\hat{\bm{s}}_i \cdot \hat{\bm{s}}_i^{\intercal} = 2 \bm{I}_3$, resulting in well-distributed stiffness along all directions.
This configuration corresponds to the cubic architecture presented in Section\nbsp{}ref:sec:detail_kinematics_cubic.
If two struts are oriented along the X axis, two struts along the Y axis, and two struts along the Z axis, then $\hat{\bm{s}}_i \cdot \hat{\bm{s}}_i^{\intercal} = 2 \bm{I}_3$ and the stiffness is well distributed along all directions.
This configuration corresponds to the cubic architecture, that is presented in Section\nbsp{}ref:sec:detail_kinematics_cubic.
When the struts are oriented more vertically, as shown in Figure\nbsp{}ref:fig:detail_kinematics_stewart_mobility_vert_struts, the vertical stiffness increases while the horizontal stiffness decreases.
Additionally, $R_x$ and $R_y$ stiffness increases while $R_z$ stiffness decreases.
@ -6672,7 +6675,7 @@ When relative motion sensors are integrated in each strut (measuring $\bm{\mathc
#+caption: Typical control architecture in the cartesian frame.
[[file:figs/detail_kinematics_centralized_control.png]]
***** Low Frequency and High Frequency Coupling
***** Low Frequency and High-Frequency Coupling
As derived during the conceptual design phase, the dynamics from $\bm{\mathcal{F}}$ to $\bm{\mathcal{X}}$ is described by Equation\nbsp{}eqref:eq:detail_kinematics_transfer_function_cart.
At low frequency, the behavior of the platform depends on the stiffness matrix\nbsp{}eqref:eq:detail_kinematics_transfer_function_cart_low_freq.
@ -6683,7 +6686,7 @@ At low frequency, the behavior of the platform depends on the stiffness matrix\n
In Section\nbsp{}ref:ssec:detail_kinematics_cubic_static, it was demonstrated that for the cubic configuration, the stiffness matrix is diagonal if frame $\{B\}$ is positioned at the cube's center.
In this case, the "Cartesian" plant is decoupled at low frequency.
At high frequency, the behavior is governed by the mass matrix (evaluated at frame $\{B\}$)\nbsp{}eqref:eq:detail_kinematics_transfer_function_high_freq.
At high-frequency, the behavior is governed by the mass matrix (evaluated at frame $\{B\}$)\nbsp{}eqref:eq:detail_kinematics_transfer_function_high_freq.
\begin{equation}\label{eq:detail_kinematics_transfer_function_high_freq}
\frac{{\mathcal{X}}}{\bm{\mathcal{F}}}(j \omega) \xrightarrow[\omega \to \infty]{} - \omega^2 \bm{M}^{-1}
@ -6699,7 +6702,7 @@ To achieve a diagonal mass matrix, the acrlong:com of the mobile components must
To verify these properties, a cubic Stewart platform with a cylindrical payload was analyzed (Figure\nbsp{}ref:fig:detail_kinematics_cubic_payload).
Transfer functions from $\bm{\mathcal{F}}$ to $\bm{\mathcal{X}}$ were computed for two specific locations of the $\{B\}$ frames.
When the $\{B\}$ frame was positioned at the acrlong:com, coupling at low frequency was observed due to the non-diagonal stiffness matrix (Figure\nbsp{}ref:fig:detail_kinematics_cubic_cart_coupling_com).
Conversely, when positioned at the acrlong:cok, coupling occurred at high frequency due to the non-diagonal mass matrix (Figure\nbsp{}ref:fig:detail_kinematics_cubic_cart_coupling_cok).
Conversely, when positioned at the acrlong:cok, coupling occurred at high-frequency due to the non-diagonal mass matrix (Figure\nbsp{}ref:fig:detail_kinematics_cubic_cart_coupling_cok).
#+name: fig:detail_kinematics_cubic_cart_coupling
#+caption: Transfer functions for a cubic Stewart platform expressed in the Cartesian frame. Two locations of the $\{B\}$ frame are considered: at the center of mass of the moving body (\subref{fig:detail_kinematics_cubic_cart_coupling_com}) and at the cube's center (\subref{fig:detail_kinematics_cubic_cart_coupling_cok}).
@ -6779,7 +6782,7 @@ The second uses a non-cubic Stewart platform shown in Figure\nbsp{}ref:fig:detai
The transfer functions from actuator force in each strut to the relative motion of the struts are presented in Figure\nbsp{}ref:fig:detail_kinematics_decentralized_dL.
As anticipated from the equations of motion from $\bm{f}$ to $\bm{\mathcal{L}}$ eqref:eq:detail_kinematics_transfer_function_struts, the $6 \times 6$ plant is decoupled at low frequency.
At high frequency, coupling is observed as the mass matrix projected in the strut frame is not diagonal.
At high-frequency, coupling is observed as the mass matrix projected in the strut frame is not diagonal.
No significant advantage is evident for the cubic architecture (Figure\nbsp{}ref:fig:detail_kinematics_cubic_decentralized_dL) compared to the non-cubic architecture (Figure\nbsp{}ref:fig:detail_kinematics_non_cubic_decentralized_dL).
The resonance frequencies differ between the two cases because the more vertical strut orientation in the non-cubic architecture alters the stiffness properties of the Stewart platform, consequently shifting the frequencies of various modes.
@ -6806,7 +6809,7 @@ The resonance frequencies differ between the two cases because the more vertical
Similarly, the transfer functions from actuator force to force sensors in each strut were analyzed for both cubic and non-cubic Stewart platforms.
The results are presented in Figure\nbsp{}ref:fig:detail_kinematics_decentralized_fn.
The system demonstrates good decoupling at high frequency in both cases, with no clear advantage for the cubic architecture.
The system demonstrates good decoupling at high-frequency in both cases, with no clear advantage for the cubic architecture.
#+name: fig:detail_kinematics_decentralized_fn
#+caption: Bode plot of the transfer functions from actuator force to force sensor in each strut. Both for a non-cubic architecture (\subref{fig:detail_kinematics_non_cubic_decentralized_fn}) and for a cubic architecture (\subref{fig:detail_kinematics_cubic_decentralized_fn}).
@ -7133,7 +7136,7 @@ Initially, the component is modeled in a finite element software with appropriat
Subsequently, interface frames are defined at locations where the multi-body model will establish connections with the component.
These frames serve multiple functions, including connecting to other parts, applying forces and torques, and measuring relative motion between defined frames.
Following the establishment of these interface parameters, modal reduction is performed using the Craig-Bampton method\nbsp{}[[cite:&craig68_coupl_subst_dynam_analy]] (also known as the "fixed-interface method"), a technique that significantly reduces the number of DoF while while still presenting the main dynamical characteristics.
Following the establishment of these interface parameters, modal reduction is performed using the Craig-Bampton method\nbsp{}[[cite:&craig68_coupl_subst_dynam_analy]] (also known as the "fixed-interface method"), a technique that significantly reduces the number of DoF while still presenting the main dynamical characteristics.
This transformation typically reduces the model complexity from hundreds of thousands to fewer than 100-DoFs.
The number of acrshortpl:dof in the reduced model is determined by\nbsp{}eqref:eq:detail_fem_model_order where $n$ represents the number of defined frames and $p$ denotes the number of additional modes to be modeled.
The outcome of this procedure is an $m \times m$ set of reduced mass and stiffness matrices, $m$ being the total retained number of acrshortpl:dof, which can subsequently be incorporated into the multi-body model to represent the component's dynamic behavior.
@ -7728,7 +7731,7 @@ The resulting dynamics (Figure\nbsp{}ref:fig:detail_fem_joints_axial_stiffness_p
The force-sensor (IFF) plant exhibits minimal sensitivity to axial compliance, as evidenced by both acrshortpl:frf (Figure\nbsp{}ref:fig:detail_fem_joints_axial_stiffness_iff_plant) and root locus analysis (Figure\nbsp{}ref:fig:detail_fem_joints_axial_stiffness_iff_locus).
However, the transfer function from $\bm{f}$ to $\bm{\epsilon}_{\mathcal{L}}$ demonstrates significant effects: internal strut modes appear at high frequencies, introducing substantial cross-coupling between axes.
However, the transfer function from $\bm{f}$ to $\bm{\epsilon}_{\mathcal{L}}$ demonstrates significant effects: internal strut modes appear at high-frequencies, introducing substantial cross-coupling between axes.
This coupling is quantified through acrfull:rga analysis of the damped system (Figure\nbsp{}ref:fig:detail_fem_joints_axial_stiffness_rga_hac_plant), which confirms increasing interaction between control channels at frequencies above the joint-induced resonance.
Above this resonance frequency, two critical limitations emerge.
@ -7940,7 +7943,7 @@ Similarly, in\nbsp{}[[cite:&wang16_inves_activ_vibrat_isolat_stewar]], piezoelec
In\nbsp{}[[cite:&xie17_model_contr_hybrid_passiv_activ]], force sensors are integrated in the struts for decentralized force feedback while accelerometers fixed to the top platform are employed for centralized control.
The second approach, sensor fusion (illustrated in Figure\nbsp{}ref:fig:detail_control_sensor_arch_sensor_fusion), involves filtering signals from two sensors using complementary filters[fn:detail_control_1] and summing them to create an improved sensor signal.
In\nbsp{}[[cite:&hauge04_sensor_contr_space_based_six]], geophones (used at low frequency) are merged with force sensors (used at high frequency).
In\nbsp{}[[cite:&hauge04_sensor_contr_space_based_six]], geophones (used at low frequency) are merged with force sensors (used at high-frequency).
It is demonstrated that combining both sensors using sensor fusion can improve performance compared to using only one of the two sensors.
In\nbsp{}[[cite:&tjepkema12_sensor_fusion_activ_vibrat_isolat_precis_equip]], sensor fusion architecture is implemented with an accelerometer and a force sensor.
This implementation is shown to simultaneously achieve high damping of structural modes (through the force sensors) while maintaining very low vibration transmissibility (through the accelerometers).
@ -8562,7 +8565,7 @@ The obtained transfer function from $\bm{\mathcal{\tau}}$ to $\bm{\mathcal{L}}$
\end{equation}
At low frequencies, the plant converges to a diagonal constant matrix whose diagonal elements are equal to the actuator stiffnesses\nbsp{}eqref:eq:detail_control_decoupling_plant_decentralized_low_freq.
At high frequencies, the plant converges to the mass matrix mapped in the frame of the struts, which is generally highly non-diagonal.
At high-frequency, the plant converges to the mass matrix mapped in the frame of the struts, which is generally highly non-diagonal.
\begin{equation}\label{eq:detail_control_decoupling_plant_decentralized_low_freq}
\bm{G}_{\mathcal{L}}(j\omega) \xrightarrow[\omega \to 0]{} \bm{\mathcal{K}^{-1}}
@ -8629,7 +8632,7 @@ Analytical formula of the plant $\bm{G}_{\{M\}}(s)$ is derived\nbsp{}eqref:eq:de
\frac{\bm{\mathcal{X}}_{\{M\}}}{\bm{\mathcal{F}}_{\{M\}}}(s) = \bm{G}_{\{M\}}(s) = \left( \bm{M}_{\{M\}} s^2 + \bm{J}_{\{M\}}^{\intercal} \bm{\mathcal{C}} \bm{J}_{\{M\}} s + \bm{J}_{\{M\}}^{\intercal} \bm{\mathcal{K}} \bm{J}_{\{M\}} \right)^{-1}
\end{equation}
At high frequencies, the plant converges to the inverse of the mass matrix, which is a diagonal matrix\nbsp{}eqref:eq:detail_control_decoupling_plant_CoM_high_freq.
At high-frequency, the plant converges to the inverse of the mass matrix, which is a diagonal matrix\nbsp{}eqref:eq:detail_control_decoupling_plant_CoM_high_freq.
\begin{equation}\label{eq:detail_control_decoupling_plant_CoM_high_freq}
\bm{G}_{\{M\}}(j\omega) \xrightarrow[\omega \to \infty]{} -\omega^2 \bm{M}_{\{M\}}^{-1} = -\omega^2 \begin{bmatrix}
@ -8703,7 +8706,7 @@ The physical reason for high-frequency coupling is illustrated in Figure\nbsp{}r
When a high-frequency force is applied at a point not aligned with the acrlong:com, it induces rotation around the acrlong:com.
#+name: fig:detail_control_decoupling_jacobian_plant_CoK_results
#+caption: Plant decoupled using the Jacobian matrix expresssed at the center of stiffness (\subref{fig:detail_control_decoupling_jacobian_plant_CoK}). The physical reason for high frequency coupling is illustrated in (\subref{fig:detail_control_decoupling_model_test_CoK}).
#+caption: Plant decoupled using the Jacobian matrix expresssed at the center of stiffness (\subref{fig:detail_control_decoupling_jacobian_plant_CoK}). The physical reason for high-frequency coupling is illustrated in (\subref{fig:detail_control_decoupling_model_test_CoK}).
#+attr_latex: :options [htbp]
#+begin_figure
#+attr_latex: :caption \subcaption{\label{fig:detail_control_decoupling_jacobian_plant_CoK}Dynamics at the CoK}
@ -8712,7 +8715,7 @@ When a high-frequency force is applied at a point not aligned with the acrlong:c
#+attr_latex: :scale 0.8
[[file:figs/detail_control_decoupling_jacobian_plant_CoK.png]]
#+end_subfigure
#+attr_latex: :caption \subcaption{\label{fig:detail_control_decoupling_model_test_CoK}High frequency force applied at the CoK}
#+attr_latex: :caption \subcaption{\label{fig:detail_control_decoupling_model_test_CoK}High-frequency force applied at the CoK}
#+attr_latex: :options {0.48\textwidth}
#+begin_subfigure
#+attr_latex: :scale 1
@ -8746,7 +8749,7 @@ The inherent mathematical structure of the mass, damping, and stiffness matrices
This diagonalization transforms equation\nbsp{}eqref:eq:detail_control_decoupling_equation_modal_coordinates into a set of $n$ decoupled equations, enabling independent control of each mode without cross-interaction.
To implement this approach from a decentralized plant, the architecture shown in Figure\nbsp{}ref:fig:detail_control_decoupling_modal is employed.
Inputs of the decoupling plant are the modal modal inputs $\bm{\tau}_m$ and the outputs are the modal amplitudes $\bm{\mathcal{X}}_m$.
Inputs of the decoupling plant are the modal inputs $\bm{\tau}_m$ and the outputs are the modal amplitudes $\bm{\mathcal{X}}_m$.
This implementation requires knowledge of the system's equations of motion, from which the mode shapes matrix $\bm{\Phi}$ is derived.
The resulting decoupled system features diagonal elements each representing second-order resonant systems that are straightforward to control individually.
@ -8929,7 +8932,7 @@ Modal decoupling provides a natural framework when specific vibrational modes re
SVD decoupling generally results in a loss of physical meaning for the "control space", potentially complicating the process of relating controller design to practical system requirements.
The quality of decoupling achieved through these methods also exhibits distinct characteristics.
Jacobian decoupling performance depends on the chosen reference frame, with optimal decoupling at low frequencies when aligned at the acrlong:cok, or at high frequencies when aligned with the acrlong:com.
Jacobian decoupling performance depends on the chosen reference frame, with optimal decoupling at low-frequency when aligned at the acrlong:cok, or at high-frequency when aligned with the acrlong:com.
Systems designed with coincident centers of mass and stiffness may achieve excellent decoupling using this approach.
Modal decoupling offers good decoupling across all frequencies, though its effectiveness relies on the model accuracy, with discrepancies potentially resulting in significant off-diagonal elements.
SVD decoupling can be implemented using measured data without requiring a model, with optimal performance near the chosen decoupling frequency, though its effectiveness may diminish at other frequencies and depends on the quality of the real approximation of the response at the selected frequency point.
@ -8994,7 +8997,7 @@ Finally, in Section\nbsp{}ref:ssec:detail_control_cf_simulations, a numerical ex
The idea of using complementary filters in the control architecture originates from sensor fusion techniques\nbsp{}[[cite:&collette15_sensor_fusion_method_high_perfor]], where two sensors are combined using complementary filters.
Building upon this concept, "virtual sensor fusion"\nbsp{}[[cite:&verma20_virtual_sensor_fusion_high_precis_contr]] replaces one physical sensor with a model $G$ of the plant.
The corresponding control architecture is illustrated in Figure\nbsp{}ref:fig:detail_control_cf_arch, where $G^\prime$ represents the physical plant to be controlled, $G$ is a model of the plant, $k$ is the controller, and $H_L$ and $H_H$ are complementary filters satisfying $H_L(s) + H_H(s) = 1$.
In this arrangement, the physical plant is controlled at low frequencies, while the plant model is used at high frequencies to enhance robustness.
In this arrangement, the physical plant is controlled at low frequencies, while the plant model is used at high-frequency to enhance robustness.
#+name: fig:detail_control_cf_arch_and_eq
#+caption: Control architecture for virtual sensor fusion (\subref{fig:detail_control_cf_arch}) and equivalent architecture (\subref{fig:detail_control_cf_arch_eq}). Signals are the reference input $r$, the output perturbation $d_y$, the measurement noise $n$ and the control input $u$.
@ -9092,7 +9095,7 @@ For the nominal system, $S = H_H$ and $T = H_L$, hence the performance specifica
\end{equation}
For disturbance rejection, the magnitude of the sensitivity function $|S(j\omega)| = |H_H(j\omega)|$ should be minimized, particularly at low frequencies where disturbances are usually most prominent.
Similarly, for noise attenuation, the magnitude of the complementary sensitivity function $|T(j\omega)| = |H_L(j\omega)|$ should be minimized, especially at high frequencies where measurement noise typically dominates.
Similarly, for noise attenuation, the magnitude of the complementary sensitivity function $|T(j\omega)| = |H_L(j\omega)|$ should be minimized, especially at high-frequency where measurement noise typically dominates.
Classical stability margins (gain and phase margins) are also related to the maximum amplitude of the sensitivity transfer function.
Typically, maintaining $|S|_{\infty} \le 2$ ensures a gain margin of at least 2 and a phase margin of at least $\SI{29}{\degree}$.
@ -9499,8 +9502,8 @@ However, considering potential scanning capabilities, a worst-case scenario of a
There are two limiting factors for large signal bandwidth that should be evaluated:
1. Slew rate, which should exceed $2 \cdot V_{pp} \cdot f_r = 34\,\text{V/ms}$.
This requirement is typically easily met by commercial voltage amplifiers.
2. Current output capabilities: as the capacitive impedance decreases inversely with frequency, it can reach very low values at high frequencies.
To achieve high voltage at high frequency, the amplifier must therefore provide substantial current.
2. Current output capabilities: as the capacitive impedance decreases inversely with frequency, it can reach very low values at high-frequency.
To achieve high voltage at high-frequency, the amplifier must therefore provide substantial current.
The maximum required current can be calculated as $I_{\text{max}} = 2 \cdot V_{pp} \cdot f \cdot C_p = 0.3\,\text{A}$.
Therefore, ideally, a voltage amplifier capable of providing $0.3\,\text{A}$ of current would be interesting for scanning applications.
@ -9525,9 +9528,9 @@ This approach does not account for the frequency dependency of the noise, which
Additionally, the load conditions used to estimate bandwidth and noise specifications are often not explicitly stated.
In many cases, bandwidth is reported with minimal load while noise is measured with substantial load, making direct comparisons between different models more complex.
Note that for the WMA-200, the manufacturer proposed to remove the $50\,\Omega$ output resistor to improve to small signal bandwidth above $10\,\text{kHz}$
Note that for the WMA-200 amplifier, the manufacturer proposed to remove the $50\,\Omega$ output resistor to improve to small signal bandwidth above $10\,\text{kHz}$
The PD200 from PiezoDrive was ultimately selected because it meets all the requirements and is accompanied by clear documentation, particularly regarding noise characteristics and bandwidth specifications.
The PD200 amplifier from PiezoDrive was ultimately selected because it meets all the requirements and is accompanied by clear documentation, particularly regarding noise characteristics and bandwidth specifications.
#+name: tab:detail_instrumentation_amp_choice
#+caption: Specifications for the voltage amplifier and considered commercial products.
@ -9682,7 +9685,7 @@ In contrast, optical encoders are bigger and they must be offset from the strut'
#+end_subfigure
#+end_figure
A significant consideration in the sensor selection process was the fact that sensor signals must pass through an electrical slip-ring due to the continuous spindle rotation.
A practical consideration in the sensor selection process was the fact that sensor signals must pass through an electrical slip-ring due to the continuous spindle rotation.
Measurements conducted on the slip-ring integrated in the micro-station revealed substantial cross-talk between different slip-ring channels.
To mitigate this issue, preference was given to sensors that transmit displacement measurements digitally, as these are inherently less susceptible to noise and cross-talk.
Based on this criterion, an optical encoder with digital output was selected, where signal interpolation is performed directly in the sensor head.
@ -9796,7 +9799,7 @@ These results validate both the model of the acrshort:adc and the effectiveness
**** Instrumentation Amplifier
Because the acrshort:adc noise may be too low to measure the noise of other instruments (anything below $5.6\,\upmu\text{V}/\sqrt{\text{Hz}}$ cannot be distinguished from the noise of the acrshort:adc itself), a low noise instrumentation amplifier was employed.
A Femto DLPVA-101-B-S amplifier with adjustable gains from $20\,text{dB}$ up to $80\,text{dB}$ was selected for this purpose.
A Femto DLPVA-101-B-S amplifier with adjustable gains from $20\,\text{dB}$ up to $80\,\text{dB}$ was selected for this purpose.
The first step was to characterize the input[fn:detail_instrumentation_1] noise of the amplifier.
This was accomplished by short-circuiting its input with a $50\,\Omega$ resistor and measuring the output voltage with the acrshort:adc (Figure\nbsp{}ref:fig:detail_instrumentation_femto_meas_setup).
@ -10447,7 +10450,7 @@ For the NASS, this stroke is sufficient because the positioning errors to be cor
It is clear from Figure\nbsp{}ref:fig:test_apa_stroke_hysteresis that "APA 3" has an issue compared with the other units.
This confirms the abnormal electrical measurements made in Section\nbsp{}ref:ssec:test_apa_electrical_measurements.
This unit was sent sent back to Cedrat, and a new one was shipped back.
This unit was sent back to Cedrat, and a new one was shipped back.
From now on, only the six remaining amplified piezoelectric actuators that behave as expected will be used.
#+name: fig:test_apa_stroke
@ -10471,7 +10474,7 @@ From now on, only the six remaining amplified piezoelectric actuators that behav
**** Flexible Mode Measurement
<<ssec:test_apa_spurious_resonances>>
In this section, the flexible modes of the APA300ML are investigated both experimentally and using a acrshort:fem.
In this section, the flexible modes of the APA300ML are investigated both experimentally and through finite element modeling.
To experimentally estimate these modes, the acrshort:apa is fixed at one end (see Figure\nbsp{}ref:fig:test_apa_meas_setup_modes).
A Laser Doppler Vibrometer[fn:test_apa_6] is used to measure the difference of motion between two "red" points and an instrumented hammer[fn:test_apa_7] is used to excite the flexible modes.
Using this setup, the transfer function from the injected force to the measured rotation can be computed under different conditions, and the frequency and mode shapes of the flexible modes can be estimated.
@ -10631,7 +10634,7 @@ The dynamics from $u$ to the measured voltage across the sensor stack $V_s$ for
A lightly damped resonance (pole) is observed at $95\,\text{Hz}$ and a lightly damped anti-resonance (zero) at $41\,\text{Hz}$.
No additional resonances are present up to at least $2\,\text{kHz}$ indicating that Integral Force Feedback can be applied without stability issues from high-frequency flexible modes.
The zero at $41\,\text{Hz}$ seems to be non-minimum phase (the phase /decreases/ by 180 degrees whereas it should have /increased/ by 180 degrees for a minimum phase zero).
This is investigated further investigated.
This is further investigated.
As illustrated by the root locus plot, the poles of the /closed-loop/ system converges to the zeros of the /open-loop/ plant as the feedback gain increases.
The significance of this behavior varies with the type of sensor used, as explained in\nbsp{}[[cite:&preumont18_vibrat_contr_activ_struc_fourt_edition chap. 7.6]].
@ -11934,7 +11937,7 @@ The misalignment in the $y$ direction mostly influences:
- the location of the complex conjugate zero between the first two resonances:
- if $d_{y} < 0$: there is no zero between the two resonances and possibly not even between the second and third resonances
- if $d_{y} > 0$: there is a complex conjugate zero between the first two resonances
- the location of the high frequency complex conjugate zeros at $500\,\text{Hz}$ (secondary effect, as the axial stiffness of the joint also has large effect on the position of this zero)
- the location of the high-frequency complex conjugate zeros at $500\,\text{Hz}$ (secondary effect, as the axial stiffness of the joint also has large effect on the position of this zero)
The same can be done for misalignments in the $x$ direction.
The obtained dynamics (Figure\nbsp{}ref:fig:test_struts_effect_misalignment_x) are showing that misalignment in the $x$ direction mostly influences the presence of the flexible mode at $300\,\text{Hz}$ (see mode shape in Figure\nbsp{}ref:fig:test_struts_mode_shapes_2).
@ -12585,7 +12588,7 @@ This section presents a comprehensive experimental evaluation of the complete sy
Initially, the project planned to develop a long-stroke ($\approx 1 \, \text{cm}^3$) 5-DoFs metrology system to measure the sample position relative to the granite base.
However, the complexity of this development prevented its completion before the experimental testing phase on ID31.
To validate the nano-hexapod and its associated control architecture, an alternative short-stroke ($\approx 100\,\upmu\text{m}^3$) metrology system was developed, which is presented in Section\nbsp{}ref:sec:test_id31_metrology.
To validate the nano-hexapod and its associated control architecture, an alternative short-stroke ($\approx 100\,\upmu\text{m}^3$) metrology system was developed instead, which is presented in Section\nbsp{}ref:sec:test_id31_metrology.
Then, several key aspects of the system validation are examined.
Section\nbsp{}ref:sec:test_id31_open_loop_plant analyzes the identified dynamics of the nano-hexapod mounted on the micro-station under various experimental conditions, including different payload masses and rotational velocities.
@ -12621,7 +12624,7 @@ These include tomography scans at various speeds and with different payload mass
**** Introduction :ignore:
The control of the nano-hexapod requires an external metrology system that measures the relative position of the nano-hexapod top platform with respect to the granite.
As a long-stroke ($\approx 1 \,\text{cm}^3$) metrology system was not yet developed, a stroke stroke ($\approx 100\,\upmu\text{m}^3$) was used instead to validate the nano-hexapod control.
As a long-stroke ($\approx 1 \,\text{cm}^3$) metrology system was not yet developed, a short stroke ($\approx 100\,\upmu\text{m}^3$) was used instead to validate the nano-hexapod control.
The first considered option was to use the "Spindle error analyzer" shown in Figure\nbsp{}ref:fig:test_id31_lion.
This system comprises 5 capacitive sensors facing two reference spheres.
@ -12864,7 +12867,7 @@ The dynamics of the plant is first identified for a fixed spindle angle (at $0\,
The model dynamics is also identified under the same conditions.
A comparison between the model and the measured dynamics is presented in Figure\nbsp{}ref:fig:test_id31_first_id.
A good match can be observed for the diagonal dynamics (except the high frequency modes which are not modeled).
A good match can be observed for the diagonal dynamics (except the high-frequency modes which are not modeled).
However, the coupling of the transfer function from command signals $\bm{u}$ to the estimated strut motion from the external metrology $\bm{\epsilon\mathcal{L}}$ is larger than expected (Figure\nbsp{}ref:fig:test_id31_first_id_int).
The experimental time delay estimated from the acrshort:frf (Figure\nbsp{}ref:fig:test_id31_first_id_int) is larger than expected.
@ -12896,7 +12899,7 @@ One possible explanation of the increased coupling observed in Figure\nbsp{}ref:
To estimate this alignment, a decentralized low-bandwidth feedback controller based on the nano-hexapod encoders was implemented.
This allowed to perform two straight motions of the nano-hexapod along its $x$ and $y$ axes.
During these two motions, external metrology measurements were recorded and the results are shown in Figure\nbsp{}ref:fig:test_id31_Rz_align_error_and_correct.
It was found that there was a misalignment of 2.7 degrees (rotation along the vertical axis) between the interferometer axes and nano-hexapod axes.
It was found that there was a misalignment of 2.7 degrees (rotation around the vertical axis) between the interferometer axes and nano-hexapod axes.
This was corrected by adding an offset to the spindle angle.
After alignment, the same motion was performed using the nano-hexapod while recording the signal of the external metrology.
Results shown in Figure\nbsp{}ref:fig:test_id31_Rz_align_correct are indeed indicating much better alignment.
@ -12991,7 +12994,7 @@ It is interesting to note that the anti-resonances in the force sensor plant now
**** Effect of Spindle Rotation
<<ssec:test_id31_open_loop_plant_rotation>>
To verify that all the kinematics in Figure\nbsp{}ref:fig:test_id31_block_schematic_plant are correct and to check whether the system dynamics is affected by Spindle rotation of not, three identification experiments were performed: no spindle rotation, spindle rotation at $36\,\text{deg}/s$ and at $180\,\text{deg}/s$.
To verify that all the kinematics in Figure\nbsp{}ref:fig:test_id31_block_schematic_plant are correct and to check whether the system dynamics is affected by Spindle rotation or not, three identification experiments were performed: no spindle rotation, spindle rotation at $36\,\text{deg}/s$ and at $180\,\text{deg}/s$.
The obtained dynamics from command signal $u$ to estimated strut error $\epsilon\mathcal{L}$ are displayed in Figure\nbsp{}ref:fig:test_id31_effect_rotation.
Both direct terms (Figure\nbsp{}ref:fig:test_id31_effect_rotation_direct) and coupling terms (Figure\nbsp{}ref:fig:test_id31_effect_rotation_coupling) are unaffected by the rotation.
@ -13024,7 +13027,7 @@ This also indicates that the metrology kinematics is correct and is working in r
The identified acrshortpl:frf from command signals $\bm{u}$ to the force sensors $\bm{V}_s$ and to the estimated strut errors $\bm{\epsilon\mathcal{L}}$ are well matching the dynamics of the developed multi-body model.
The effect of payload mass is shown to be well predicted by the model, which can be useful if robust model based control is to be used.
The spindle rotation had no visible effect on the measured dynamics, indicating that controllers should be robust against spindle rotation.
The spindle rotation has no visible effect on the measured dynamics, indicating that controllers should be robust against spindle rotation.
*** Decentralized Integral Force Feedback
<<sec:test_id31_iff>>
@ -13234,7 +13237,7 @@ The results indicate that higher payload masses increase the coupling when imple
This indicates that achieving high bandwidth feedback control is increasingly challenging as the payload mass increases.
This behavior can be attributed to the fundamental approach of implementing control in the frame of the struts.
Above the suspension modes of the nano-hexapod, the motion induced by the piezoelectric actuators is no longer dictated by kinematics but rather by the inertia of the different parts.
This design choice, while beneficial for system simplicity, introduces inherent limitations in the system's ability to handle larger masses at high frequency.
This design choice, while beneficial for system simplicity, introduces inherent limitations in the system's ability to handle larger masses at high-frequency.
#+name: fig:test_id31_hac_rga_number
#+caption: RGA-number for the damped plants - Comparison of all the payload conditions.
@ -13246,7 +13249,7 @@ This design choice, while beneficial for system simplicity, introduces inherent
A diagonal controller was designed to be robust against changes in payload mass, which means that every damped plant shown in Figure\nbsp{}ref:fig:test_id31_comp_all_undamped_damped_plants must be considered during the controller design.
For this controller design, a crossover frequency of $5\,\text{Hz}$ was chosen to limit the multivariable effects, as explain in Section\nbsp{}ref:sec:test_id31_hac_interaction_analysis.
One integrator is added to increase the low-frequency gain, a lead is added around $5\,\text{Hz}$ to increase the stability margins and a first-order low-pass filter with a cut-off frequency of $30\,\text{Hz}$ is added to improve the robustness to dynamical uncertainty at high frequency.
One integrator is added to increase the low-frequency gain, a lead is added around $5\,\text{Hz}$ to increase the stability margins and a first-order low-pass filter with a cut-off frequency of $30\,\text{Hz}$ is added to improve the robustness to dynamical uncertainty at high-frequency.
The controller transfer function is shown in\nbsp{}eqref:eq:test_id31_robust_hac.
\begin{equation}\label{eq:test_id31_robust_hac}
@ -14073,14 +14076,16 @@ Therefore, adopting a design approach using dynamic error budgets, cascading fro
* Footnotes
[fn:uniaxial_3]DLPVA-100-B from Femto with a voltage input noise is $2.4\,\text{nV}/\sqrt{\text{Hz}}$
[fn:uniaxial_2]Mark Product L-22D geophones are used with a sensitivity of $88\,\frac{V}{\text{m/s}}$ and a natural frequency of $\approx 2\,\text{Hz}$
[fn:uniaxial_1]Mark Product L4-C geophones are used with a sensitivity of $171\,\frac{V}{\text{m/s}}$ and a natural frequency of $\approx 1\,\text{Hz}$
[fn:uniaxial_5]In this work, the "suspension mode" of a platform refers to a low-frequency vibration mode in which the supported payload behaves as a rigid body, while the platform acts as a compliant support.
[fn:uniaxial_4]DLPVA-100-B from Femto with a voltage input noise is $2.4\,\text{nV}/\sqrt{\text{Hz}}$.
[fn:uniaxial_3]Mark Product L-22D geophones are used with a sensitivity of $88\,\frac{V}{\text{m/s}}$ and a natural frequency of $\approx 2\,\text{Hz}$.
[fn:uniaxial_2]Coherence is a statistical measure (ranging from $0$ to $1$) used in system identification to assess how well the output of a linear system can be predicted from its input. Values near $1$ indicate strong linear correlation, while noise or non-linearities reduce coherence and indicate poor data quality.
[fn:uniaxial_1]Mark Product L4-C geophones are used with a sensitivity of $171\,\frac{V}{\text{m/s}}$ and a natural frequency of $\approx 1\,\text{Hz}$.
[fn:modal_5]As this matrix is in general non-square, the MoorePenrose inverse can be used instead.
[fn:modal_4]NVGate software from OROS company.
[fn:modal_3]OROS OR36. 24bits signal-delta ADC.
[fn:modal_2]Kistler 9722A2000. Sensitivity of $2.3\,\text{mV/N}$ and measurement range of $2\,\text{kN}$
[fn:modal_2]Kistler 9722A2000. Sensitivity of $2.3\,\text{mV/N}$ and measurement range of $2\,\text{kN}$.
[fn:modal_1]PCB 356B18. Sensitivity is $1\,\text{V/g}$, measurement range is $\pm 5\,\text{g}$ and bandwidth is $0.5$ to $5\,\text{kHz}$.
[fn:ustation_11]It was probably caused by rust of the linear guides along its stroke.
@ -14095,53 +14100,53 @@ Therefore, adopting a design approach using dynamic error budgets, cascading fro
[fn:ustation_2]Made by LAB Motion Systems.
[fn:ustation_1]HCR 35 A C1, from THK.
[fn:nhexa_3]Such equation is called the /velocity loop closure/
[fn:nhexa_2]The /pose/ represents the position and orientation of an object
[fn:nhexa_1]Different architecture exists, typically referred as "6-SPS" (Spherical, Prismatic, Spherical) or "6-UPS" (Universal, Prismatic, Spherical)
[fn:nhexa_3]Such equation is called the /velocity loop closure/.
[fn:nhexa_2]The /pose/ represents the position and orientation of an object.
[fn:nhexa_1]Different architecture exists, typically referred as "6-SPS" (Spherical, Prismatic, Spherical) or "6-UPS" (Universal, Prismatic, Spherical).
[fn:detail_fem_2]Cedrat technologies
[fn:detail_fem_2]Cedrat technologies.
[fn:detail_fem_1]The manufacturer of the APA95ML was not willing to share the piezoelectric material properties of the stack.
[fn:detail_control_2]$n$ corresponds to the number of degrees of freedom, here $n = 3$
[fn:detail_control_2]$n$ corresponds to the number of degrees of freedom, here $n = 3$.
[fn:detail_control_1]A set of two complementary filters are two transfer functions that sum to one.
[fn:detail_instrumentation_1] For variable gain amplifiers, it is usual to refer to the input noise rather than the output noise, as the input referred noise is almost independent on the chosen gain.
[fn:test_apa_13]PD200 from PiezoDrive. The gain is $20\,\text{V/V}$
[fn:test_apa_12]The DAC used is the one included in the IO131 card sold by Speedgoat. It has an output range of $\pm 10\,\text{V}$ and 16-bits resolution
[fn:test_apa_11]Ansys\textsuperscript{\textregistered} was used
[fn:test_apa_10]The transfer function fitting was computed using the =vectfit3= routine, see\nbsp{}[[cite:&gustavsen99_ration_approx_frequen_domain_respon]]
[fn:test_apa_9]Frequency of the sinusoidal wave is $1\,\text{Hz}$
[fn:test_apa_8]Renishaw Vionic, resolution of $2.5\,\text{nm}$
[fn:test_apa_7]Kistler 9722A
[fn:test_apa_6]Polytec controller 3001 with sensor heads OFV512
[fn:test_apa_13]PD200 from PiezoDrive. The gain is $20\,\text{V/V}$.
[fn:test_apa_12]The DAC used is the one included in the IO131 card sold by Speedgoat. It has an output range of $\pm 10\,\text{V}$ and 16-bits resolution.
[fn:test_apa_11]Ansys\textsuperscript{\textregistered} was used.
[fn:test_apa_10]The transfer function fitting was computed using the =vectfit3= routine, see\nbsp{}[[cite:&gustavsen99_ration_approx_frequen_domain_respon]].
[fn:test_apa_9]Frequency of the sinusoidal wave is $1\,\text{Hz}$.
[fn:test_apa_8]Renishaw Vionic, resolution of $2.5\,\text{nm}$.
[fn:test_apa_7]Kistler 9722A.
[fn:test_apa_6]Polytec controller 3001 with sensor heads OFV512.
[fn:test_apa_5]Note that this is not completely correct as electrical boundaries of the piezoelectric stack impacts its stiffness and that the sensor stack is almost open-circuited while the actuator stacks are almost short-circuited.
[fn:test_apa_4]The Matlab =fminsearch= command is used to fit the plane
[fn:test_apa_3]Heidenhain MT25, specified accuracy of $\pm 0.5\,\upmu\text{m}$
[fn:test_apa_2]Millimar 1318 probe, specified linearity better than $1\,\upmu\text{m}$
[fn:test_apa_1]LCR-819 from Gwinstek, with a specified accuracy of $0.05\%$. The measured frequency is set at $1\,\text{kHz}$
[fn:test_apa_4]The Matlab =fminsearch= command is used to fit the plane.
[fn:test_apa_3]Heidenhain MT25, specified accuracy of $\pm 0.5\,\upmu\text{m}$.
[fn:test_apa_2]Millimar 1318 probe, specified linearity better than $1\,\upmu\text{m}$.
[fn:test_apa_1]LCR-819 from Gwinstek, with a specified accuracy of $0.05\%$. The measured frequency is set at $1\,\text{kHz}$.
[fn:test_joints_5]XFL212R-50N from TE Connectivity. The measurement range is $50\,\text{N}$. The specified accuracy is $1\,\%$ of the full range
[fn:test_joints_4]Resolute\texttrademark{} encoder with $1\,\text{nm}$ resolution and $\pm 40\,\text{nm}$ maximum non-linearity
[fn:test_joints_5]XFL212R-50N from TE Connectivity. The measurement range is $50\,\text{N}$. The specified accuracy is $1\,\%$ of the full range.
[fn:test_joints_4]Resolute\texttrademark{} encoder with $1\,\text{nm}$ resolution and $\pm 40\,\text{nm}$ maximum non-linearity.
[fn:test_joints_3]V-408 PIMag\textsuperscript{\textregistered} linear stage is used. Crossed rollers are used to guide the motion.
[fn:test_joints_2]The load cell is FC22 from TE Connectivity. The measurement range is $50\,\text{N}$. The specified accuracy is $1\,\%$ of the full range
[fn:test_joints_2]The load cell is FC22 from TE Connectivity. The measurement range is $50\,\text{N}$. The specified accuracy is $1\,\%$ of the full range.
[fn:test_joints_1]The alloy used is called /F16PH/, also refereed as "1.4542"
[fn:test_struts_7] OFV-3001 controller and OFV512 sensor head from Polytec
[fn:test_struts_6] Vionic from Renishaw
[fn:test_struts_5] APA300ML from Cedrat Technologies
[fn:test_struts_4] Two fiber intereferometers were used: an IDS3010 from Attocube and a quDIS from QuTools
[fn:test_struts_7] OFV-3001 controller and OFV512 sensor head from Polytec.
[fn:test_struts_6] Vionic from Renishaw.
[fn:test_struts_5] APA300ML from Cedrat Technologies.
[fn:test_struts_4] Two fiber intereferometers were used: an IDS3010 from Attocube and a quDIS from QuTools.
[fn:test_struts_3] Using Ansys\textsuperscript{\textregistered}. Flexible Joints and APA Shell are made of a stainless steel allow called /17-4 PH/. Encoder and ruler support material is aluminium.
[fn:test_struts_2] Heidenhain MT25, specified accuracy of $\pm 0.5\,\upmu\text{m}$
[fn:test_struts_1] FARO Arm Platinum 4ft, specified accuracy of $\pm 13\upmu\text{m}$
[fn:test_struts_2] Heidenhain MT25, specified accuracy of $\pm 0.5\,\upmu\text{m}$.
[fn:test_struts_1] FARO Arm Platinum 4ft, specified accuracy of $\pm 13\upmu\text{m}$.
[fn:test_nhexa_7]PCB 356B18. Sensitivity is $1\,\text{V/g}$, measurement range is $\pm 5\,\text{g}$ and bandwidth is $0.5$ to $5\,\text{kHz}$.
[fn:test_nhexa_6]"SZ8005 20 x 044" from Steinel. The spring rate is specified at $17.8\,\text{N/mm}$
[fn:test_nhexa_6]"SZ8005 20 x 044" from Steinel. The spring rate is specified at $17.8\,\text{N/mm}$.
[fn:test_nhexa_5]The $450\,\text{mm} \times 450\,\text{mm} \times 60\,\text{mm}$ Nexus B4545A from Thorlabs.
[fn:test_nhexa_4]As the accuracy of the FARO arm is $\pm 13\,\upmu\text{m}$, the true straightness is probably better than the values indicated. The limitation of the instrument is here reached.
[fn:test_nhexa_3]The height dimension is better than $40\,\upmu\text{m}$. The diameter fitting of 182g6 and 24g6 with the two plates is verified.
[fn:test_nhexa_2]Location of all the interface surfaces with the flexible joints were checked. The fittings (182H7 and 24H8) with the interface element were also checked.
[fn:test_nhexa_1]FARO Arm Platinum 4ft, specified accuracy of $\pm 13\upmu\text{m}$
[fn:test_nhexa_1]FARO Arm Platinum 4ft, specified accuracy of $\pm 13\upmu\text{m}$.
[fn:test_id31_8]Such scan could corresponding to a 1ms integration time (which is typically the smallest integration time) and $100\,\text{nm}$ "resolution" (equal to the vertical beam size).
[fn:test_id31_7]The highest rotational velocity of $360\,\text{deg/s}$ could not be tested due to an issue in the Spindle's controller.

Binary file not shown.

File diff suppressed because it is too large Load Diff