Skip to content
Snippets Groups Projects
Commit a84dec07 authored by Gerald Mösenlechner's avatar Gerald Mösenlechner
Browse files

Release of V1.1

parent 072ccc4d
No related branches found
No related tags found
No related merge requests found
...@@ -124,3 +124,34 @@ V1.0: ...@@ -124,3 +124,34 @@ V1.0:
- No change to close neighbour confusion, a correction will be provided in - No change to close neighbour confusion, a correction will be provided in
a future update a future update
################################################################################ ################################################################################
V1.0:
31.January, 2024 Gerald Mösenlechner <gerald.moesenlechner@univie.ac.at>
Fixed Issues:
- Fixed bug in smearing kernel generation
- moved Spacecraft - optical transformation outside of the HFS
- Added bound warning for Smearing
- Added validation for Tracking to avoid tracking wrong target
- Removed gaia source id from Star Catalogue
- Updated Star Validation Signal Table
- Implemented full relativistic aberration model
- updated Simulink examples
- Added testplan and report
- fixed CoG position update in Trackign algorithm
- Added alternative PSFs to model other WFE
Open Issues:
- State Preservation: still discrepency on the first centroid.
################################################################################
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
************************************************************ ************************************************************
* ARIEL FGS HFS, , ARIEL-UVIE-PL-ML-001 1.0, JUSTIFICATION * * ARIEL FGS HFS, , ARIEL-UVIE-PL-ML-001 1.1, JUSTIFICATION *
************************************************************ ************************************************************
This note describes the justification of the parameters and values This note describes the justification of the parameters and values
...@@ -12,7 +12,7 @@ Updates of these parameters will be provided with future versions ...@@ -12,7 +12,7 @@ Updates of these parameters will be provided with future versions
of the Performance Parameters Database. of the Performance Parameters Database.
The default parameters used in the algorithms are based on the The default parameters used in the algorithms are based on the
latest analyses provided in ARIEL-UVIE-PL-TN-001 Iss 1.2. latest analyses provided in ARIEL-UVIE-PL-TN-001 Iss 1.3.
################################################################## ##################################################################
...@@ -31,4 +31,6 @@ not included in the current version. These features can have an ...@@ -31,4 +31,6 @@ not included in the current version. These features can have an
impact on the centroid and can lead to the loss of measurements. impact on the centroid and can lead to the loss of measurements.
The entire effect of these features is still under investigation The entire effect of these features is still under investigation
and the possibility to simulate them will be provided in future and the possibility to simulate them will be provided in future
versions. versions. It is possible to model this behavior outside of the
HFS by setting the measurement to invalid for a given amount of
time. The current values are given in ARIEL-UVIE-PL-TN-002 Iss 1.2
***************************************************** *****************************************************
* ARIEL FGS HFS, , ARIEL-UVIE-PL-ML-001 1.0, MANUAL * * ARIEL FGS HFS, ARIEL-UVIE-PL-ML-001 1.1, MANUAL *
***************************************************** *****************************************************
The FGS HFS is based on the c++ object "FGS" defined in HFS_API.hpp. The The FGS HFS is based on the c++ object "FGS" defined in HFS_API.hpp. The
...@@ -46,9 +46,9 @@ from of a hfs_parameters struct update. The struct is defined as follows: ...@@ -46,9 +46,9 @@ from of a hfs_parameters struct update. The struct is defined as follows:
Setting the error to 111 sets the HFS into the failed state Setting the error to 111 sets the HFS into the failed state
exiting this state automatically starts a reset. exiting this state automatically starts a reset.
- int add_shift_x: additive shift to the x component of the centroid in centi-pixels - int add_shift_x: additive shift to the x component of the centroid in mas
- int add_shift_y: additive shift to the y component of the centroid in centi-pixels - int add_shift_y: additive shift to the y component of the centroid in mas
- int mult_shift_x: multiplicative shift of the x component of the centroid (default 1) - int mult_shift_x: multiplicative shift of the x component of the centroid (default 1)
...@@ -95,7 +95,6 @@ cnetroid packet struct with following attributes: ...@@ -95,7 +95,6 @@ cnetroid packet struct with following attributes:
105: signal sigma is below the given threshold 105: signal sigma is below the given threshold
106: Validity index is below the given threshold 106: Validity index is below the given threshold
107: No star matched the defined signal 107: No star matched the defined signal
(Acq only, signal outside of set tolerance)
- unsigned int magnitude: magnitude of the star in ADU - unsigned int magnitude: magnitude of the star in ADU
......
...@@ -5,7 +5,7 @@ else ...@@ -5,7 +5,7 @@ else
endif endif
CC = gcc CC = gcc
CFLAGS += -fPIC -shared -lm -lfftw3 -fopenmp -O3 -lfftw3_omp -Wall -Werror CFLAGS += -fPIC -shared -lm -lfftw3 -fopenmp -O3 -lfftw3_omp -fPIC -Wall -Werror
SRC_DIR = $(shell pwd)/src SRC_DIR = $(shell pwd)/src
TEST_DIR = $(shell pwd)/test TEST_DIR = $(shell pwd)/test
DEST_DIR = $(shell pwd)/src DEST_DIR = $(shell pwd)/src
...@@ -17,16 +17,16 @@ LIBRARIES = $(DEST_DIR)/libutilities$(DLLEXT) $(DEST_DIR)/libdetector_features$( ...@@ -17,16 +17,16 @@ LIBRARIES = $(DEST_DIR)/libutilities$(DLLEXT) $(DEST_DIR)/libdetector_features$(
TARGET_API = $(DEST_DIR)/libHFS_API$(DLLEXT) TARGET_API = $(DEST_DIR)/libHFS_API$(DLLEXT)
$(LIBRARIES): $(DEST_DIR)/lib%$(DLLEXT): $(SRC_DIR)/%.c $(LIBRARIES): $(DEST_DIR)/lib%$(DLLEXT): $(SRC_DIR)/%.c
$(CC) $< -shared -o $@ $(CFLAGS) $(CC) $< -shared -o $@ -fPIC $(CFLAGS)
$(TARGET_API): $(DEST_DIR)/lib%$(DLLEXT): $(SRC_DIR)/%.cpp $(TARGET_API): $(DEST_DIR)/lib%$(DLLEXT): $(SRC_DIR)/%.cpp
$(CC) $< -shared -o $@ -L$(SRC_DIR) -lfcu_algorithms -lutilities -ldetector_features -ltinyxml2 -fopenmp -O3 -lstdc++ -xc++ -fPIC -Wall -Werror -Wl,-rpath=$(SRC_DIR) $(CC) $< -shared -o $@ -L$(SRC_DIR) -lfcu_algorithms -lutilities -ldetector_features -ltinyxml2 -fopenmp -O3 -lstdc++ -xc++ -fPIC -Wall -Werror -Wl,-rpath=$(SRC_DIR)
$(TESTS): $(TEST_DIR)/%.o: $(TEST_DIR)/%.cpp $(TESTS): $(TEST_DIR)/%.o: $(TEST_DIR)/%.cpp
g++ -c $< -o $@ -L$(SRC_DIR) -lfcu_algorithms -lutilities -ldetector_features -lHFS_API -lcppunit -ltinyxml2 -lstdc++ -Wall -Wl,-rpath=$(SRC_DIR) g++ -c $< -o $@ -fPIC -L$(SRC_DIR) -lfcu_algorithms -lutilities -ldetector_features -lHFS_API -lcppunit -ltinyxml2 -lstdc++ -Wall -Wl,-rpath=$(SRC_DIR)
API_Test: $(TEST_DIR)/HFSTest.o $(TEST_DIR)/DetectorFeatureTest.o $(TEST_DIR)/UtilityTest.o $(TEST_DIR)/FCUTest.o $(TEST_DIR)/HFSTestMain.o API_Test: $(TEST_DIR)/HFSTest.o $(TEST_DIR)/DetectorFeatureTest.o $(TEST_DIR)/UtilityTest.o $(TEST_DIR)/FCUTest.o $(TEST_DIR)/HFSTestMain.o
g++ $(TEST_DIR)/HFSTestMain.o $(TEST_DIR)/HFSTest.o $(TEST_DIR)/DetectorFeatureTest.o $(TEST_DIR)/UtilityTest.o $(TEST_DIR)/FCUTest.o -o $(TEST_DIR)/API_Test -L$(SRC_DIR) -lfcu_algorithms -lutilities -ldetector_features -lHFS_API -lcppunit -ltinyxml2 -lstdc++ -Wall -Werror -Wl,-rpath=$(SRC_DIR) g++ $(TEST_DIR)/HFSTestMain.o $(TEST_DIR)/HFSTest.o $(TEST_DIR)/DetectorFeatureTest.o $(TEST_DIR)/UtilityTest.o $(TEST_DIR)/FCUTest.o -o $(TEST_DIR)/API_Test -L$(SRC_DIR) -lfcu_algorithms -lutilities -ldetector_features -lHFS_API -lcppunit -ltinyxml2 -lstdc++ -fPIC -Wall -Werror -Wl,-rpath=$(SRC_DIR)
example: $(TEST_DIR)/example.cpp example: $(TEST_DIR)/example.cpp
g++ $(TEST_DIR)/example.cpp -o ./example.out -L$(SRC_DIR) -lHFS_API -ltinyxml2 -lstdc++ -Wall -Werror -Wl,-rpath=$(SRC_DIR) g++ $(TEST_DIR)/example.cpp -o ./example.out -L$(SRC_DIR) -lHFS_API -ltinyxml2 -lstdc++ -Wall -Werror -Wl,-rpath=$(SRC_DIR)
......
...@@ -87,21 +87,21 @@ def calc_quaternion(star, sc): ...@@ -87,21 +87,21 @@ def calc_quaternion(star, sc):
return quaternion return quaternion
if __name__ == "__main__": if __name__ == "__main__":
star_cat = pd.read_csv("./src/Star_catalouge.csv") star_cat = pd.read_csv("./src/Star_catalogue.csv")
id = sys.argv[1] id = sys.argv[1]
star = star_cat.loc[star_cat['Name'] == id] star = star_cat.loc[star_cat['Name'] == id]
print("Quaternion for Star:", id) print("Quaternion for Star:", id)
star.dec = star.dec
star.ra = star.ra
star_vec = np.array((np.cos(star.dec*(np.pi/180))*np.cos(star.ra*(np.pi/180)), np.cos(star.dec*(np.pi/180))*np.sin(star.ra*(np.pi/180)), np.sin(star.dec*(np.pi/180)))) star_vec = np.array((np.cos(star.dec*(np.pi/180))*np.cos(star.ra*(np.pi/180)), np.cos(star.dec*(np.pi/180))*np.sin(star.ra*(np.pi/180)), np.sin(star.dec*(np.pi/180))))
sc_vec = np.array((1.001698, 0, -0.0017)) #target sc-vector sc_vec = np.array((0, 0, 1)) #target sc-vector
quat = calc_quaternion(sc_vec, star_vec) quat = calc_quaternion(sc_vec, star_vec)
print("\ts =", quat[0]) print("Quaternion:", quat[0], ",",quat[1], ",",quat[2], ",",quat[3] )
print("\tv1 =", quat[1])
print("\tv2 =", quat[2])
print("\tv3 =", quat[3])
print("Expected Signals:") print("Expected Signals:")
print("\tFGS1:") print("\tFGS1:")
......
****************************************************** ******************************************************
* ARIEL FGS HFS Repository, ARIEL-UVIE-PL-ML-001 1.0 * * ARIEL FGS HFS Repository, ARIEL-UVIE-PL-ML-001 1.1 *
****************************************************** ******************************************************
This repository contains the HFS, the simulator SW used to simulate the This repository contains the HFS, the simulator SW used to simulate the
...@@ -13,7 +13,7 @@ Files: ...@@ -13,7 +13,7 @@ Files:
src/HFS_API ..................... Main simulator and interface (.cpp/.hpp) src/HFS_API ..................... Main simulator and interface (.cpp/.hpp)
src/HFS_bus.mat ................. Simulink bus object definitions for HFS src/HFS_bus.mat ................. Simulink bus object definitions for HFS
src/HFS.config.xml .............. Config file for the HFS src/HFS.config.xml .............. Config file for the HFS
src/Star_catalouge.csv .......... Catalouge containing the star data src/Star_catalogue.csv .......... Catalogue containing the star data
src/HFS_Wrapper.................. C++ side implementation of the Simulink wrapper src/HFS_Wrapper.................. C++ side implementation of the Simulink wrapper
matlab_model/HFS_Wrapper ........ Simulink implementation example using legacy code tools (.m) matlab_model/HFS_Wrapper ........ Simulink implementation example using legacy code tools (.m)
matlab_model/Example_model.slx .. Simulink example showing the bus usage matlab_model/Example_model.slx .. Simulink example showing the bus usage
...@@ -21,10 +21,12 @@ Files: ...@@ -21,10 +21,12 @@ Files:
test/example.cpp ................ Example script showing the function of the library test/example.cpp ................ Example script showing the function of the library
Quaternion_Calulator.pxy ........ Python command-line tool for quaternion determination Quaternion_Calulator.pxy ........ Python command-line tool for quaternion determination
Star_Validation_Signals.xlsx .... Table containing target signals and validation values for stars Star_Validation_Signals.xlsx .... Table containing target signals and validation values for stars
matlab_model/Test_Cases/ ........ Simulink Test Benches including output data matlab_model/Test_Cases/ ........ Simulink Test Benches used in functional verification
CHANGELOG CHANGELOG
README README
MANUAL MANUAL
Documents/ ...................... Applicable dokuments for the HFS
Dependencies: Dependencies:
...@@ -56,4 +58,4 @@ Run Quaternion_Calulator: ...@@ -56,4 +58,4 @@ Run Quaternion_Calulator:
The software provided here is ©University of Vienna. The software provided here is ©University of Vienna.
GM 1st November, 2023 GM 30th January, 2024
No preview for this file type
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment