EMTG Spacecraft File Specification¶
This section describes the contents of an EMTG spacecraft file. The descriptions are given in the tables in this section and are organized by the spacecraft file block, the line number within a block, and the variable number within a line. It is highly recommended that this file specification be used in conjunction with Format of EMTG Spacecraft File and the example .emtg_spacecraft files provided in gmat/data/emtg/.
Several symbols and acronyms are used in the tables in this section: is power; is base power delivered by a solar array; is the distance from the spacecraft to the Sun; Isp is specific impulse; CSI is constant specific impulse; and VSI is variable specific impulse.
Spacecraft Block¶
This section describes the contents of the Spacecraft Block of an EMTG spacecraft file.
Line number |
1 |
Line name |
name |
Variable number |
1 |
Variable description |
N/A |
Data type |
string |
Units |
N/A |
Value restrictions |
none |
Other |
N/A |
Line number |
2 |
Line name |
EnableGlobalElectricPropellantTankConstraint |
Variable number |
1 |
Variable description |
N/A |
Data type |
integer |
Units |
N/A |
Value restrictions |
0 or 1 |
Other |
boolean integer |
Line number |
3 |
Line name |
EnableGlobalChemicalPropellantTankConstraint |
Variable number |
1 |
Variable description |
N/A |
Data type |
integer |
Units |
N/A |
Value restrictions |
0 or 1 |
Other |
boolean integer |
Line number |
4 |
Line name |
EnableGlobalDryMassConstraint |
Variable number |
1 |
Variable description |
N/A |
Data type |
integer |
Units |
N/A |
Value restrictions |
0 or 1 |
Other |
boolean integer |
Line number |
5 |
Line name |
GlobalElectricPropellantTankCapacity |
Variable number |
1 |
Variable description |
N/A |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
N/A |
Line number |
6 |
Line name |
GlobalFuelTankCapacity |
Variable number |
1 |
Variable description |
N/A |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
N/A |
Line number |
7 |
Line name |
GlobalOxidizerTankCapacity |
Variable number |
1 |
Variable description |
N/A |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
N/A |
Line number |
8 |
Line name |
GlobalDryMassBounds |
Variable number |
1 |
Variable description |
Lower bound on global dry mass |
Data type |
real |
Units |
kg |
Value restrictions |
; GlobalDryMassBounds[2] |
Other |
N/A |
Line number |
8 |
Line name |
GlobalDryMassBounds |
Variable number |
2 |
Variable description |
Upper bound on global dry mass |
Data type |
real |
Units |
kg |
Value restrictions |
GlobalDryMassBounds[1] |
Other |
N/A |
Stage Block¶
This section describes the contents of the Stage Block of an EMTG spacecraft file.
Line number |
1 |
Line name |
name |
Variable number |
1 |
Variable description |
Name of the stage |
Data type |
string |
Units |
N/A |
Value restrictions |
none |
Other |
N/A |
Line number |
2 |
Line name |
BaseDryMass |
Variable number |
1 |
Variable description |
Dry mass of the propulsion system base |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
N/A |
Line number |
3 |
Line name |
AdapterMass |
Variable number |
1 |
Variable description |
Mass of the spacecraft-to-power-system adapter |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
N/A |
Line number |
4 |
Line name |
EnableElectricPropellantTankConstraint |
Variable number |
1 |
Variable description |
Is the constraint on the electric propellant tank capacity enabled? |
Data type |
integer |
Units |
N/A |
Value restrictions |
0 or 1 |
Other |
boolean integer |
Line number |
5 |
Line name |
EnableChemicalPropellantTankConstraint |
Variable number |
1 |
Variable description |
Is the constraint on the chemical propellant tank capacity enabled? |
Data type |
integer |
Units |
N/A |
Value restrictions |
0 or 1 |
Other |
boolean integer |
Line number |
6 |
Line name |
EnableDryMassConstraint |
Variable number |
1 |
Variable description |
Is the constraint on dry mass enabled? |
Data type |
integer |
Units |
N/A |
Value restrictions |
0 or 1 |
Other |
boolean integer |
Line number |
7 |
Line name |
ElectricPropellantTankCapacity |
Variable number |
1 |
Variable description |
Maximum electric propellant mass |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
Only enforced if EnableElectricPropellantTankConstraint == 1 |
Line number |
8 |
Line name |
ChemicalFuelTankCapacity |
Variable number |
1 |
Variable description |
Maximum chemical fuel mass |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
Only enforced if EnableChemicalPropellantTankConstraint == 1 |
Line number |
9 |
Line name |
ChemicalOxidizerTankCapacity |
Variable number |
1 |
Variable description |
Maximum oxidizer mass |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
Only enforced if EnableChemicalPropellantTankConstraint == 1 |
Line number |
10 |
Line name |
ThrottleLogic |
Variable number |
1 |
Variable description |
How should the number of thrusters be selected? |
Data type |
integer |
Units |
N/A |
Value restrictions |
1 or 2 |
Other |
1: minimum number of thrusters 2: maximum number of thrusters |
Line number |
11 |
Line name |
ThrottleSharpness |
Variable number |
1 |
Variable description |
Determines how smooth or sharp the transition between throttle levels is |
Data type |
real |
Units |
N/A |
Value restrictions |
|
Other |
The Heaviside step function is analytically approximated using , ThrottleSharpness. |
Line number |
12 |
Line name |
PowerSystem |
Variable number |
1 |
Variable description |
Name of power system for stage |
Data type |
string |
Units |
N/A |
Value restrictions |
Must be a valid name in the stage’s Power Library block |
Other |
N/A |
Line number |
13 |
Line name |
ElectricPropulsionSystem |
Variable number |
1 |
Variable description |
Name of electric propulsion system for stage |
Data type |
string |
Units |
N/A |
Value restrictions |
Must be a valid name in the stage’s Propulsion Library block |
Other |
N/A |
Line number |
14 |
Line name |
ChemicalPropulsionSystem |
Variable number |
1 |
Variable description |
Name of chemical propulsion system for stage |
Data type |
string |
Units |
N/A |
Value restrictions |
Must be a valid name in the stage’s Propulsion Library block |
Other |
N/A |
Power Library Block¶
This section describes the contents of the Power Library Block of an EMTG spacecraft file.
Multiple power systems may be added to the power library by adding additional lines that contain all elements specified in line 1.
Line number |
1 |
Line name |
N/A |
Variable number |
1 |
Variable description |
name for this power system being specified by that line |
Data type |
string |
Units |
N/A |
Value restrictions |
none |
Other |
N/A |
Line number |
1 |
Line name |
N/A |
Variable number |
2 |
Variable description |
power supply type |
Data type |
integer |
Units |
N/A |
Value restrictions |
[0, 1] |
Other |
0: constant; 1: solar |
Line number |
1 |
Line name |
N/A |
Variable number |
3 |
Variable description |
power supply curve type |
Data type |
integer |
Units |
N/A |
Value restrictions |
[0, 1] |
Other |
0: Sauer:
|
Line number |
1 |
Line name |
N/A |
Variable number |
4 |
Variable description |
bus power type |
Data type |
integer |
Units |
N/A |
Value restrictions |
[0, 1] |
Other |
0: type A quadratic: P_Bus = bus_power[0] * r_s^0 + bus_power[1] * r_s^1 + bus_power[2] * r_s^2 1: type B conditional: If P_Provided > bus_power[0], then P_Bus = bus_power[0]. Else, P_Bus = bus_power[0] + bus_power[1] * (bus_power[2] - P_provided) |
Line number |
1 |
Line name |
N/A |
Variable number |
5 |
Variable description |
P0 |
Data type |
real |
Units |
kW |
Value restrictions |
|
Other |
Base power |
Line number |
1 |
Line name |
N/A |
Variable number |
6 |
Variable description |
mass per kW |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
N/A |
Line number |
1 |
Line name |
N/A |
Variable number |
7 |
Variable description |
decay rate |
Data type |
real |
Units |
1/years |
Value restrictions |
|
Other |
rate of power decay over time: , with t in years |
Line number |
1 |
Line name |
N/A |
Variable number |
8 |
Variable description |
gamma[0] |
Data type |
real |
Units |
assumes r_s is in km and P is in kW |
Value restrictions |
N/A |
Other |
Power delivered by solar array. If power supply curve type == 0: numerator coefficient of r_s^0. If power supply curve type == 1: coefficient of r_s^0 |
Line number |
1 |
Line name |
N/A |
Variable number |
9 |
Variable description |
gamma[1] |
Data type |
real |
Units |
assumes r_s is in km and P is in kW |
Value restrictions |
N/A |
Other |
Power delivered by solar array. If power supply curve type == 0: numerator coefficient of r_s^1. If power supply curve type == 1: coefficient of r_s^1 |
Line number |
1 |
Line name |
N/A |
Variable number |
10 |
Variable description |
gamma[2] |
Data type |
real |
Units |
assumes r_s is in km and P is in kW |
Value restrictions |
N/A |
Other |
Power delivered by solar array. If power supply curve type == 0: numerator coefficient of r_s^2. If power supply curve type == 1: coefficient of r_s^2 |
Line number |
1 |
Line name |
N/A |
Variable number |
11 |
Variable description |
gamma[3] |
Data type |
real |
Units |
assumes r_s is in km and P is in kW |
Value restrictions |
N/A |
Other |
Power delivered by solar array. If power supply curve type == 0: denominator coefficient of r_s^1. If power supply curve type == 1: coefficient of r_s^3 |
Line number |
1 |
Line name |
N/A |
Variable number |
12 |
Variable description |
gamma[4] |
Data type |
real |
Units |
assumes r_s is in km and P is in kW |
Value restrictions |
N/A |
Other |
Power delivered by solar array. If power supply curve type == 0: denominator coefficient of r_s^2. If power supply curve type == 1: coefficient of r_s^4 |
Line number |
1 |
Line name |
N/A |
Variable number |
13 |
Variable description |
gamma[5] |
Data type |
real |
Units |
assumes r_s is in km and P is in kW |
Value restrictions |
N/A |
Other |
Power delivered by solar array. If power supply curve type == 1: coefficient of r_s^5 |
Line number |
1 |
Line name |
N/A |
Variable number |
14 |
Variable description |
gamma[6] |
Data type |
real |
Units |
assumes r_s is in km and P is in kW |
Value restrictions |
N/A |
Other |
Power delivered by solar array. If power supply curve type == 1: coefficient of r_s^6 |
Line number |
1 |
Line name |
N/A |
Variable number |
15 |
Variable description |
bus power[0] |
Data type |
real |
Units |
N/A |
Value restrictions |
N/A |
Other |
If bus power type == 0: Power required by spacecraft bus: coefficient of r_s^0. If bus power type == 1, see note on bus power type. |
Line number |
1 |
Line name |
N/A |
Variable number |
16 |
Variable description |
bus power[1] |
Data type |
real |
Units |
N/A |
Value restrictions |
N/A |
Other |
If bus power type == 0: Power required by spacecraft bus: coefficient of r_s^1. If bus power type == 1, see note on bus power type. |
Line number |
1 |
Line name |
N/A |
Variable number |
17 |
Variable description |
bus power[2] |
Data type |
real |
Units |
N/A |
Value restrictions |
N/A |
Other |
If bus power type == 0: Power required by spacecraft bus: coefficient of r_s^2. If bus power type == 1, see note on bus power type. |
Propulsion Library Block¶
This section describes the contents of the Propulsion Library Block of an EMTG spacecraft file.
Multiple propulsion systems may be added to the propulsion library by adding additional lines that contain all elements specified in line 1.
Line number |
1 |
Line name |
N/A |
Variable number |
1 |
Variable description |
name for this power system being specified by that line |
Data type |
string |
Units |
N/A |
Value restrictions |
none |
Other |
N/A |
Line number |
1 |
Line name |
N/A |
Variable number |
2 |
Variable description |
thruster mode |
Data type |
integer |
Units |
N/A |
Value restrictions |
[0,1,3,4,5] |
Other |
0: constant thrust and Isp 1: fixed efficiency CSI 3: polynomial 1D 4: stepped H thrust 1D 5: stepped L mdot 1D. |
Line number |
1 |
Line name |
N/A |
Variable number |
3 |
Variable description |
throttle table file |
Data type |
string |
Units |
N/A |
Value restrictions |
“none” or path to external *.ThrottleTable file, relative to GMAT executable location |
Other |
If an external throttle table is to be used, the relevant file is specified here. Otherwise, use “none”. If an external table is provided, it overrides local thrust coefficients and power coefficients |
Line number |
1 |
Line name |
N/A |
Variable number |
4 |
Variable description |
mass per string |
Data type |
real |
Units |
kg |
Value restrictions |
|
Other |
mass of a single thruster string |
Line number |
1 |
Line name |
N/A |
Variable number |
5 |
Variable description |
number of strings |
Data type |
integer |
Units |
N/A |
Value restrictions |
|
Other |
the number of thruster strings in operation |
Line number |
1 |
Line name |
N/A |
Variable number |
6 |
Variable description |
Minimum power |
Data type |
real |
Units |
kW |
Value restrictions |
|
Other |
Minimum power to thruster |
Line number |
1 |
Line name |
N/A |
Variable number |
7 |
Variable description |
Maximum power |
Data type |
real |
Units |
kW |
Value restrictions |
Minimum power (variable 6) |
Other |
Maximum power to thruster |
Line number |
1 |
Line name |
N/A |
Variable number |
8 |
Variable description |
constrant thrust |
Data type |
real |
Units |
N |
Value restrictions |
|
Other |
If a constant thrust is desired, its value is set here |
Line number |
1 |
Line name |
N/A |
Variable number |
9 |
Variable description |
constant Isp |
Data type |
real |
Units |
s |
Value restrictions |
|
Other |
If a constant Isp is desired, its value is set here |
Line number |
1 |
Line name |
N/A |
Variable number |
10 |
Variable description |
minimum Isp / monoprop Isp |
Data type |
real |
Units |
s |
Value restrictions |
|
Other |
Isp for a monoprop system, if used |
Line number |
1 |
Line name |
N/A |
Variable number |
11 |
Variable description |
fixed efficiency |
Data type |
real |
Units |
N/A |
Value restrictions |
|
Other |
Fixed efficiency if operating in fixed efficiency mode |
Line number |
1 |
Line name |
N/A |
Variable number |
12 |
Variable description |
mixture ratio |
Data type |
real |
Units |
N/A |
Value restrictions |
|
Other |
Mixture ratio for chemical thruster |
Line number |
1 |
Line name |
N/A |
Variable number |
13 |
Variable description |
thrust scale factor |
Data type |
real |
Units |
N/A |
Value restrictions |
|
Other |
Constant factor by which to scale thrust |
Line number |
1 |
Line name |
N/A |
Variable number |
14 |
Variable description |
thrust coefficient[0] |
Data type |
real |
Units |
assumes thrust is in mN |
Value restrictions |
N/A |
Other |
Thrust coefficient of P^0. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
15 |
Variable description |
thrust coefficient[1] |
Data type |
real |
Units |
assumes thrust is in mN |
Value restrictions |
N/A |
Other |
Thrust coefficient of P^1. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
16 |
Variable description |
thrust coefficient[2] |
Data type |
real |
Units |
assumes thrust is in mN |
Value restrictions |
N/A |
Other |
Thrust coefficient of P^2. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
17 |
Variable description |
thrust coefficient[3] |
Data type |
real |
Units |
assumes thrust is in mN |
Value restrictions |
N/A |
Other |
Thrust coefficient of P^3. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
18 |
Variable description |
thrust coefficient[4] |
Data type |
real |
Units |
assumes thrust is in mN |
Value restrictions |
N/A |
Other |
Thrust coefficient of P^4. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
19 |
Variable description |
thrust coefficient[5] |
Data type |
real |
Units |
assumes thrust is in mN |
Value restrictions |
N/A |
Other |
Thrust coefficient of P^5. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
20 |
Variable description |
thrust coefficient[6] |
Data type |
real |
Units |
assumes thrust is in mN |
Value restrictions |
N/A |
Other |
Thrust coefficient of P^6. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
21 |
Variable description |
mass flow coefficient[0] |
Data type |
real |
Units |
asumes mass flow is in mg/s |
Value restrictions |
N/A |
Other |
Mass flow coefficient of P^0. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
22 |
Variable description |
mass flow coefficient[1] |
Data type |
real |
Units |
asumes mass flow is in mg/s |
Value restrictions |
N/A |
Other |
Mass flow coefficient of P^1. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
23 |
Variable description |
mass flow coefficient[2] |
Data type |
real |
Units |
asumes mass flow is in mg/s |
Value restrictions |
N/A |
Other |
Mass flow coefficient of P^2. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
24 |
Variable description |
mass flow coefficient[3] |
Data type |
real |
Units |
asumes mass flow is in mg/s |
Value restrictions |
N/A |
Other |
Mass flow coefficient of P^3. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
25 |
Variable description |
mass flow coefficient[4] |
Data type |
real |
Units |
asumes mass flow is in mg/s |
Value restrictions |
N/A |
Other |
Mass flow coefficient of P^4. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
26 |
Variable description |
mass flow coefficient[5] |
Data type |
real |
Units |
asumes mass flow is in mg/s |
Value restrictions |
N/A |
Other |
Mass flow coefficient of P^5. Only used if throttle table file is “none”. |
Line number |
1 |
Line name |
N/A |
Variable number |
27 |
Variable description |
mass flow coefficient[6] |
Data type |
real |
Units |
asumes mass flow is in mg/s |
Value restrictions |
N/A |
Other |
Mass flow coefficient of P^6. Only used if throttle table file is “none”. |


