Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
csst-sims
csst_msc_sim
Commits
0ca58f1d
Commit
0ca58f1d
authored
May 25, 2022
by
Fang Yuedong
Browse files
add options to switch off difference in bias/gain of 16 channels
parent
5a850797
Changes
3
Hide whitespace changes
Inline
Side-by-side
ObservationSim/Instrument/Chip/Chip.py
View file @
0ca58f1d
...
...
@@ -440,11 +440,14 @@ class Chip(FocalPlane):
self
.
logger
.
info
(
" Adding Bias level and 16-channel non-uniformity"
)
else
:
print
(
" Adding Bias level and 16-channel non-uniformity"
)
img
=
effects
.
AddBiasNonUniform16
(
img
,
bias_level
=
float
(
config
[
"ins_effects"
][
"bias_level"
]),
nsecy
=
2
,
nsecx
=
8
,
seed
=
SeedBiasNonuni
+
self
.
chipID
,
logger
=
self
.
logger
)
if
config
[
"ins_effects"
][
"bias_16channel"
]
==
True
:
img
=
effects
.
AddBiasNonUniform16
(
img
,
bias_level
=
float
(
config
[
"ins_effects"
][
"bias_level"
]),
nsecy
=
2
,
nsecx
=
8
,
seed
=
SeedBiasNonuni
+
self
.
chipID
,
logger
=
self
.
logger
)
elif
config
[
"ins_effects"
][
"bias_16channel"
]
==
False
:
img
+=
self
.
bias_level
# Apply Nonlinearity on the chip image
if
config
[
"ins_effects"
][
"non_linear"
]
==
True
:
...
...
@@ -477,17 +480,20 @@ class Chip(FocalPlane):
readout_noise
=
galsim
.
GaussianNoise
(
rng
=
rng_readout
,
sigma
=
self
.
read_noise
)
img
.
addNoise
(
readout_noise
)
# Apply Gain & Quantization
if
self
.
logger
is
not
None
:
self
.
logger
.
info
(
" Applying Gain (and 16 channel non-uniformity) & Quantization"
)
else
:
print
(
" Applying Gain (and 16 channel non-uniformity) & Quantization"
,
flush
=
True
)
img
=
effects
.
ApplyGainNonUniform16
(
img
,
gain
=
self
.
gain
,
nsecy
=
2
,
nsecx
=
8
,
seed
=
SeedGainNonuni
+
self
.
chipID
,
logger
=
self
.
logger
)
if
config
[
"ins_effects"
][
"gain_16channel"
]
==
True
:
img
=
effects
.
ApplyGainNonUniform16
(
img
,
gain
=
self
.
gain
,
nsecy
=
2
,
nsecx
=
8
,
seed
=
SeedGainNonuni
+
self
.
chipID
,
logger
=
self
.
logger
)
elif
config
[
"ins_effects"
][
"gain_16channel"
]
==
False
:
img
/=
self
.
gain
img
.
array
[
img
.
array
>
65535
]
=
65535
img
.
replaceNegative
(
replace_value
=
0
)
img
.
quantize
()
...
...
config/config_NGP_dev.yaml
0 → 100644
View file @
0ca58f1d
---
###############################################
#
# Configuration file for CSST simulation
# CSST-Sim Group, 2021/10/07, version 0.3
#
###############################################
# Base diretories and naming setup
# Can add some of the command-line arguments here as well;
# OK to pass either way or both, as long as they are consistent
# work_dir: "/public/home/fangyuedong/sim_code_release/CSST/test/"
work_dir
:
"
/public/home/fangyuedong/test/CSST/workplace/"
data_dir
:
"
/data/simudata/CSSOSDataProductsSims/data/"
run_name
:
"
TEST_16channel_off"
# (Optional) a file of point list
# if you just want to run default pointing:
# - pointing_dir: null
# - pointing_file: null
pointing_dir
:
"
/data/simudata/CSSOSDataProductsSims/data/"
pointing_file
:
"
pointing_test_NGP_2.17.dat"
# Whether to use MPI
run_option
:
use_mpi
:
YES
# NOTE: "n_threads" paramters is currently not used in the backend
# simulation codes. It should be implemented later in the web frontend
# in order to config the number of threads to request from NAOC cluster
n_threads
:
80
# Output catalog only?
# If yes, no imaging simulation will run
out_cat_only
:
NO
# Only simulate stars?
star_only
:
NO
# Only simulate galaxies?
galaxy_only
:
NO
###############################################
# Observation setting
###############################################
obs_setting
:
# Options for survey types:
# "Photometric": simulate photometric chips only
# "Spectroscopic": simulate slitless spectroscopic chips only
# "All": simulate full focal plane
survey_type
:
"
All"
# Exposure time [seconds]
exp_time
:
150.
# Observation starting date & time
# (Subject to change)
date_obs
:
"
210525"
# [yymmdd]
time_obs
:
"
120000"
# [hhmmss]
# Default Pointing [degrees]
# Note: NOT valid when a pointing list file is specified
ra_center
:
192.8595
dec_center
:
27.1283
# Image rotation [degree]
image_rot
:
-113.4333
# Number of calibration pointings
np_cal
:
0
# Run specific pointing(s):
# - give a list of indexes of pointings: [ip_1, ip_2...]
# - run all pointings: null
# Note: only valid when a pointing list is specified
run_pointings
:
[
0
]
# Run specific chip(s):
# - give a list of indexes of chips: [ip_1, ip_2...]
# - run all chips: null
# Note: for all pointings
run_chips
:
[
24
]
# Whether to enable astrometric modeling
# astrometric_lib: "libshao.so"
enable_astrometric_model
:
True
# Cut by saturation/limiting magnitude in which band?
cut_in_band
:
"
g"
###############################################
# Input path setting
###############################################
# Default path settings for WIDE survey simulation
input_path
:
cat_dir
:
"
OnOrbitCalibration/CTargets20211231"
star_cat
:
"
CT-NGP_r1.8_G28.hdf5"
galaxy_cat
:
"
galaxyCats_r_3.0_healpix_shift_192.859500_27.128300.hdf5"
SED_templates_path
:
star_SED
:
"
Catalog_20210126/SpecLib.hdf5"
galaxy_SED
:
"
Templates/Galaxy/"
###############################################
# PSF setting
###############################################
psf_setting
:
# Which PSF model to use:
# "Gauss": simple gaussian profile
# "Interp": Interpolated PSF from sampled ray-tracing data
psf_model
:
"
Interp"
# PSF size [arcseconds]
# radius of 80% energy encircled
# NOTE: only valid for "Gauss" PSF
psf_rcont
:
0.15
# path to PSF data
# NOTE: only valid for "Interp" PSF
psf_dir
:
"
/data/simudata/CSSOSDataProductsSims/data/csstPSFdata/psfCube"
# path to field-distortion model
# Note: only valid when ins_effects: field_dist is "ON"
fd_path
:
"
FieldDistModelGlobal_v1.0.pickle"
# sigma_spin: 0.0 # psf spin?
###############################################
# Shear setting
###############################################
shear_setting
:
# Options to generate mock shear field:
# "constant": all galaxies are assigned a constant reduced shear
# "catalog": from catalog (not available yet)
# "extra": from seprate file
shear_type
:
"
constant"
# For constant shear filed
reduced_g1
:
0.026
reduced_g2
:
0.015
# Representation of the shear vector?
reShear
:
"
E"
# rotate galaxy ellipticity
rotateEll
:
0.
# [degree]
# Extra shear catalog
# (currently not used)
# shear_cat: "mockShear.cat"
###############################################
# Instrumental effects setting
###############################################
ins_effects
:
# switches
field_dist
:
ON
# Whether to add field distortions
add_back
:
ON
# Whether to add sky background
add_dark
:
ON
# Whether to add dark noise
add_readout
:
ON
# Whether to add read-out (Gaussian) noise
add_bias
:
ON
# Whether to add bias-level to images
bias_16channel
:
ON
# Whether to add different biases for 16 channels
gain_16channel
:
ON
# Whether to make different gains for 16 channels
shutter_effect
:
ON
# Whether to add shutter effect
flat_fielding
:
ON
# Whether to add flat-fielding effect
prnu_effect
:
ON
# Whether to add PRNU effect
non_linear
:
ON
# Whether to add non-linearity
cosmic_ray
:
ON
# Whether to add cosmic-ray
cray_differ
:
ON
# Whether to generate different cosmic ray maps CAL and MS output
cte_trail
:
ON
# Whether to simulate CTE trails
saturbloom
:
ON
# Whether to simulate Saturation & Blooming
add_badcolumns
:
ON
# Whether to add bad columns
add_hotpixels
:
ON
# Whether to add hot pixels
add_deadpixels
:
ON
# Whether to add dead(dark) pixels
bright_fatter
:
ON
# Whether to simulate Brighter-Fatter (also diffusion) effect
# values
dark_exptime
:
300
# Exposure time for dark current frames [seconds]
flat_exptime
:
150
# Exposure time for flat-fielding frames [seconds]
readout_time
:
40
# The read-out time for each channel [seconds]
df_strength
:
2.3
# Sillicon sensor diffusion strength
bias_level
:
500
# bias level [e-/pixel]
gain
:
1.1
# Gain
full_well
:
90000
# Full well depth [e-]
NBias
:
1
# Number of bias frames to be exported for each exposure
NDark
:
1
# Number of dark frames to be exported for each exposure
NFlat
:
1
# Number of flat frames to be exported for each exposure
###############################################
# Output options
###############################################
output_setting
:
readout16
:
OFF
# Whether to export as 16 channels (subimages) with pre- and over-scan
shutter_output
:
OFF
# Whether to export shutter effect 16-bit image
bias_output
:
ON
# Whether to export bias frames
dark_output
:
ON
# Whether to export the combined dark current files
flat_output
:
ON
# Whether to export the combined flat-fielding files
prnu_output
:
OFF
# Whether to export the PRNU (pixel-to-pixel flat-fielding) files
###############################################
# Random seeds
###############################################
random_seeds
:
seed_Av
:
121212
# Seed for generating random intrinsic extinction
seed_poisson
:
20210601
# Seed for Poisson noise
seed_CR
:
20210317
# Seed for generating random cosmic ray maps
seed_flat
:
20210101
# Seed for generating random flat fields
seed_prnu
:
20210102
# Seed for photo-response non-uniformity
seed_gainNonUniform
:
20210202
# Seed for gain nonuniformity
seed_biasNonUniform
:
20210203
# Seed for bias nonuniformity
seed_rnNonUniform
:
20210204
# Seed for readout-noise nonuniformity
seed_badcolumns
:
20240309
# Seed for bad columns
seed_defective
:
20210304
# Seed for defective (bad) pixels
seed_readout
:
20210601
# Seed for read-out gaussian noise
...
\ No newline at end of file
run_sim.py
View file @
0ca58f1d
...
...
@@ -40,6 +40,12 @@ def run_sim(Catalog):
if
args
.
work_dir
is
not
None
:
config
[
'work_dir'
]
=
args
.
work_dir
# Some default values
if
"bias_16channel"
not
in
config
:
config
[
"bias_16channel"
]
=
False
if
"gain_16channel"
not
in
config
:
config
[
"gain_16channel"
]
=
False
# Generate lists pointings based on the input pointing list (or default
# pointing RA, DEC) and "config["obs_setting"]["run_pointings"]".
# "config['obs_setting']['np_cal']"" is the number of CAL pointings which will be
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment