SynCOM: Procedures for Simulating Transient Solar Wind Flows in High Resolution
Creators
Contributors
Research group:
Sponsor:
Supervisors:
Description
SynCOM IDL Procedures
Welcome to the SynCOM IDL procedures repository! This set of procedures allows users to generate high-resolution simulations of transient solar wind flows. Below, you'll find an explanation of the key functions and how to use them.
1. SYNCOM_PRAMS
This procedure initializes and sets up the model parameters necessary for generating SynCOM solar wind images. It creates a structure containing all the essential inputs required by subsequent procedures.
Usage:
SYNCOM_PRAMS, ModPramsStruct, SYNCOM_N_BLOBS=5000.
Parameters:
ModPramsStruct
: A structure that stores model parameters, such as the grid size, number of blobs, and other physical properties.
SYNCOM_N_BLOBS
: (Optional) Specifies the number of blobs (solar wind features) to simulate. Default is 1000.
2. SYNCOMLOAD
This procedure loads the blob data into arrays and prepares the necessary structures based on the model parameters. It also applies pre-calculated velocity profiles and random assignments for blob positions and sizes.
Usage:
SYNCOMLOAD, ModPramsStruct, LoadStruc
Parameters:
ModPramsStruct
: The structure with input parameters (e.g., grid size, blob count) generated by SYNCOM_PRAMS
.
LoadStruc
: A structure that stores arrays such as positions, velocities, and periods, facilitating faster generation of images.
3. SYNCOM_CORE
This procedure generates the synthetic images based on the parameters and structures provided. It simulates the outward propagation of solar wind blobs over time and produces a sequence of images representing transient solar wind behavior.
Usage:
SYNCOM_CORE, N_BLOBS=N_BLOBS, syncom_data, time_t=time_t, time0=time0, syncom_version=syncom_version, scale_factor=scale_factor, /simple
Parameters:
N_BLOBS
: The number of blobs to simulate in the image sequence.
syncom_data
: A 3D array to store the generated synthetic solar wind images over time.
time_t
: The final time (in frames) for the image sequence.
time0
: The initial time (in frames) for the image sequence.
syncom_version
: (Optional) The version label for the SynCOM model, used as a prefix for output files.
scale_factor
: (Optional) A scaling factor for adjusting blob sizes. Default is 1.
simple
: (Optional) A keyword to control whether a sinusoidal velocity profile is applied to the blobs.
4. SYNCOMIMAGE
This procedure generates a single synthetic image of the solar wind at a specific time step. It computes the positions and velocities of the blobs, then generates Gaussian "blobs" representing solar wind features.
Usage:
SYNCOMIMAGE, ModPramsStruct, syncom_version, time_0, radial_i, v_array, period_array, L_array, PSI, time_t, img
Parameters:
ModPramsStruct
: The structure containing model parameters such as grid size and number of blobs.
syncom_version
: The version of the SynCOM model.
time_0
: Initial time offset for blob appearance.
radial_i
: Array of initial radial positions of blobs.
v_array
: Array of blob velocities (pixels per frame).
period_array
: Array of reappearance periods for blobs.
L_array
: Array of blob sizes.
PSI
: Array of polar angles for each blob.
time_t
: The current time step for which the image is generated.
img
: A 2D array representing the generated synthetic solar wind image.
5. SYNCOMNOISE
This procedure adds random noise and brightness variations to a synthetic image. It simulates observational noise and adjusts the image brightness according to pre-defined intensity profiles.
Usage:
SYNCOMNOISE, ModPramsStruct, img, new_img, rect_img, file_name, /rectangular, /noise_add, /luminosity_add
Parameters:
ModPramsStruct
: The structure containing model parameters such as noise level and grid size.
img
: The input synthetic image.
new_img
: The output image with added noise and brightness adjustments.
/noise_add
: (Optional) Adds random noise to the image.
/luminosity_add
: (Optional) Adjusts the image brightness according to the input profiles.
file_name
: (Optional) The path to a file containing intensity profiles for brightness adjustment.
rect_img
: (Optional) The output image in rectangular coordinates, if the /rectangular keyword is set.
/rectangular
: (Optional) Converts the polar image to rectangular coordinates.
Example Workflow:
To generate a set of synthetic solar wind images and enhance them with noise and brightness adjustments:
1. Generate Synthetic Images Using SYNCOM_CORE
:
SYNCOM_CORE
is capable of handling the initialization of parameters and loading of structures internally. You only need to provide the number of blobs, the time frame, and optional parameters such as version and scale factor.
SYNCOM_CORE, N_BLOBS=5000, syncom_data, time_t=100, time0=0, syncom_version="example", scale_factor=2
This step will create a set of synthetic solar wind images, saving them with the prefix "example". The 3D array syncom_data
will store simulated images and parameters, such as ModPramsStruct
and LoadStruc
.
2. Enhance the Simulated Images Using SYNCOMNOISE
:
After the synthetic images are generated, you can use SYNCOMNOISE
to add noise and simulate brightness behavior based on intensity profiles. This step helps mimic the observational conditions and enhances the visual quality of the images.
SYNCOMNOISE, ModPramsStruct, syncom_data, new_img, /luminosity_add
The enhanced image is stored in new_img
with added brightness adjustments, because /luminosity_add
was set.
NOTES:
New version includes:
- Revised comments for all procedures and functions
- Velocity profile included separately file: "STEREO_analysis.sav"
- Intensity profile included separately file: "STEREO_statistics.sav"
Contact
For any questions or further assistance, please feel free to open an issue or contact us directly.
Files
SynCOM videos.zip
Files
(73.5 MB)
Name | Size | Download all |
---|---|---|
md5:165b5f1069800282c6ac90ee315e80bf
|
43.0 MB | Preview Download |
md5:f43e55cbe1575149c9b72514ae1a674f
|
30.5 MB | Preview Download |
Additional details
Related works
- Is cited by
- Preprint: 10.48550/arXiv.2407.09383 (DOI)
- Is supplement to
- Software: https://github.com/valmirmoraes/SynCOM.git (URL)
Software
- Repository URL
- https://github.com/valmirmoraes/SynCOM.git
- Programming language
- IDL
- Development Status
- Active