WSF 1.6.7 - 30 Aug 2010¶
General¶
IMPORTANT NOTE: In the NEXT release AFTER this release the new guided movers and guidance computer will become the default definitions:
WSF_GUIDANCE_COMPUTER and WSF_NEW_GUIDANCE_COMPUTER will refer to the new implementation currently available as WSF_NEW_GUIDANCE_COMPUTER.
WSF_GUIDED_MOVER and WSF_NEW_GUIDED_MOVER will refer to the new implementation currently available as WSF_NEW_GUIDED_MOVER.
WSF_UNGUIDED_MOVER and WSF_NEW_UNGUIDED_MOVER will refer to the new implementation currently available as WSF_NEW_UNGUIDED_MOVER.
The old models will continue to be available as WSF_OLD_GUIDANCE_COMPUTER, WSF_OLD_GUIDED_MOVER and WSF_OLD_UNGUIDED_MOVER.
Corrections¶
(CR 6790) Allow file names and path names to be quoted so they can contain embedded blanks.
(CR 7734) Fixed a bug where the script ‘Set’ container would fail with the list constructor (i.e. Set<string> s = { “1”, “2” };).
(CR 7782) The radar detection threshold and integration gain was being computed incorrectly if a Marcum-Swerling detector was employed. Because of the implementation is was primarily an issue for those radars that also employed ‘one_m2_detect_range’. Radars that provided another means to determine receiver noise power were only minimally affected.
(CR 7792) The Spectral Optical Sensor Model (SOSM) was incorrectly selecting the first state defined in the target_model rather than the last one if no state matched the target conditions at the time of the detection attempt. The documentation was also improved to more clearly define which state will be selected.
(CR 7917) A few colons were missing from the EM interaction data being printed out in an event output file. This was causing problems when parsing the file by relying on the colons to separate the values and their corresponding tags.
(CR 7922) Fixed a problem with the script methods MATH.AngleIsBetween and MATH.AngleWithinTolerence. Both methods expected angles in radians not degrees. This is inconsistent with other script functions.
(CR 7938) Fixed an issue with the WSF_AGILITY_EFFECT not properly changing frequencies and modes. The WSF_AGILITY_EFFECT now schedules frequency and mode changes for the sensors to execute at a specified time, or the next simulation frame if immediate. The scheduling of frequency and mode changes allow for the current interaction results to carry out with the current states and simplifies the logic required in the interaction when a change occurs mid-way through an interaction calculation.
(CR 7961) The SetCurrentTarget method assumed a local track as input and did not handle sensor track input correctly.
(CR 7970) Fixed a bug with how data was being packed into the 32-bit parameter type field. This field is part of the articulated part record, which is part of the entity state pdu.
(CR 7982) Fixed a bug where FileIO was unable to read multiple files in a row on Windows.
Fixed an issue when false target jamming each beam of a multi-beam beam radar with diverse frequencies. Each beam was not getting false target blips properly due to software name mismatches within the code.
Fixed a bug where the aux_data input inside sensor blocks was sometimes being applied to a receiver instead of the sensor.
(CR 8017) Corrected a problem where the SUPPRESSOR-compatibility script method WsfPlatform.RelativeOffsetOf of WsfPlatform was returning incorrect values. This problem was causing several anomalies that were being observed in the classified scenarios that had been converted from SUPPRESSOR.
(CR 8026) Corrected an issue where the false_target_screener would block the first real target track from being created within the sensors tracker without any false targets present. Issue was that the screener was not properly setup for the first track when a screener was attached.
Fixed some minor bugs related to using deferred_connection_time with WsfDraw or record.
Removed the source of several memory leaks. Major leaks were corrected in the write_str method, the MATH.LatToString and MATH.LonToString methods, and the routing methods within WsfRouteNetwork. Other leaks were corrected in capabilities that were infrequently used.
(CR 8192) Add raw-dted as an alias to raw_dted in the terrain block for compatibility with CME ‘geodata’ commands.
(CR 8197) Updated WSF_TRACK_PROCESSOR to include two new report_methods which provide SUPPRESSOR-like track reporting. These help to eliminate problems associated with the bi-directional reporting of fused tracks.
(CR 8234) Corrected two problems hen using latitude/longitude limits with sensor_plot horizontal_map,
The column headers for gnuplot_file indicated columns 1 and 2 were down-range and cross-range when they should have read latitude and longitude.
pd_map_file wasn’t producing lat/lon values for the independent variables.
Enhancements¶
(CR 7701) Relocated the frequency_channels, frequency_list and alternate_frequency from WSF_RADAR_SENSOR to the transmitter to allow scenario file inputs to override type definition and sensor input commands for frequency setups and selections.
(CR 7702) Added the capability electronic_protect techniques to mitigate electronic_attack techniques by user selectable class names via the electronic_attack mitigation_class_name and electronic_protect mitigated_technique_classes input commands.
Renamed the electronic_protect WSF_RADAR_AGILITY_EFFECT to WSF_AGILITY_EFFECT.
Added the ability for comm devices to change frequencies via the WSF_AGILITY_EFFECT. This agility can be setup by defining frequency_channels, frequency_list or alternate_frequency coupled with the jamming_perception_threshold and frequency_select_delay and defining an electronic_protect technique with the WSF_AGILITY_EFFECT and frequency_changing as the agility_type
(CR 7734) Added the ability dynamically set a scaling factor to be applied to a platform signature. This allows off-design signatures to be created on a per-platform basis by simple scaling. The scaling factors can be communicated to WSF over dis_interface via articulated parts.
Added the capability to represent a “vegetation layer” as part of the terrain elevation data. This layer is used to provide information about any vegetation (trees, shrubs, etc) above the standard “bare earth” terrain layer. Currently only the float_grid format can be used to specify a vegetation layer. These new inputs are float_grid_vegetation and float_grid_vegetation_file. The standard bare earth terrain layer must also be specified (float_grid or float_grid_file).
Added WsfZone script class for accessing Zone Definitions and Zone Sets defined on a platform.
Modified the maximum_time_of_flight in WSF_WEAPON_FUSE to allow the specification to come from the launch computer.
(CR 7802) Added the ability to model repeater jammer type weapons to the WSF_RF_JAMMER via the repeater … end_repeater input block with jammer mode. Current functionality is limited and will become more complex to meet user needs as time progresses and it is utilized.
(CR 7841) Added the MaskedByTerrain script method to WsfPlatform.
(CR 7921) Added in the event_output messages COMM_FREQUENCY_CHANGED and SENSOR_FREQUENCY_CHANGED to produce a message reflecting frequency changes on comm and sensor devices during the simulation.
Added the ability to redefine zone s and zone_set s at either the global or platform level. Associated with this, the binding of use_zone and use_exclude_zone in zone_set and use_zone in platform was changed so it binds to the referenced zone when it is first used in the simulation rather than when it appears in the input stream.
Added script methods to some existing classes:
Added documentation for previously undocumented script class: QuadTree
Added script classes Signal and Method which implements the ‘Signals and Slots’ language construct.
Added the flush_output command to event_output.
Added WSF_AIR_TO_AIR_LAUNCH_COMPUTER, which is recommended over the previous (but still available) WSF_ATA_LAUNCH_COMPUTER implementation.
Weapons that use deferred launching (eg. CSIMS) now correctly report their spatial domain.
Added Auxiliary methods for storing objects - AuxDataObject(), SetAuxData(string, Object)
(CR 7954) Added the ability for a comm radio device to attempt to retransmit each message up to retransmit_attempts number of times if previous transmission attempts were unsuccessful. A delay of retransmit_delay will occur between each message retransmit attempt. In addition, added the ability for the message transfer rate of the radio message to depend upon the current transmitter/receiver signal-to-noise-ratio by specifying a SNR->transfer-rate mapping table (snr_transfer_rate_table). In addition, added the ability to specify an onboard comm device that the originally-ordered comm device can order to attempt message transmission (using the command retransmit_link) if the originally-ordered comm device was unable to successfully complete message transmission.
Added WSF_EXOATMOSPHERIC_LETHALITY, which determines weapon Pk from tables of terminal impact velocity and impact angle. Intended to be used in hit-to-kill assessments.
(CR 7891) Added ranging_time to SOSM sensor.
(CR 8010) Modified TDOA algorithm for 3-platform solution and added ground_target_altitude_error attribute.
(CR 8023) Added range, azimuth, elevation, and velocity errors to WSF_TRACK_EFFECT and the ability to walk-off these errors at a linear rate.
Method objects can now be used as callbacks on waypoints using WsfWaypoint.SetCallback or WsfRoute.AddCallbackToLastWaypoint.
Added a lot of content to the behavior_tree page and the WSF_RIPR_PROCESSOR page.
Added the altitude_offset option. The primary benefit to using this option is that lines-of-sight calculations for ground targets are accurate, even when no altitude is specified in the routes themselves.
(CR 8145) Added in the capability to multi-thread platform and sensor updates in event-stepped and frame-stepped simulation executives. See Simulation Control Commands for more information.
Added the switch_sides command to the ATG_LAR_AND_LC_GENERATOR to show the weapon generation lars on the left side of the launching platform.