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:
- No change to close neighbour confusion, a correction will be provided in
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
......@@ -12,7 +12,7 @@ Updates of these parameters will be provided with future versions
of the Performance Parameters Database.
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
impact on the centroid and can lead to the loss of measurements.
The entire effect of these features is still under investigation
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
......@@ -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
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)
......@@ -95,7 +95,6 @@ cnetroid packet struct with following attributes:
105: signal sigma is below the given threshold
106: Validity index is below the given threshold
107: No star matched the defined signal
(Acq only, signal outside of set tolerance)
- unsigned int magnitude: magnitude of the star in ADU
......
......@@ -5,7 +5,7 @@ else
endif
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
TEST_DIR = $(shell pwd)/test
DEST_DIR = $(shell pwd)/src
......@@ -17,16 +17,16 @@ LIBRARIES = $(DEST_DIR)/libutilities$(DLLEXT) $(DEST_DIR)/libdetector_features$(
TARGET_API = $(DEST_DIR)/libHFS_API$(DLLEXT)
$(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
$(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
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
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
g++ $(TEST_DIR)/example.cpp -o ./example.out -L$(SRC_DIR) -lHFS_API -ltinyxml2 -lstdc++ -Wall -Werror -Wl,-rpath=$(SRC_DIR)
......@@ -64,6 +64,6 @@ all: $(LIBRARIES) $(TARGET_API)
.PHONY: clean
clean:
-${RM} $(SRC_DIR)/*.so
-${RM} $(TEST_DIR)/*.o
-${RM} $(SRC_DIR)/*.so
-${RM} $(TEST_DIR)/*.o
-${RM} example.out
......@@ -87,22 +87,22 @@ def calc_quaternion(star, sc):
return quaternion
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]
star = star_cat.loc[star_cat['Name'] == 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))))
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)
print("\ts =", quat[0])
print("\tv1 =", quat[1])
print("\tv2 =", quat[2])
print("\tv3 =", quat[3])
print("Quaternion:", quat[0], ",",quat[1], ",",quat[2], ",",quat[3] )
print("Expected Signals:")
print("\tFGS1:")
print("\t\tTracking:", float(star.FGS1*0.125), "ADU")
......
******************************************************
* 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
......@@ -13,7 +13,7 @@ Files:
src/HFS_API ..................... Main simulator and interface (.cpp/.hpp)
src/HFS_bus.mat ................. Simulink bus object definitions for 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
matlab_model/HFS_Wrapper ........ Simulink implementation example using legacy code tools (.m)
matlab_model/Example_model.slx .. Simulink example showing the bus usage
......@@ -21,10 +21,12 @@ Files:
test/example.cpp ................ Example script showing the function of the library
Quaternion_Calulator.pxy ........ Python command-line tool for quaternion determination
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
README
MANUAL
Documents/ ...................... Applicable dokuments for the HFS
Dependencies:
......@@ -56,4 +58,4 @@ Run Quaternion_Calulator:
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