QSGAbstractRenderer Class
QSGAbstractRenderer gives access to the scene graph nodes and rendering of a QSGEngine. More...
| Header: | #include <QSGAbstractRenderer> |
| qmake: | QT += quick |
| Since: | Qt 5.4 |
| Inherits: | QObject |
Public Types
| flags | ClearMode |
| enum | ClearModeBit { ClearColorBuffer, ClearDepthBuffer, ClearStencilBuffer } |
Public Functions
| QColor | clearColor() const |
| ClearMode | clearMode() const |
| QRect | deviceRect() const |
| QMatrix4x4 | projectionMatrix() const |
| virtual void | renderScene(GLuint fboId = 0) = 0 |
| QSGRootNode * | rootNode() const |
| void | setClearColor(const QColor &color) |
| void | setClearMode(ClearMode mode) |
| void | setDeviceRect(const QRect &rect) |
| void | setDeviceRect(const QSize &size) |
| void | setProjectionMatrix(const QMatrix4x4 &matrix) |
| void | setProjectionMatrixToRect(const QRectF &rect) |
| void | setRootNode(QSGRootNode *node) |
| void | setViewportRect(const QRect &rect) |
| void | setViewportRect(const QSize &size) |
| QRect | viewportRect() const |
- 32 public functions inherited from QObject
Signals
| void | sceneGraphChanged() |
- 2 signals inherited from QObject
Additional Inherited Members
- 1 property inherited from QObject
- 1 public slot inherited from QObject
- 1 public variable inherited from QObject
- 10 static public members inherited from QObject
- 9 protected functions inherited from QObject
- 2 protected variables inherited from QObject
Detailed Description
QSGAbstractRenderer gives access to the scene graph nodes and rendering of a QSGEngine.
A QSGAbstractRenderer created by a QSGEngine allows you to set your QSGNode tree through setRootNode() and control the rendering viewport through setDeviceRect(), setViewportRect() and setProjectionMatrixToRect(). You can finally trigger the rendering to the desired framebuffer through renderScene().
The QSGAbstractRenderer is only available when used with a QSGEngine and isn't exposed when used internally by QQuickWindow.
See also QSGEngine and QSGNode.
Member Type Documentation
enum QSGAbstractRenderer::ClearModeBit
flags QSGAbstractRenderer::ClearMode
Used with setClearMode() to indicate which buffer should be cleared before the scene render.
| Constant | Value | Description |
|---|---|---|
QSGAbstractRenderer::ClearColorBuffer | 0x0001 | Clear the color buffer using clearColor(). |
QSGAbstractRenderer::ClearDepthBuffer | 0x0002 | Clear the depth buffer. |
QSGAbstractRenderer::ClearStencilBuffer | 0x0004 | Clear the stencil buffer. |
The ClearMode type is a typedef for QFlags<ClearModeBit>. It stores an OR combination of ClearModeBit values.
See also setClearMode() and setClearColor().
Member Function Documentation
QColor QSGAbstractRenderer::clearColor() const
Returns the color that clears the framebuffer at the beginning of the rendering.
See also setClearColor() and clearMode().
ClearMode QSGAbstractRenderer::clearMode() const
Flags defining which attachment of the framebuffer will be cleared before each scene render.
See also setClearMode() and clearColor().
QRect QSGAbstractRenderer::deviceRect() const
Returns the device rect of the surface being rendered to.
See also setDeviceRect().
QMatrix4x4 QSGAbstractRenderer::projectionMatrix() const
Returns the projection matrix
See also setProjectionMatrix() and setProjectionMatrixToRect().
[pure virtual]
void QSGAbstractRenderer::renderScene(GLuint fboId = 0)
Render the scene to the specified fboId
If fboId isn't specified, the scene graph will be rendered to the default framebuffer. You will have to call QOpenGLContext::swapBuffers() yourself afterward.
The framebuffer specified by fboId will be bound automatically.
See also QOpenGLContext::swapBuffers() and QOpenGLFramebufferObject::handle().
QSGRootNode *QSGAbstractRenderer::rootNode() const
Returns the root of the QSGNode scene.
See also setRootNode().
[signal]
void QSGAbstractRenderer::sceneGraphChanged()
This signal is emitted on the first modification of a node in the tree after the last scene render.
void QSGAbstractRenderer::setClearColor(const QColor &color)
Use color to clear the framebuffer when clearMode() is set to QSGAbstractRenderer::ClearColorBuffer.
See also clearColor() and setClearMode().
void QSGAbstractRenderer::setClearMode(ClearMode mode)
Defines which attachment of the framebuffer should be cleared before each scene render with the mode flag.
See also clearMode() and setClearColor().
void QSGAbstractRenderer::setDeviceRect(const QRect &rect)
Sets rect as the geometry of the surface being rendered to.
See also deviceRect().
void QSGAbstractRenderer::setDeviceRect(const QSize &size)
This is an overloaded function.
Sets the size of the surface being rendered to.
See also deviceRect().
void QSGAbstractRenderer::setProjectionMatrix(const QMatrix4x4 &matrix)
Use matrix to project the QSGNode coordinates onto surface pixels.
See also projectionMatrix() and setProjectionMatrixToRect().
void QSGAbstractRenderer::setProjectionMatrixToRect(const QRectF &rect)
Convenience method that calls setProjectionMatrix() with an orthographic matrix generated from rect.
See also setProjectionMatrix() and projectionMatrix().
void QSGAbstractRenderer::setRootNode(QSGRootNode *node)
Sets the node as the root of the QSGNode scene that you want to render. You need to provide a node before trying to render the scene.
Note: This doesn't take ownership of node.
See also rootNode().
void QSGAbstractRenderer::setViewportRect(const QRect &rect)
Sets rect as the geometry of the viewport to render on the surface.
See also viewportRect().
void QSGAbstractRenderer::setViewportRect(const QSize &size)
This is an overloaded function.
Sets the size of the viewport to render on the surface.
See also viewportRect().
QRect QSGAbstractRenderer::viewportRect() const
Returns the rect of the viewport to render.
See also setViewportRect().


IS Systems Services
We are an Information System service company providing desktop and Android enterprise and utility software development services.
We offer IS consultancy services that help small & micro enterprises
make sound decisions concerning their digital data and systems that will automate their workflows as well
as the change-over strategies for the implementations of enterprise systems.
We offer managed info systems support services so that you can focus on the business part of your enterprise.
Whether you feel that your organisation isn't large enough for your own internal IT department, or
you just want to take away managing your IT infrastructure, a managed support contract from Rivest
Systems is the answer.


Accurate relative localization is important for a swarm of robots, especially when performing a cooperative task. This paper presents an autonomous multi-robot relative positioning technique. An Extended Kalman filter (EKF) uses onboard sensing of velocity, yaw rate, and height as inputs, and then estimates the relative position of other robots by fusing these quantities with ranging measurements obtained from onboard ultra wide-band (UWB). Real-world experiments are conducted on a team of 5 Crazyflie2 quadrotors, demonstrating autonomous formation flight and coordinated flight through a window.
Innovations
- An autonomous relative localization implemented on multiple nano (33 grams) flying robots with fully onboard perception.
- Localization convergence analysis for both random initialization maneuvers and unobservable maneuvers.
- Robust and fast communication (333Hz for each ranging) that allow for a high-speed estimation update.
- Automatic initialization procedure for dealing with large unknown initial state errors.
Swarm demo with off-the-shelf Crazyflie
- Set the address of each crazyflie ending by E5, E6, E7, ... .
- Download source code and checkout the swarm branch.
- Set the NumUWB in lpsTwrTag.h to the actual number of Crazyflies.
- In cfclient, connect to 'E5' crazyflie, and set keep_flying to 1.
Video demo
The summary video is shown below. For the full video list, click here.
Visual control on the Leader
In the leader-follower test, the leader Crazyflie is equipped with a monocular camera for autonomous target detection and tracking.
Simulation with Python
In case you don't have Crazyflie robots, you can still validate the proposed relative localization method in a python-based simulation framework. The kinematic model is same to the real-world robots.


[gecode-users] [Help] Killer sudoku model (newbie)
Guido Tack
tack at ps.uni-sb.de
Fri Mar 24 13:44:39 CET 2006
> Thanks for the report, the test actually runs fine on my machine... This
> looks as if we are talking a bug in your gcc (or some other part of the
> software environment). Which version of gcc is it really? Could you send
> the output of gcc -v?
>
> Guido: could you try it on your mac?
I can confirm the bug. I tried it on a G3 PowerPC, so it's not due to the G5
(and that would have surprised me, as we don't generate special G5 code
anyway).
gcc --version produces
powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5250)
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
I'll have a look.
Cheers,
Guido
--
Guido Tack
Programming Systems Lab, Saarland University, Germany
http://www.ps.uni-sb.de/~tack
More information about the gecode-users
mailing list


Alex Rodin
Solutions Architect
Strategy | Design | Development
Expert In Mobile & Web Development
It’s a pleasure to have you on my website. Let me know if there’s an opportunity for us to do something together.
inspired and based on
Nik Rowell
and
Pavel Dobryakov
experiments. Music
Intrepid by
Dye O
.


[gecode-users] Sum over matrix slice
Tomas Lidén
tomas.liden at liu.se
Thu May 15 13:16:52 CEST 2014
Hi!
While working on a course assignment I realized (after some struggling)
that summing over a matrix slice does not perform as expected:
=== snippet ==
BoolVarArray x(home, n*n, 0, 1);
Matrix<BoolVarArray> m(x, n, n);
rel(home, sum(m.slice(i, i+1, i, i+1)) > 0); // forces m(i,i) > 0 !!
BoolVarArgs s;
s << m(i,i) << m(i+1,i) << m(i,i+1) << m(i+1,i+1);
rel(home, sum(s) > 0); // forces the sum over the 4 variables > 0 (as I
wanted)
== end of snippet ==
The sum(m.slice(...)) only seems to sum the first element in the slice?!
Quite surprising and unnatural to me. Am I doing something wrong here?
(I get no compiler warnings or errors..)
The following post discusses a similar subject concerning IntVar's..
http://www.gecode.org/pipermail/users/2013-August/004086.html
All the best,
Tomas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20140515/4b7f92ab/attachment.html>
More information about the users
mailing list


Me in brief
Full Stack Web developer specialized in PHP, JS. with the habit of improving performance.
Indefatigable code reformatter, always at the research for the perfect design pattern.
Very good knower of Symfony, React, Sonata project, Node js. Symfony bundle maker.
Extra work languages I love to program with:
- Python - (used up to a year ago, when I found a passion for Arduino and code on it with C)
- C/C++ - In love with pointers
Also love to code on Arduino to build some usefull/useless things.
Rediscovered the passion in electronics.