tag:,2005:/matlabcentral/fileexchange/feed MATLAB Central File Exchange icon.png logo.png MATLAB Central - File Exchange User-contributed code library 2023-04-26T06:08:10+00:00 46039 1 60 128529 2023-04-26T05:57:43Z 2023-04-26T05:57:43Z Inverse Kinematics of SCARA Robot These files implement Multibody Model of a SCARA robot and its Inverse Kinematics through Robotics System Toolbox.

The Start file loads the SCARA Multibody Model in form of a Rigid Body Tree. This Rigid Body Tree is used by the Robotics System Toolbox for calculation of Inverse Kinematics and Forward Kinematics. The IK_SCARA Simulink file generates a pick and plance trajectory in workspace of the SCAR robot and give that trajectory to the Inverse Kinematics Block. The Inverse Kinematics block converts the workspace trajectory into a Joint space trajectory and give it to the robot model. The robot moves on the provided trajectory. The joint position sensors measure the joint angles and provide those to the Forward Kinematics block. The joint angles are then converted to the end-effector workspace positions. These positions are compared with the generated trajectory from the trajectory generator to establish the movement accuracy.The video on the whole process is available at https://youtu.be/9746YIQpo5I

Rzi Abbas /matlabcentral/profile/2704181-rzi-abbas
104535 2023-04-26T03:27:29Z 2023-04-26T03:27:29Z A Joint Opposite Selection (JOS) on opposition optimization JOS in optimization : A well-match joint of Selective Leading Opposition (SLO) and Dynamic Opposite (DO) for optimization.

Related Paper:Joint Opposite Selection (JOS): A premiere joint of selective leading opposition and dynamic opposite enhanced Harris’ hawks optimization for solving single-objective problems Available at https://doi.org/10.1016/j.eswa.2021.116001 (https://www.sciencedirect.com/science/article/pii/S095741742101349X).Cite As :Arini, F. Y., Chiewchanwattana, S., Soomlek, C., & Sunat, K. (2022). Joint Opposite Selection (JOS): A premiere joint of selective leading opposition and dynamic opposite enhanced Harris’ hawks optimization for solving single-objective problems. Expert Systems with Applications, 188. https://doi.org/10.1016/j.eswa.2021.116001Our journal above can be download in https://github.com/FlorentinaJOS/JOS_in_OptimizationThe other proposed algorithms (GWO-JOS, MFO-JOS, SOA-JOS, and WOA-JOS) still on submission process.Noted: The code set on CEC 2017 (Download:https://github.com/FlorentinaJOS/JOS_in_Optimization).We also include another competition package on CEC 2014. For the use of CEC 2014, only change the name of 'cec17_func' to 'cec14_func'.

Florentina Yuni Arini /matlabcentral/profile/15960480-florentina-yuni-arini
128474 2023-04-26T01:20:52Z 2023-04-26T01:20:52Z cobaltyang my first package

__ __ ___ ___ ______ __ ___ __ __ /\ \/\ \ /\_ \ /\_ \ /\__ _\ /\ \ /\_ \ /\ \__ /\ \ \ \ \_\ \ __\//\ \ \//\ \ ___ \/_/\ \/ __ ___ ___ ___ ___\ \ \____ __ \//\ \ \ \ ,_\ __ __ __ ___ __ \ \ \ \ \ _ \ /'__`\\ \ \ \ \ \ / __`\ \ \ \ /'__`\ /' __` __`\ /'___\ / __`\ \ '__`\ /'__`\ \ \ \ \ \ \/ /\ \/\ \ /'__`\ /' _ `\ /'_ `\ \ \ \ \ \ \ \ \/\ __/ \_\ \_ \_\ \_/\ \L\ \ __ \_\ \__ /\ \L\.\_/\ \/\ \/\ \ /\ \__//\ \L\ \ \ \L\ \/\ \L\.\_ \_\ \_\ \ \_ \ \ \_\ \/\ \L\.\_/\ \/\ \/\ \L\ \ \ \_\ \ \_\ \_\ \____\/\____\/\____\ \____/ /\ \ /\_____\ \ \__/.\_\ \_\ \_\ \_\ \ \____\ \____/\ \_,__/\ \__/.\_\/\____\\ \__\ \/`____ \ \__/.\_\ \_\ \_\ \____ \ \/\_\ \/_/\/_/\/____/\/____/\/____/\/___/ \ \/ \/_____/ \/__/\/_/\/_/\/_/\/_/ \/____/\/___/ \/___/ \/__/\/_/\/____/ \/__/ `/___/> \/__/\/_/\/_/\/_/\/___L\ \ \/_/ \/ /\___/ /\____/ \/__/ \_/__/ 😋 About me🔭 I’m an individual developer.🌱 I’m currently learning ML and DL.❓ Ask me about anything related to Matlab and Python.⚡ Fun fact: I love playing naraka bladepoint😎 📚 My Skill SetsTools ML&DL DevOps 🏆 My Trophy📱 Connect with me 📊 Github Stats 💻 StackOverflow Activity"Feed action request limit reached" - Facebook SDKCan not upload images to face bookOAuthException when posting to FaceBook wall using PHP?Rewrite rule in htaccess is not working properlyhtaccess is not properly working 🎧 I'm Listening No activity tracked

Sure /matlabcentral/profile/11801964-sure
74044 2023-04-26T01:16:52Z 2023-04-26T01:16:52Z Emitter Detection and Geolocation for Electronic Warfare MATLAB code companion to Emitter Detection and Geolocation for Electronic Warfare (Artech House, 2019)

This repository contains the MATLAB code, released under the MIT License, that generates all of the figures and implements all of the algorithms and many of the performance calculations within the text Emitter Detection and Geolocation for Electronic Warfare, by Nicholas A. O'Donoughue, Artech House, 2019.The textbook can be purchased from Artech House (https://us.artechhouse.com/Emitter-Detection-and-Geolocation-for-Electronic-Warfare-P2052.aspx).

Nicholas O'Donoughue /matlabcentral/profile/11474226-nicholas-o-donoughue
55891 2023-04-25T23:37:05Z 2023-04-25T23:37:05Z FieldTrip The MATLAB software toolbox for MEG and EEG analysis

FieldTrip is the MATLAB software toolbox for MEG and EEG analysis that is being developed by a team of researchers at the Donders Institute for Brain, Cognition and Behaviour in Nijmegen, the Netherlands in close collaboration with collaborating institutes.FieldTrip offers advanced analysis methods of MEG, EEG, and invasive electrophysiological data, such as time-frequency analysis, source reconstruction using dipoles, distributed sources and beamformers and non-parametric statistical testing. It supports the data formats of all major MEG systems (CTF, Elekta/Neuromag, 4D, Yokogawa) and of most popular EEG systems, and new formats can be added easily. FieldTrip contains high-level functions that you can use to construct your own analysis protocols in MATLAB. Furthermore, it easily allows developers to incorporate low-level algorithms for new EEG/MEG analysis methods.Furthermore, it offers a frequently updated website [1] with tutorials, example data and other documentation. There is an active community centered around the email discussion list [2].FieldTrip is the mostly used software for MEG data analysis and developed in close collaboration with related open source projects, such as EEGLAB, SPM, BrainStorm and MNE.Please cite the FieldTrip reference paper [3] when you have used FieldTrip for data analysis in your study.[1] http://www.fieldtriptoolbox.org[1] http://www.fieldtriptoolbox.org/discussion_list[2] http://dx.doi.org/10.1155/2011/156869

Robert Oostenveld /matlabcentral/profile/868672-robert-oostenveld
128524 2023-04-25T22:59:25Z 2023-04-25T22:59:25Z Representação de sistemas por espaço de estados Circuito RLC

Engenharia de Energia

Matheus /matlabcentral/profile/29976421-matheus
70338 2023-04-25T21:41:15Z 2023-04-25T21:41:15Z Climate Data Toolbox for MATLAB A set of low-level functions and tutorials for analyzing and displaying Earth science data.

This toolbox contains a standard set of MATLAB functions for analyzing and displaying climate data. The functions are computationally efficient, easy to use, and come with many tutorials that describe not only how to use CDT functions, but also offer guidance on how to interpret the results in the context of Earth science processes.CDT logo illustration by Adam S. Nelsen (http://www.adamnelsen.com)

Chad Greene /matlabcentral/profile/1062128-chad-greene
128519 2023-04-25T19:49:52Z 2023-04-25T19:49:52Z Vehicle Local Motion Planner for Small Obstacles Mitigation Example motion planner for off-highway vehicles such as construction and mining vehicles to navigate over big and small obstacles.

Vehicle Local Motion Planner for Small Obstacles MitigationDescriptionOff-highway vehicles such as construction and mining vehicles, when driving autonomously, may often encounter unexpected obstacles, big or small. They need to make navigation decisions on the fly to efficiently and safely bypass those obstacles.By leveraging Navigation Toolbox™ and Stateflow® with MATLAB®, you can design a search-based local motion planner to generate a minimal safe trajectory over an obstacle. This planner can handle a variety of cases including:Generating a new trajectory to drive over a small obstacleGenerating a trajectory around the obstacle if it is too largeIncluding reverse motion if the obstacle is detected very close to the vehicleSetupTo Run:download the entire folderopen "SOMDemo.mlx"Follow the script to run the code step by stepUsers are also encouraged to change any parameters in the script to test varations of this demo.bat365 Products Required (http:)Requires MATLAB release R2022b or newer. Before proceeding, ensure that the below products are installed:MATLAB®Simulink®Navigation Toolbox®Stateflow®Authors and acknowledgmentThis demo is created by Seifeldin Dabbour, a bat365 Engineer as part of the Autonomous Construction Vehicle Webinar(/videos/design-and-simulating-autonomy-for-construction-vehicles-1679066541903.html)LicenseThe license is available in the License file within this repositoryInclude any other License information here, including third-party content using separate license agreements

You Wu /matlabcentral/profile/17851420-you-wu
128514 2023-04-25T18:36:53Z 2023-04-25T18:36:53Z LMS Equalization for mmWave QAM Signals This code demonstrates the LMS equalization technique for recovering a transmitted QAM signal passed through a simplified 5G channel.

This code demonstrates the use of the least mean squares (LMS) algorithm to perform equalization in a communication system. The code generates a QAM-modulated signal, applies a channel impulse response, adds noise, and carries out LMS equalization to recover the original signal. Equalization is a technique used to mitigate the effects of inter-symbol interference (ISI) caused by the communication channel. In this case, the LMS algorithm is used to adaptively adjust the coefficients of an equalizer to minimize the mean square error between the transmitted and equalized signals.

Ardavan Rahimian /matlabcentral/profile/16712815-ardavan-rahimian
110190 2023-04-25T18:26:49Z 2023-04-25T18:26:49Z Positive-white-negative colormap with zero in white Create positive-white-negative colormap and colorbar. Customized colormap/colorbar options are available.

[h, cmap] = colorbarpwn(caxis1, caxis2, 'options')COLORBARPWN creates positive-white-negative colormap and colorbar.White is asigned to zero, if while location is not specified.Customized colormap/colorbar options are available for: - automatic/manual positive, white, and negative color. - predefined colors for different combinations of colormap spectrum. - automatic/manual positive, negative, or positive-negative colormap. - automatic/manual white position (at zero or specified). - secondary positive and negative colors assigned to specific values. - reversed default positive and negative colors. - reversed colorbar direction by switching the order of input limits. - number of colormap levels. - LaTeX colorbar label. - log scale colormap with adjustable loginess. - extended white region to display small values in a uniform color. - returning colorbar handle and/or colormap array.-------------------------------------------------------------------------Syntax:colorbarpwn(caxis1, caxis2)colorbarpwn(caxis1, caxis2, 'options')colorbarpwn(target, __)colorbarpwn(__, 'off')h = colorbarpwn(__)[h, cmap] = colorbarpwn(__)cmap = colorbarpwn(__, 'off')-------------------------------------------------------------------------Description:colorbarpwn(caxis1, caxis2): creates automatic colormap and colorbar based on caxis([cmin, cmax]), where cmin = min([caxis1, caxis2]) and cmax = max([caxis1, caxis2]). The colormap has a default style in which zero is in white, positive is in red, and negative is in blue. When caxis1 < caxis2, the colorbar is displayed in 'normal' direction; when caxis1 > caxis2, the colorbar is displayed in 'reversed' direction (see e.g.[3]).'options':(one input/output option can be used independently or with other options)colorbarpwn(__, 'rev'): creates reversed default colormap, where positive is in blue and negative is in red. 'rev' will be overwritten if 'colorP' or 'colorN' is manually specified. See e.g.[6]colorbarpwn(__, 'dft', 'colors'): change defaul colors in the order of positive, zero, negative with predefined colors. 'colors' is an 1 X 3 char variable which is a combination of any 3 characters from 'r' (red), 'b' (blue), 'g' (green), 'p' (purple), 'y' (yellow), 'w' (white), and 'k' (black). E.g., 'rgb', 'ywg', 'bwp', etc. 'dft' will be overwritten if 'colorP', 'colorN', or 'colorW' is manually specified. See e.g.[5].colorbarpwn(__, 'colorP', [R G B]/'color'): customizes positive color with RGB or one of the color code (see 'colors' in the 'dft' option). See e.g.[1].colorbarpwn(__, 'colorN', [R G B]/'color'): customizes negative color with RGB or one of the color code (see 'colors' in the 'dft' option). See e.g.[5].colorbarpwn(__, 'colorW', [R G B]/'color'): customizes white/zero color with RGB or one of the color code (see 'colors' in the 'dft' option). See e.g.[5].colorbarpwn(__, 'colorP2', [R G B]/'color', P2value): adds a secondary color to the positive color spectrum with RGB or one of the predefined color code. The parameter P2value specifies the position of colorP2 on the colorbar where cmin (or Wvalue) < P2value < cmax. P2value is at the middle of [cmin/Wvalue, cmax] if not specified. See e.g.[8].colorbarpwn(__, 'colorN2', [R G B]/'color', N2value): adds a secondary color to the negative color spectrum with RGB or one of the predefined color code. The parameter N2value specifies the position of colorN2 on the colorbar where cmin < N2value < cmax (or Wvalue). N2value is at the middle of [cmin, cmax/Wvalue] if not specified. See e.g.[8].colorbarpwn(__, 'full'): enforces full positive-negative color map with white is at the middle of [cmin, cmax]. See e.g.[5].colorbarpwn(__, 'full', Wvalue): enforces full positive-negative colormap and specifies white position by Wvalue. See e.g.[4].colorbarpwn(__, 'level', Nlevel): customizes the number of colormap levels (see e.g.[1, 5]). An odd integer is preferred. The default Nlevel is 127 if 'level' option is not used.colorbarpwn(__, 'label', 'LaTeXString'): creates a LaTeX colorbar label. See e.g.[3].colorbarpwn(__, 'log'): creates log scale colormap for coarser increment near white (smaller white region) with defualt loginess = 1. (citation [1]).colorbarpwn(__, 'log', loginess): creates log scale colormap and specifies the loginess value to make smaller white region (loginess > 0, see e.g.[3]) or larger white region (loginess < 0, see e.g.[6]).colorbarpwn(__, 'wrs', WhiteRegionSize): define the white color region size as a ratio to the total size of the colorbar/map, so small values are displayed in a uniform color. See e.g.[7]. 0 < WhiteRegionSize < 1.colorbarpwn(__, 'off'): set the colormap without creating a colorbar.colorbarpwn(target, __): sets the colormap for the figure, axes, or chart specified by target, instead of for the current figure and adds a colorbar to the axes or chart specified by target. Specify the target axes or chart as the first argument in any of the previous syntaxes. Similar to the combined use of colormap(target, map) and colorbar(target). See e.g.[3, 4].h = colorbarpwn(__): h returns a colorbar handle. See e.g.[4].[h, cmap] = colorbarpwn(__): h returns a colorbar handle and cmap returns the colormap array. See e.g.[5].cmap = colorbarpwn(__): cmap returns the colormap array only. See e.g.[6].-------------------------------------------------------------------------Examples:[1] colorbarpwn(-1, 2, 'level', 21, 'colorP', [0.6 0.4 0.3]): creates a colormap and a colorbar from -1 to 2 where 0 is in white color with 21 levels on one side and with customized positive color [0.6 0.4 0.3].[2] colorbarpwn(-1, 2, 'dft', 'ywg'): creates a colormap and a colorbar from -1 to 2 where the default positive color is changed to predefined yellow 'y', the default zero color remains white 'w', and the default negative color is changed to predefined green 'g'.[3] colorbarpwn(ax1, 2, 1, 'log', 1.2, 'label', '$\alpha$'): on axis ax1, creates a colormap and a colorbar from 1 to 2 with only positive color where the white color region is shortened by a loginess of 1.2; the colorbar is displayed in reversed direction as 2 > 1; the colorbar label desplays $\alpha$ with LaTeX interpreter.[4] h = colorbarpwn(ax2, 1, 3, 'full', 1.5): on axis ax2, creates a colormap and a colorbar from 1 to 3 with full default positive-negative color spectrum where white color is aligned with the specified Wvalue 1.5 following the 'full' option; h returns the colorbar handle.[5] [h, cmap] = colorbarpwn(-4, -2, 'full', 'colorW', [0.8 0.8 0.8], ... 'colorN', [0.2 0.4 0.3], 'level', 31): creates a colormap and a colorbar from -4 to -2 with full positive-negative color spectrum with 31 levels on each side where white color is customized with [0.8 0.8 0.8] and the negative end of the spectrum is in customized color [0.2 0.4 0.3]; the white color is aligned with the mean of caxis1 and caxis2 -3 on the colorbar as no Wvalue is specifice after 'full' option; h returns the colorbar handle and cmap returns the 31 X 3 colormap array generated.[6] cmap = colorbarpwn(-2, 2, 'log', -1, 'rev', 'off'): returns a 127 X 3 colormap array to cmap whlie disables displaying the colorbar; the colormap is with a reversed defualt color spectrum and the white color region is enlarged by a loginess of -1.[7] colorbarpwn(-1, 2, 'wrs', 0.4): creates a colormap and a colorbar from -1 to 2 with the default positive-negative color spectrum where the values between -0.4 and 0.8 are displayed in White; the red and blue linear color gradients tarts at 0.8 and -0.4 respectively, with a white regein in the middle.[8] colorbarpwn(-1, 2, 'colorP2', 'g', 1.5, 'colorN2', [0.3 0.4 0.2]): creates a colormap and a colorbar from -1 to 2 with the default positive-negative color spectrum and adds a secondary positive color with predefined green 'g' aligned with the value 1.5 and a secondary negative color with RGB [0.3 0.4 0.2] at the middle of [-1 0] as the N2value parameter is not specified.=========================================================================version 1.7.1 - Fixed a bug in v1.7.0 where using [R G B] and P2value/N2value together in 'colorP2' or 'colorN2' can cause a fault error.Xiaowei He04/25/2023% -------------------------------------------------------------------------version 1.7.0 - Added options 'colorP2' and 'colorN2' for secondary colors in the positive and negative color spectra, respectively. - Predefined colors can now be used for 'colorP', 'colorN', 'colorW', as well as the new 'colorP2' and 'colorN2' options. - Removed the warning messages when overwritting 'dft' colors with 'colorP', 'colorN', and 'colorW'.Xiaowei He04/25/2023-------------------------------------------------------------------------version 1.6.1 - Fixed a bug in v1.6.0 where the white color is not at zero when using default cmin and cmax settings.Xiaowei He09/01/2022-------------------------------------------------------------------------version 1.6.0 - Added an option 'wrs' for extending the White color region so small values are displayed in the White color and the color gradient does not start until a threshold. See description of colormap(__, 'wrs', WhiteRegionSize). - Adjusted the default red and blue color. - Fixed a bug where an even number level cannot be generated, although an odd Nlevel value is preferred for acurate Zero value positioning. - 'off' potion can now be used without an output argument.Xiaowei He08/25/2022-------------------------------------------------------------------------version 1.5.0 - Added several predefined low-saturation colors and an input argument 'dft' which allows for changing the default red-white-blue colormap with combinations of these predefined colors. See description of colormap(__, 'dft', 'colors') for details. - Fixed a bug that causes errors when the colorbar label string is the same as one of the input arguments.Xiaowei He05/28/2022-------------------------------------------------------------------------version 1.4.0 - Added support for reversed colorbar direction by switching cmin and cmax order, so the input limits became colorbarpwn(caxis1, caxis2). E.g., colorbarpwn(2, -1) displays a -1 to 2 colorbar in reversed direction, which is equivalent to cb.Direction = 'rev'. - Removal of the caxis1 < caxis2 rule accordingly. - Fixed a bug that causes an error when using 0 or 1 as the first caxis limit, i.e., colorbarpwn(0, caxis2) or colorbarpwn(1, caixs2). - Updates in headline description and examples.Xiaowei He05/23/2022-------------------------------------------------------------------------version 1.3.0 - Added support for setting colormap and displaying colorbar on specific target, e.g., colorbarpwn(ax, cmin, cmax). - Updates and corrections in headline description and examples.Xiaowei He05/07/2022-------------------------------------------------------------------------version 1.2.0 - Changed the function name from >>colorbarPWN to >>colorbarpwn for friendlier user experience. - Added an option 'off' which disables creatting the colorbar and only returns the colormap array. - Updates in headline description including a few examples.Xiaowei He04/27/2022-------------------------------------------------------------------------version 1.1.1 - Minor code improvement. - Updates in headline descriptions.Xiaowei He04/21/2022-------------------------------------------------------------------------version 1.1.0 - Added an output argument for the colormap array. - Added an input argument 'rev' for reversed default Positive and Negative colors, where Positive is in blue and Negative is in red. - Improved some logical structures. - Updated some descriptions in the headlines.Xiaowei He04/15/2022-------------------------------------------------------------------------version 1.0.1 - Fixed a bug when output coloarbar handle.Xiaowei He04/07/2022-------------------------------------------------------------------------version 1.0.0Xiaowei He03/30/2022=========================================================================citation [1]Connor Ott (2017). Non-linearly Spaced Vector Generatorhttps:///matlabcentral/fileexchange/64831-non-linearly-spaced-vector-generator,MATLAB Central File Exchange.function nonLinVec = nonLinspace(mn, mx, num) loginess = 1.5; % Increasing loginess will decreasing the spacing towards % the end of the vector and increase it towards the beginning. nonLinVec = (mx - mn)/loginess*log10((linspace(0, 10^(loginess) - 1, num)+ 1)) + mn;end=========================================================================

Xiaowei He /matlabcentral/profile/25499942-xiaowei-he
126240 2023-04-25T16:46:05Z 2023-04-25T16:46:05Z CubeSat Thermal Power Toolbox App for preliminary thermal and power analysis for CubeSats missions.

CubeSat Thermal Power ToolboxThis MATLAB App is intended to provide a quick and easy way to perform preliminary thermal and power analysis for CubeSat missions. This is particularly usefull during the first phases of the project life-cycle.InstalationTo install, simply run the 'CubeSat Thermal Power Toolbox.mlappinstall' file. After instalation, the app will be available on the Apps tab inside MATLAB.How to use itStep 1) Generate the OrbitPropagate the orbit and enter the central body thermal parameters for Solar FLux, Albedo and IR.The tool currently provides options for Earth or Moon orbits.Earth orbitsPropagator options: two-body-keplerian and SGP4.Moon orbitsPropagator options: Kepler and Numerical (high precision).The Numerical propagator uses the spherical harmonics (LP-100K) as gravity model.Moon IR modelFor the Moon IR model, the user can select the "Gradient" option. In this case, the surface temperature, see Figure below, is modeled by the analytical expression provided in the Human Landing System Lunar Thermal Analysis Guidebook, Section 4.3, Pag 17. The IR flux is later computed by integrating the Moon's sphere discretized with 1 degree step. Step 2) Model your CubeSatCubeSat size options: 1U, 3U, 6U, 12UFor each face, select the cover material. Each built-in material offers different thermal-optical properties. The user can also enter a custom material with different values for absorptivity, emissivity and specific heat. If face is body-fixed solar panel, the user must enter the cell efficiency and packing factor.DeployableThe user can also define the deployable solar panels, either Fixed or Sun-Tracking. The deployable panels are only used to computed the generated power and they are not considered in the thermal analysis.Lumped Parameter ModelThe current version runs the thermal analysis of the CubeSat with a 7-Nodes Lumped Parameter Model using Simscape. The schematic is presented in the Figure below. The user shall input the best estimate for each thermal resistance linking the internal node (Node 1) to each face node.The thermal mass of each node is specified by the mass distribution and specific heat inputs.This thermal model does NOT considered:Heat transfer between faces;Internal heat transfer by radiation;Heat transfer with external surfaces (deployables)Step 3) Compute PowerThe user enters the internal node dissipation power by either defining it as a constant value or by defining two power dissipation levels depending on whether the satellite is illuminated by the Sun or in an eclipse.The tool offers total power generation and battery charge depletion throughout the orbit.When the satellite is charging the battery, the satellite faces with body-fixed solar panels have their absoportion coefficients reduced to account for the power conversion.Step 4) Run Thermal AnalysisThe tool offers the total accumulated radiation input coming from the Sun, central body IR, and Albedo reflection.Finally, the internal node temperature and the faces nodes temperatures are plotted.

Bruno Mattos /matlabcentral/profile/8138904-bruno-mattos
128509 2023-04-25T16:40:52Z 2023-04-25T16:40:52Z Двонаправлений перетворювач Двонаправлений перетворювач

Двонаправлений перетворювач

Kiki /matlabcentral/profile/28640480-kiki
128504 2023-04-25T16:14:08Z 2023-04-25T16:14:08Z LoRaWAN System Implementation and Data Transmission This code simulates the transmission of sensor data over a wireless channel using a LoRaWAN system.

The code defines LoRaWAN parameters, generates random sensor data, encodes and modulates the data, simulates wireless channel effects such as path loss, shadowing, and fading, demodulates and decodes the received data, and processes the decoded payload. The code also plots the channel effects and compares the original data to the decoded payload. It should be noted that the code can be modified to implement custom encoding and decoding schemes or other LoRaWAN parameters.

Ardavan Rahimian /matlabcentral/profile/16712815-ardavan-rahimian
128499 2023-04-25T15:58:25Z 2023-04-25T15:58:25Z Time-window-based Functional Brain Mapping Model This function brain mapping model can present the most activated region for multi-channel EEG Signals based on time-window.

The objective of developing a functional brain mapping model for visual valuation of the cognitive load levels has also been achieved in this work. This is the first ever such functional brain mapping model to present the most activated region for any task with respect to time.

Farzana Khanam /matlabcentral/profile/23424924-farzana-khanam
70594 2023-04-25T14:56:32Z 2023-04-25T14:56:32Z openGJK: compute minimum distance between 3D polyhedra Fast and reliable implementation of the Gilbert-Johnson-Keerthi (GJK) algorithm. University of Oxford.

This reposity implements a new verstion of the GJK algorithm to compute the minimum ditance between two convex bodies in 3D. All it needs are the coordinates of the bodies in [N x 3] matrices, where N is the number of points defining a body.An example is provided in example2_mex/runme.m. By running this file, Matlab will compile a MEX funciton which is called thereaftert. To compile a MEX function you'll need a C/C++ compiler, please refer to Matlab documention or leave a comment below.Thanks to Kwanyuan Chan for this tip to Windows users: Matlab users need to set up the MinGW-w64 C/C++ compiler before running the example2_mex/runme.m file. More about the compile and related setting procedures at:/matlabcentral/fileexchange/52848-matlab-support-for-mingw-w64-c-c-compiler

Mattia /matlabcentral/profile/4717633-mattia
128489 2023-04-25T14:56:16Z 2023-04-25T14:56:16Z B3AM Beamforming toolbox for 3-component ambient noise

B3AM Userguideversion 0.1 (under development - please test and provide feedback!)by Katrin Löerkatrin.loer@abdn.ac.ukPython version: https://github.com/cl-finger/B3AmpyB3AM is a toolbox for easy and fast beamforming analysis of three-component array data providing estimates of surface wave dispersion curves, frequency-dependent wavefield composition, and the direction of arrival for different wave types and frequencies from ambient seismic noise.B3AM performs beamforming analysis on short individual time-frequency windows of the provided data and identifies maxima in the beam response of each window. Each detected maximum is characterised by its wavenumber, direction of arrival (azimuth), and polarisation, i.e., wave type. A summary of the results of all windows is provided in histograms that show, for example, wavenumber as a function of frequency for different wave types.What you needMatlab R2020b or neweryour array data (in mseed or .mat format)a txt-file containing information about the station locations in three columns:stationname longitude in degreelatitude in degreeDownload all files and folders in this repository in a directory of your choice.Alternatively, if you are familiar with Matlab add-ons, you can download and install just the toolbox fileB3AM.mltbxAdditional functions required NOT provided with this package - please download separately:rdmseed.m (https://uk.bat365/matlabcentral/fileexchange/28803-rdmseed-and-mkmseed-read-and-write-miniseed-files)export_fig (https://uk.bat365/matlabcentral/fileexchange/23629-export_fig)Crameri Scientific Colormaps (https://uk.bat365/matlabcentral/fileexchange/68546-crameri-perceptually-uniform-scientific-colormaps)Categorical Palettes by Crameri (https://www.fabiocrameri.ch/categorical-colour-maps/)Functions by other authors INCLUDED in this toolbox for convenience:deg2utm.m by Rafael Palaciosextrema.m and extrema2.m by Carlos Adrin Vargas AguileraFK3C package by Nima Riahi (https://github.com/nimariahi/fk3c)Let's get started...Bring your data into the correct shapeB3AM will handle one file per day that contains seismic traces from all stations and all components.Your data need to be sorted by component in the order E, N, Z.If your data is already a .mat file (for example after downloading from IRIS directly into Matlab) you can use the scriptb3am_convert_iris.mto bring the traces into the correct order.If your data comes in miniseed format, please useb3am_convert_mseed.mand consider the guidelines provided in the script.The output from either conversion script will be a (or multiple) file(s) calledDAT_NN_yyyyddd.matwhere NN is the network code, yyyy is the year, and ddd the day of the year.If you are working with multiple days of ambient noise data, all resulting DAT files will be stored in the same folder.Eventually, B3AM requires information about the station location in form of a txt file that contains three columns:stationname x-ccordinate in my-coordinate in mWhen running b3am_convert_mseed.m the station file is created automatically in the same folder as the rearranged data.Alternatively, this file can be created from any DAT file using the scriptmk_stationfile.mDAT contains a variable called DAT.h.coords with lat and lon already converted to meter.The file returned from mk_stationfile.m will be calledstations_utm_yyyyddd.txtwhere yyyy is the year (e.g., 2023) and ddd the day of year (between 001 and 365).The information in the stationfile will be used to compute theoretical minimum and maximum wavenumber valuesbased on the largest and smallest station spacing within the array.Note, however, that these limits will be the same for all days processed, so that the txt file should containlocation data for the complete array, and not just the stations active on a particular day.Before you proceed it is recommended to do a quality check on the rearranged data to see if everything is as expected and to delete stations that seem unfeasible, for example. The function 'wiggle' (available from FileExchange) can be used to display traces from multiple stations at a time. Make sure to not only delete one trace but all three channels of a dodgy station and also the corresponding information in DAT.h.channel, DAT.h.stations and DAT.h.coords. (You might find it easiest to redo the conversion and exclude the respective station from the input folder containing the mseed data.)Define processing parameters to perform beamformingOpen the scriptb3am_param.mand fill in the required information line by line.Comments and examples are provided to help you with the correct format etc.Per default, the resolvable frequency range is based on conservative estimates of linearised average theoretical dispersion curves from literature values for various frequency ranges (e.g., Löer et al. 2018).However, the user can choose to adapt these values if, for example, information from theoretical dispersion curves is available. Note that frequency limits will be different for different modes of surface waves due to their different velocities (typically higher frequencies for higher modes), default values are adapted for the fundamental mode.Run the scriptb3am_check.mwhich will print in the command linemin/max station spacingmin/max wavelengthmin/max wavenumbermin/max frequencyand display the array response function indicating the minimum (black solid line) and maximum wavenumber (maximum of x-axis). If you are happy with these values you can proceed to the next step, otherwise make appropriate changes in b3am_param.m.Wathelet et al. (2008) suggest to limit the wavenumber range to values for which the ARF is < 0.5 of the global maximum to obtain more robust results. So, if you observe significant sidelobes in the ARF with normalised amplitudes > 0.5 you should decrease your maximum wavenumber (kmax) accordingly. Equally, if the central peak shows amplitudes > 0.5 for values > kmin (plotted as a thick vertical line) you should increase kmin.Run the beamformerOnce all processing parameters are defined in b3am_param.m you can start the beamformer by runningb3am.mNote that this script can partly run in parallel so you might want to make use of parallel computing facilities on a remote cluster.B3AM performs the four major steps successively:pre-processing (can include filtering, spectral whitening, one-bit normalisation, running-average-mean normalistion)Fourier transformation (stored in temporary folder tmpFT/)frequency-wavenumber analysis (beamforming)identification of maxima in the beam responsesThe script provides output in the command line documenting its progress.(When running on a remote cluster you should specify a file where this information is saved to.)Retrieve the resultsIn your output folder the file procpars.m appears that contains all processing parameters used in the beamforming process, such as the resolution of the wavenumber grid (kgrid), the frequency range (frees), and so on. These values will be taken from this file when plotting.The beamforming results are stored in the output directory that you specified in b3am_param.mone filed is saved for each frequency ffff, calledkmax_NN_yyyyddd_ffff.matThe information stored in each such file refer to the maxima in the beam responses and area_all: beam power at all extremakr_all: radial wavenumber at all extremakth_all: azimuth of all extremapola_all: polarization parameters for all extremapola_ind: polarization indeces for all extremawave_ind: wave type indeces for all extrema (0: P, 1: SV, 2: SH/Love, 3: retro. Rayleigh, 4: pro. Rayleigh)The size of all these variables is [nwin x nwin], where nwin denotes the number of time windows and nmax the maximum number of maxima detected in any time window.pola_all will be [nwin x nmax x 4] because 4 polarization parameters are stored (azimuth, dip, ellipticity, tilt).When plotting, you can choose to only consider the first maximum in each window (option 'MAX1').Note that beam response maps are not plotted (as you would create one for each time window processed)!Plot the resultsTo get a first overview of the beamforming results, you can use the scriptplot_b3am.mProvide the location of the beamforming results, i.e., the max files ('dir_in'), and a directory to save the figures in ('dir_out').If all plot options are set to true you will obtain the following 8 Figures:Wavefield composition: absolute contribution per frequencyWavefield composition: relative contribution per frequencyWavefield composition: amplitude variation with frequencyf-k histogram plots of pro- and retrograde Rayleigh waves and Love waves, respectivelySurface wave dispersion curvesDirection of arrival as a function of frequency for all surface and body wavesSet the save options separately to decide if figures are to be saved.The following parameters also need to be defined:SNR: A value for an acceptable SNR is required for the picking of dispersion curves from histograms. Experiment with this value as it will depend on the data quality, length of recording, number of stations, etc.maxflag: choose if you want to consider only the first/largest maximum ('MAX1') or all maxima ('NOMAX') detected in each time windowcountflag: to plot wavefield composition decide if you want to consider the number of waves counted ('count') or the number weighted by beam power amplitude ('amp')Note that, prior to plotting, this script performs essential analysis steps. In the section "Wave type analysis" results are sorted with respect to their detected wave type before they can be plotted accordingly.REFERENCES & PUBLICATIONSFinger, C. and Löer, K.: Depth of sudden velocity increases from multi-mode Rayleigh waves derived with three-component ambient noise beamforming, EGU General Assembly 2023, Vienna, Austria, 24–28 Apr 2023, EGU23-12396, https://doi.org/10.5194/egusphere-egu23-12396, 2023.Löer, K., Finger, C., Obiri, E., and Kennedy, H.: A comprehensive beamforming toolbox to characterise surface and body waves in three-component ambient noise wavefields, EGU General Assembly 2023, Vienna, Austria, 24–28 Apr 2023, EGU23-5670, https://doi.org/10.5194/egusphere-egu23-5670, 2023.Löer, K., Toledo, T., Norini, G., Zhang, X., Curtis, A., Saenger, E.H.: Imaging the Deep Structures of Los Humeros Geothermal Field, Mexico, Using Three‐Component Seismic Noise Beamforming, Seismological Research Letters (2020) 91 (6): 3269–3277.Löer, K., Riahi, N., & Saenger, E. H. , Three-component ambient noise beamforming in the Parkfield area, Geophysical Journal International, Volume 213, Issue 3, June 2018, Pages 1478–1491, https://doi.org/10.1093/gji/ggy058Riahi, N., and Saenger, E. H. (2014), Rayleigh and Love wave anisotropy in Southern California using seismic noise, Geophys. Res. Lett., 41, 363– 369, doi:10.1002/2013GL058518.Riahi, N., Bokelmann, G., Sala, P., and Saenger, E. H. (2013), Time-lapse analysis of ambient surface wave anisotropy: A three-component array study above an underground gas storage, J. Geophys. Res. Solid Earth, 118, 5339– 5351, doi:10.1002/jgrb.50375.Wathelet, M., Jongmans, D., Ohrnberger, M., & Bonnefoy-Claudet, S. (2008). Array performances for ambient vibrations on a shallow structure and consequences over V s inversion. Journal of Seismology, 12, 1-19.

Katrin Loer /matlabcentral/profile/20281440-katrin-loer
128484 2023-04-25T14:48:59Z 2023-04-25T14:48:59Z Awesome Web Tools Collection of web tool for any matlab web developer

Web-ToolsList of my favourite web toolsChecking for website online Statussite24x7 - https://www.site24x7.com/check-website-availability.htmlhttps://www.isitdownrightnow.com/utils360 - https://utils360.com/tool/website-status-checkerCheck for website SSL Certificatehttps://www.sslshopper.com/ssl-checker.htmhttps://utils360.com/tool/ssl-checker

Imran Akthar /matlabcentral/profile/10073266-imran-akthar
75195 2023-04-25T13:48:52Z 2023-04-25T13:48:52Z PDFO: Powell's Derivative-Free Optimization solvers Interfaces by Tom. M. Ragonneau and Zaikun Zhang for using the late Professor M. J. D. Powell's derivative-free optimization solvers.

(More information is available at the homepage of PDFO: https://www.pdfo.net ; the paper describing PDFO is available at https://arxiv.org/abs/2302.13246 ; check also PRIMA at http://www.libprima.net )PDFO (Powell's Derivative-Free Optimization solvers) is a cross-platform package providing interfaces for using the late Professor M. J. D. Powell's derivative-free optimization solvers, including UOBYQA, NEWUOA, BOBYQA, LINCOA, and COBYLA, which were originally implemented in Fortran 77.PDFO provides the following MATLAB functions: pdfo, uobyqa, newuoa, bobyqa, lincoa, and cobyla. The pdfo function can automatically identify the type of your problem and then call one of Powell's Fortran solvers. The other five functions call the solver indicated by their names. It is highly recommended to use pdfo instead of uobyqa, newuoa, etc.The pdfo function is designed to be compatible with the fmincon function available in the Optimization Toolbox of MATLAB. You can call pdfo in the same way as calling fmincon:x = pdfo(fun, x0)x = pdfo(fun, x0, A, b)x = pdfo(fun, x0, A, b, Aeq, beq)x = pdfo(fun, x0, A, b, Aeq, beq, lb, ub)x = pdfo(fun, x0, A, b, Aeq, beq, lb, ub, nonlcon)x = pdfo(fun, x0, A, b, Aeq, beq, lb, ub, nonlcon, options)x = pdfo(problem) % PROBLEM is a structure defining the optimization problem[x, fval] = pdfo(___)[x, fval, exitflag, output] = pdfo(___)In addition, pdfo can be called in some flexible ways that are not supported by fmincon. If your problem can be solved by fmincon without specifying the derivatives, then it can probably be better solved by pdfo; if your problem cannot be solved by fmincon, then try pdfo. Professor Powell ( https://en.wikipedia.org/wiki/Michael_J._D._Powell ) devised these derivative-free optimization solvers to tackle general nonlinear optimization problems of continuous variables with or without constraints using only function values but not derivatives of the objective function or nonlinear constraint functions. In practice, such functions are often black boxes defined by simulations. Consequently, the corresponding optimization problems are often categorized as black-box optimization or simulation-based optimization. Problem specified by explicit formulas can probably be handled by other methods more efficiently. UOBYQA and NEWUOA can solve unconstrained problems, NEWUOA being preferable except for rather small problems; BOBYQA can solve unconstrained and bound-constrained problems; LINCOA can solve unconstrained, bound-constrained, and linearly constrained problems; COBYLA, which is not recommended unless nonlinear constraints are present, can solve general nonlinear optimization problems. See the Decision Tree for Optimization Software for more information.The current version of PDFO supports MATLAB and Python. It relies on MEX for MATLAB and F2PY for Python to compile the Fortran solvers and wrap them into user-friendly functions.Based on Professor Powell's Fortran code, PDFO is developed by Tom M. Ragonneau and Zaikun Zhang at the Department of Applied Mathematics, the Hong Kong Polytechnic University.For more information, see the homepage of PDFO: https://www.pdfo.net .PDFO is dedicated to the late Professor M. J. D. Powell FRS (1936--2015).

Zaikun Zhang /matlabcentral/profile/5385347-zaikun-zhang
125080 2023-04-25T12:09:03Z 2023-04-25T12:09:03Z GPS Multi-correlator MATLAB class dedicated to the simulation of a GPS Multi-correlator

GpsMultiCorrelator is a MATLAB class includes the properties and methods necessary for:The setting of a local signal in terms of hypotheses on received signal (PRN, Doppler and code phase),The definition of correlator characteristics, in terms of filter frequencies, correlator code phases, integration period and code phase increment to be applied at the end of integration period,The injection of a received signal, as complex temporal values (see GpsSignals class for the synthesis of GPS signals),The calculation of energy matrices, for the defined filter frequencies and correlator code phases and non-coherent integration period, taking into account the code phase increment updating the next matrix correlator code phases,The calculation of in-phase/quadrature components, for the defined correlator code phases and a coherent integration period of 1ms,The estimation of through non-coherent and coherent methods, applied to in-phase/quadrature components,The estimation of code phase through a discriminator based on early, prompt and late correlators, applied to in-phase/quadrature components.

Eric Ogier /matlabcentral/profile/2649867-eric-ogier
128439 2023-04-25T11:35:52Z 2023-04-25T11:35:52Z Custom uifugure components A library with custom app components for Matlab

WEBLABA tool for developing custom uifigure components in Matlab How To Use • Components • How To Make Changes • LicenseHow To UseTo use a custom component, you will to create aFrame inside the uifigure and then insertyour component into it.% Create the uifigureuifig = uifigure();% Create the frameframe = weblab.internal.Frame("Parent", uifig);% Initialize your componentmyComponent = weblab.components.MyComponent();% Insertframe.insert(myComponent);Note: The inserted component will occupy the full height and width of theframe. If you want to reposition or resize it inside the figure, use thePosition property of the Frame.ComponentsThese components are currently supported:Tree: docs / srcTagBar: docs / srcTagFilterTree: docs / srcMore to come! These are the next planned components:ProgressBarCode EditorPDF rendererInteractive plotsDeveloping your own componentsWIPHow To Make ChangesIf you make changes to the Typescript source code, you will need to rebuild theproject. For that, you'll first need Node.js(which comes with npm) installed on your computer.From a terminal at the project root, type the following commands:# Go into the HTML source folder$ cd +weblab/source# Install dependencies$ npm installNow you can make changes in the TS source code, located inside the+weblab/source/src subdirectory.Important: Once your changes are complete, rebuild the project by running inthe terminal$ npm run buildIssues and PRsIssues and pull requests are appreciated. I will do my best to take into account your opinions and recommendationsLicense

Antonio Hortal /matlabcentral/profile/20946241-antonio-hortal
74825 2023-04-25T10:07:59Z 2023-04-25T10:07:59Z EnergyPLAN Toolbox Functions to use EnergyPLAN from Matlab Environment

The toolbox is designed to manage EnergyPLAN from MATLAB and take advantage of MATLAB functions to carry out studies in EnergyPLAN.To install the EnergyPLAN Toolbox you just have to open MATLAB and double-click the file called “EnergyPLAN Toolbox.mltbx”.After the installation, you will be able to use EnergyPLAN from MATLAB as it is explained in the example in the file. This development was carried out thanks to a research stay co-funded by the ERDF as part of the INTERREG MAC 2014-2020 program [E5DES Project (MAC2/1.1a/ 309)].For some questions, please, write to pedro.cabrerasantana@ulpgc.es

Pedro Cabrera Santana /matlabcentral/profile/1386549-pedro-cabrera-santana
49997 2023-04-25T08:14:55Z 2023-04-25T08:14:55Z e0404/matRad A free multi-modality radiation treatment planning system

An open source multi-modality radiation treatment planning sytem

Mark Bangert /matlabcentral/profile/7855134-mark-bangert
111590 2023-04-25T06:34:17Z 2023-04-25T06:34:17Z LightingToolbox The Lighting Toolbox contains numerous Matlab functions for lighting reseach calculations, plotting and colorimetry.

LightingToolboxThe Lighting Toolbox contains numerous Matlab functions for lighting research calculations, plotting and colorimetry. It is available under BSD3.0 licence.Categories:RadiometryPhotometryα-opic metrologyColorimetryDaylightPhotmometric measurementsImage processingData visualisationLighting control (Philips HUE)The Lighting Toolbox contains various reference spectra provided by the Commission International d’Éclairage (CIE – International Commission on Illumination). The reference data is sourced from the CIE and permission to use the data in the Lighting Toolbox was granted. Any errors in the data set or in results generated with the Lighting Toolbox are not in the liability of the CIE nor me, see licence.LightingToolbox setup:Download the Lighting Toolbox and move it to a location of your choice.Start MatlabAdd the Lighting Toolbox to Matlab's search path:Type: addpath(‘PATH_TO_LIGHTING_TOOLBOX\functions’) in the command windowOr click “Set Path” button under Matlab HOME tab -> “Add Folder…” -> select folder -> confirm -> “Save”Test the Lighting Toolbox functionality:Type: plotciexy in the command windowA plot of the CIE x and y chromaticity should appearThe Lighting Toolbox is ready to use.Documentation:The Lighting Toolbox is documented with numerous function examples on: https://frudawski.de/lighting-toolbox/Cite AsFrederic Rudawski, Lighting Toolbox for Matlab and Octave, 2022, URL: https://github.com/Frudawski/LightingToolbox

Frederic Rudawski /matlabcentral/profile/17178623-frederic-rudawski
128479 2023-04-25T06:19:47Z 2023-04-25T06:19:47Z Fractional Bass Diffusion Model The innovation dilation or contract of the Bass diffusion model is equivalented to the fractional power of imitation probability function.

To illustrate the application of the Bass model in practice, we chose online education as a specific case of educational digital transformation and estimate the temporal model of its diffusion process. The cumulative numbers of online education users from 2001 to 2022 were collected from the "China Internet Development Statistics Report" published by the China Internet Network Information Center and third-party industry research reports. Using these data, we calculate the number of new users each year. Due to the influence of disruptive events such as the COVID-19 pandemic from 2020 to 2022, we firstly used data from 2001 to 2019 to create the linear model, and then use the fractional correction term to find the lowest mean square error fit when the COVID-19 pandemic from 2020 to 2022 data are also included. This way, we can obtain both optimistic and pessimistic predictions.

steed huang /matlabcentral/profile/6205312-steed-huang
128469 2023-04-25T04:19:01Z 2023-04-25T04:19:01Z Asignacion 3 U3 S4 Funciones de sengundo orden

Se presento varios graficos

Miguel Elías /matlabcentral/profile/29967712-miguel-elias
128459 2023-04-25T01:37:09Z 2023-04-25T01:37:09Z Pose-planning-basd-DMP Dynamic Movment Primitives

Pose-planning-basd-DMPDynamic Movment PrimitivesThe data used was captured by OptiTrack system.How to use the program:1- Install robotic toolbox2- Run main_RUN.m (change the number of basis function to enhance the DMP performance)

Ibrahim Seleem /matlabcentral/profile/6343598-ibrahim-seleem
128454 2023-04-25T00:59:02Z 2023-04-25T00:59:02Z jjrx alternates dropbox

.

Eduardo /matlabcentral/profile/27123481-eduardo
72750 2023-04-24T22:35:20Z 2023-04-24T22:35:20Z CanlabCore Core tools required for running Canlab Matlab toolboxes. The heart of this toolbox is object-oriented tools that enable interactive analysis

This repository contains core tools for MRI/fMRI/PET analysis from the Cognitive and Affective Neuorscience Lab (Tor Wager, PI) and our collaborators. The tools provide a high-level language for interacting with neuroimaging data. The idea is to take preprocessed data or even the results of single-subject analyses—the output of established preprocessing pipelines—and import them into lightweight, flexible data objects specialized for neuroimaging visualization and analysis. These objects allow for interactive analysis with simple commands, like “plot”, “predict”, and “montage”. The repository also includes other useful toolboxes, including fMRI design optimization using a genetic algorithm, fMRI HRF estimation, fMRI analysis with Hierarchical Exponentially Weighted Moving Average change-point analysis, various fMRI diagnostics, and miscellaneous other tools and functions for visualizing brain data.

Tor Wager /matlabcentral/profile/2429476-tor-wager
128449 2023-04-24T22:09:51Z 2023-04-24T22:09:51Z single coupling capacitor wireless power transfer this project describe the Method of wireless power transfer between two plates one mounted on the street side and the other on the car side

this project describe the Method of wireless power transfer between two plates one mounted on the street side and the other on the car side and connected the two plate using different communication techneque like 16quam, QPSK and show how this communication affect the transfer power duo to the change of the compensation parameter value.

Mahmoud /matlabcentral/profile/28856926-mahmoud
88932 2023-04-24T21:36:23Z 2023-04-24T21:36:23Z SpikerBot Toolbox Let's build brains together!

A neurorobot is a robot controlled by a computer simulation of a biological brain. At Backyard Brains we use neurorobots to teach neuroscience in schools. To learn more, see this demo video and our 2020 research publication.

Christopher Harris /matlabcentral/profile/11998194-christopher-harris
64589 2023-04-24T20:07:31Z 2023-04-24T20:07:31Z Brainstorm Brainstorm: Open source application for MEG/EEG data analysis

Brainstorm is a collaborative, open-source application dedicated to the analysis of brain recordings: MEG, EEG, fNIRS, ECoG, depth electrodes and animal electrophysiology. Our objective is to share a comprehensive set of user-friendly tools with the scientific community using MEG/EEG as an experimental technique. For physicians and researchers, the main advantage of Brainstorm is its rich and intuitive graphic interface, which does not require any programming knowledge. We are also putting the emphasis on practical aspects of data analysis (e.g., with scripting for batch analysis and intuitive design of analysis pipelines) to promote reproducibility and productivity in MEG/EEG research.

Martin Cousineau /matlabcentral/profile/10012405-martin-cousineau
67556 2023-04-24T18:27:07Z 2023-04-24T18:27:07Z MATLAB Production Server on Azure Reference architecture for MATLAB Production Server on Azure

This reference architecture simplifies the setup of MATLAB Production Server in Azure. It automates much of the creation and configuration of Azure infrastructure, resulting in an installed version of MATLAB Production Server running on multiple Azure virtual machines. The reference architecture linked to this submission contains step-by-step instructions, an architecture diagram, and templates and scripts for executing in the Azure environment. You must have a license for MATLAB Production Server and your own account in Azure to use this reference architecture. Learn more about bat365 support for cloud environments: /cloud.html#PublicClouds

bat365 Cloud Team /matlabcentral/profile/12402535-bat365-cloud-team
127958 2023-04-24T18:23:46Z 2023-04-24T18:23:46Z ternary ternary plot for MATLAB support plot fill scatter contour contourf text

% 初始化三元相图(Init ternary plot)STA=STernary();% 随机构造数据(Randomly generated data)A=rand(1,50);B=rand(1,50);C=rand(1,50);sz=rand(1,50);% 绘制气泡图(Draw bubble chart)STA.SBubblechart(A,B,C,sz,'CData',A);% 初始化三元相图(Init ternary plot)STA=STernary();% 随机构造数据(Randomly generated data)A=rand(1,30);B=rand(1,30);C=rand(1,30);% STA.SContourf(A,B,C,[],15,'LineWidth',1);% 获取核密度范围并等分(Obtain the range of ksdensity and divide it equally)[~,Z]=STA.SContourf(A,B,C,[],15,'Visible','off');levels=linspace(.5,max(max(Z)),15);% 依据等值线绘制等高线及等高线填充(Draw contour and contourf by levels)CfHdl=STA.SContourf(A,B,C,[],levels,'LineWidth',1);CHdl=STA.SContour(A,B,C,[],levels,'LineWidth',1,'EdgeColor',[0,0,0]);SHdl=STA.SScatter(A,B,C,40,'filled','CData',[0,0,0]);% 绘制图例(Draw legend)legend([CfHdl,CHdl,SHdl],{'contourf','contour','scatter'},'FontSize',14,'FontName','Cambria')colormap(turbo)% 初始化三元相图(Init ternary plot)STA=STernary();% 随机构造数据(Randomly generated data)A=rand(1,500);B=rand(1,500);C=rand(1,500);STA.SPcolor(A,B,C,10)% STA.SScatter(A,B,C,5,'filled','CData',[0,0,0]);colormap(summer)

Zhaoxu Liu / slandarer /matlabcentral/profile/18192500-zhaoxu-liu-slandarer
69516 2023-04-24T17:02:31Z 2023-04-24T17:02:31Z Convert Acceleration Data to Velocity and Displacement Integrates acceleration sensor data to velocity and displacement, the process includes detrending and tukey windowing for the 3 data types

Integrates acceleration sensor data to velocity and displacement, the process includes detrending and tukey windowing for the 3 data types. Result=ACC_VEL_DSP(Data,fs,taper)Input:Data: acceleration signal of size (N,n). N is signal length. n is the number of channelsfs: Sampling Frequencytaper: Window Tapered Ratio for tukeywin windowing. Use 0 if no windowing requiredOutput:Result is a structure consists ofACC: Processed acceleration dataVEL: Generated and processed velocity dataDSP: Generated and processed displacement data

Ayad Al-Rumaithi /matlabcentral/profile/6310243-ayad-al-rumaithi
72835 2023-04-24T16:51:48Z 2023-04-24T16:51:48Z MediationToolbox Single-level and multi-level mediation analyses for any kind of data, with bootstrap-based significance testing.

This toolbox contains functions to aid in single- and multi-level mediation analyses of any kind of data. The main function, mediation.m, examines 3 timeseries to determine if one of them acts as a mediator between the other two. Works for both single-level and multi-level (multiple subjects/observations) data. There is a brain imaging specific mediation search function that takes two variables and searches functional MRI data for potential mediators. The toolbox also includes visualization and plotting functions for mediation analyses, and various computational support functions. The Mediation_walkthrough folder contains a powerpoint presentation with a step-by-step example single-level mediation analysis of example brain data. See https://canlab.github.io/walkthroughs/ for more examples.

Tor Wager /matlabcentral/profile/2429476-tor-wager
71965 2023-04-24T16:35:38Z 2023-04-24T16:35:38Z Filtering, Detrending, and Windowing of a Signal Zero-phase bandpass digital filter with detrending and windowing

Process raw data with the following:--zero-phase bandpass digital filtering -removing the straight-fit line from the data (detrending)-windowing with tukey windowfunction Result=Filter_Detrend_Window(Sig,fs,fc1,fc2,orderh,orderl,taper)Input:Sig: input signal of size (N,n). N is signal length. n is the number of channelsfs: sampling frequencyfc1,fc2: filter cutoff frequencies for highpass and lowpass filtersorderh,orderl: filter orders for highpass and lowpass filterstaper: window taper ratio of tukey windowing (Typical 0.05)Output:Result: Processed signal of size (N,n)

Ayad Al-Rumaithi /matlabcentral/profile/6310243-ayad-al-rumaithi
48208 2023-04-24T16:18:09Z 2023-04-24T16:18:09Z gibbonCode/GIBBON GIBBON: The Geometry and Image-Based Bioengineering add-ON for MATLAB

The Geometry and Image-Based Bioengineering add-On for MATLABhttp://gibboncode.org/GIBBON (The Geometry and Image-Based Bioengineering add-ON) is an open-source MATLAB toolbox by Kevin M. Moerman and includes an array of image and geometry visualization and processing tools and is interfaced with free open source software such as TetGen, for robust tetrahedral meshing, and FEBio for finite element analysis. The combination provides a highly flexible image-based modelling environment and enables advanced inverse finite element analysis.IMPORTANT cite as: K. M. Moerman, “GIBBON: The Geometry and Image-Based Bioengineering add-On,” J. Open Source Softw., vol. 3, no. 22, p. 506, Feb. 2018, doi: 10.21105/joss.00506Example sentence to cite this work: "... the mesh was created using the open source toolbox GIBBON (v3.5.0, Moerman et al. 2018, https://www.gibboncode.org)"

Kevin Moerman /matlabcentral/profile/975857-kevin-moerman
128423 2023-04-24T15:59:51Z 2023-04-24T15:59:51Z Constrained wind simulation in a 2D plane Simulation of spatially correlated turbulent wind field based on wind velocity histories known at a few specific locations in a 2D plane

Constrained wind simulation in a 2D planeSummaryMatlab code for a conditional/constrained wind simulation in a 2D plane. The coherence function is modelled using the Davenport model. Only one velocity component is simulated at a time. It is possible to generate non-stationary event with time-varying coherence, but the simulation time will be significantly increased. ContentsThe repository containscoherence.m: Calculates the coherence for two signals.condWindSim2D.m: Generates a 2D conditional/constrained wind field.The Matlab Live Script Documentation.mlx, which documents how to use the function in 2DThe Matlab Live Script Documentation2.mlx, which documents how to use the function in 1D fr a vertical linesThe Matlab Live Script Documentation2.mlx, which documents how to use the function in 1D fr a horizontal linesThis is the first version of the repository, there may be many bugs. Do not hesitate to contact me if you find any.

E. Cheynet /matlabcentral/profile/4608373-e-cheynet
128438 2023-04-24T15:34:47Z 2023-04-24T15:34:47Z Capacity Analysis for Rayleigh and Rician Fading Channels This code evaluates and compares the ergodic and outage capacities for Rayleigh and Rician fading channels across varying SNR values.

This code calculates and plots the ergodic and outage capacities for Rayleigh and Rician fading channels, comparing them to the Shannon capacity for an AWGN channel. The code considers a range of signal-to-noise ratio (SNR) values and a specific outage probability. The resulting plots provide insights into the performance of communication systems operating under different channel conditions.

Ardavan Rahimian /matlabcentral/profile/16712815-ardavan-rahimian
128433 2023-04-24T15:33:07Z 2023-04-24T15:33:07Z what is the error in that code Hi All, there is an error in my code which makes the optimal value tends to infinity. please could you help me to fix this error

fixing an error.there is an error in my code which makes the optimal value tends to infinity.please could you help me to fix this error

Mohamed /matlabcentral/profile/29962734-mohamed
128428 2023-04-24T15:32:33Z 2023-04-24T15:32:33Z A Mass String Vibrator excited equation mass string MX'/matlabcentral/fileexchange/' +K X = A sinWt Wo proper frequency for heart Fo=1.3 Hz 80 beats per secund gM mass heart 225 g give coefficiant hm

PLAN WORK 1 Mecanic System Vibrator mass stringa Mecanic systeme of 5 Coupled vibrators Pendulem poulie mass string Mo atrial heart Xo(tà Ms mass sinus heart and Ks and Mv mass ventricul Xs(tà and Xv(tà compute runge kutta Vector modelX'' + M X = 0 X=( pendulem;poulie;vibration Ms Mv and MoIt is A Mecanic Model for Heart

Mamadou lamine dit /matlabcentral/profile/26882639-mamadou-lamine-dit
128418 2023-04-24T14:12:20Z 2023-04-24T14:12:20Z Matlab-Course tracking of students progress via report-link Matlab-Script to request the chapter-status of a list of students working on any Matlab-Course (Fundamentals, etc.); working with Moodle-csv

Hello everyone, during Corona i've written a small matlab-script to request the report-link status of a list of students. The script is currently coded, so that you simply download a .csv from moodle-homework, where all students post their (e.g.) fundamentals-course report-links. Then the script automatically creates a table with the name + cleared URL (without HTML-elements) and pulls out the chapter-points/information for each student. This way it's possible to track the progress of each student during your online-course.If you're using any other learning platform, you can simply modify your Names/URL list by yourself and feed it into the script - you'll still recieve a Table with Columns showing the progress of each student in each chapter.Feel free to ask any questions

Markus Großmann /matlabcentral/profile/18320960-markus-grossmann
128413 2023-04-24T13:24:26Z 2023-04-24T13:24:26Z Hybrid Beamforming for IoT Sensor Communications This code simulates a hybrid beamforming technique for IoT sensor communication applications.

The code consists of three main steps: channel estimation, hybrid beamforming, and performance evaluation. In the channel estimation step, the code generates a pilot signal, transmits it through a randomly generated channel matrix, and estimates the channel using the received pilot signal. In the hybrid beamforming step, the input signal is processed by applying analog and digital beamforming sequentially. Analog beamforming weights are computed based on the desired direction and applied to the input signal. Then, digital beamforming weights are calculated using the estimated channel matrix and desired direction, and applied to the analog beamformed signal. The performance evaluation step computes and visualizes the signal-to-noise ratio (SNR) of the received digital beamformed signal. The code also includes functions for channel estimation, analog beamforming, and digital beamforming, which provide modular and reusable components for implementing the hybrid beamforming technique.

Ardavan Rahimian /matlabcentral/profile/16712815-ardavan-rahimian
71966 2023-04-24T12:13:28Z 2023-04-24T12:13:28Z Filter Designer Helps determining the order of digital filters

Helps determining the order of digital filters. Change the filter order to get suitable response. Supports butterworth and filtfilt filters.function FilterDesigner(fc1,fc2,fs,type,orderh,orderl)Input:fc1: lower-bound cutoff frequency fc2: upper-bound cutoff frequency fs: sampling frequency type: filter type 'butter' for butterworth, 'filtfilt' for filtfiltorderh: filter order for high pass filterorderl: filter order for low pass filterOutput:Plots frequency response of the high-pass, low-pass, and band-pass filters.Important Notes:1-filtfilt filter here is assumed to be buttworth filter applied to the input data in both the forward and reverse directions to get rid of phase distortion.2-After choosing the suitable filter order, apply the filter to your data using the following lines:for butterworth:[B1,A1] = butter(orderh,fc1/(fs/2),'high');[B2,A2] = butter(orderl,fc2/(fs/2),'low');yh=filter(B1,A1,x); %apply high-pass filter to the datayl=filter(B2,A2,x); %apply low-pass filter to the datay=filter(B2,A2,yh); %apply band-pass filter to the datafor filtfilt:[B1,A1] = butter(orderh,fc1/(fs/2),'high');[B2,A2] = butter(orderl,fc2/(fs/2),'low');yh=filtfilt(B1,A1,x); %apply high-pass filter to the datayl=filtfilt(B2,A2,x); %apply low-pass filter to the datay=filtfilt(B2,A2,yh); %apply band-pass filter to the datawherex: is the data vector.

Ayad Al-Rumaithi /matlabcentral/profile/6310243-ayad-al-rumaithi
128408 2023-04-24T10:49:19Z 2023-04-24T10:49:19Z Image_stitching_SIFT_MATLAB Stitching of two images(considering only translational Homography)

Stitching of two Images using the SIFT algorithm is implemented in this project. We are only considering translational Homography in this Project. A Euclidean distance method is used for finding the best feature descriptors and median technique is used to find the translational homography

Jittin /matlabcentral/profile/29586175-jittin
128403 2023-04-24T10:48:33Z 2023-04-24T10:48:33Z ml j

nnnnnnnnnnnnnnnnnnnnnnnnnnnnn

Nguyen /matlabcentral/profile/29960113-nguyen
128398 2023-04-24T10:45:57Z 2023-04-24T10:45:57Z frame_synchronisation_digital_communication Frame synchronization in a digital communication system is simulated using MATLAB in this project.

Frame synchronization in a digital communication system is simulated using MATLAB in this project. For both the sync word and the data, I used a word length of 16 bits. There are two cases: fault detection and missed detection, and the probability of each is plotted for different threshold values and different error probabilities.

Jittin /matlabcentral/profile/29586175-jittin
127788 2023-04-24T07:34:54Z 2023-04-24T07:34:54Z Calculate DVH and DVH parameters (D99%, V40Gy, D0.5cc, ...) A function to calculate the cumulative dose-volume histogram (DVH) and DVH parameters from a dose map and binary structure mask.

I couldn't find a good all-in-one function to calculate DVH parameters from dose maps + structure masks (GTV, OAR, ...), so I made one myself. Any feedback is very welcome.The primary purpose of this function is to calculate DVH parameters, like D99%, V40Gy, D0.5cc and the like. In my experience, the actual DVH itself is desired less often, but since it needs to be calculated anyway before parameters can be extracted, the function can also return that for free.This function is supposed to be very "Matlab-native", meaning it needs and returns typical Matlab objects such as logical arrays and tables. Therefore, it is expected you have already imported the dose files (which typically begin as RTdose dicoms) as arrays, converted structure contours (RTstruct dicoms) to binary arrays, and so forth. A limitation of this function is that it cannot calculate multiple DVHs for multiple structures at the same time. However, it is fast enough that it should be no problem calling it multiple times for every structure. As long as the underlying dose map remains the same, you can plot the resulting DVHs on top of each other; the dose bins (DVH x-axis) is calculated using the dose map maximum.UseName-value pair arguments are used to obtain the DVH parameters, e.g. 'Dperc', 99 -> returns the minimal dose to 99% of the volume'Dvol', 0.5 -> returns the minimal dose to 0.5 cc'Vperc', 45 -> returns the volume percentage receiving at least 45 Gy'Vvol', 30 -> returns the volume in cc receiving at least 30 GyThe rest of the syntax and input arguments are fairly straightforward, please see the code. Most important things to remember:Structure mask must be a logical and same size as the dose mapVoxel sizes are required and are in cmExamples: >> [params, dvh_values] = dvh(dose_map, gtv_mask, [0.3; 0.3; 0.3], 'Dperc', 99, 'Vvol', 45);>> params params = 1×2 table D99% (Gy) V45.0cc (cc) _________ ____________ 40.711 29.889 >> plot(dvh_values(:, 1), dvh_values(:, 2)) % To plot the DVH>> params = dvh(dose_map, gtv_mask, [0.3; 0.3; 0.3], 'Vperc', 45) params = table V45Gy (%) ________ 45.782 >> [~, dvh_values] = dvh(dose_map, gtv_mask, [0.3; 0.3; 0.3], 'Normalize', false); % get an absolute DVH with cc values

Guus Grimbergen /matlabcentral/profile/25473408-guus-grimbergen
128393 2023-04-24T05:27:24Z 2023-04-24T05:27:24Z MPC A code related to MPC

A code related to MPC

Piyush Varshney /matlabcentral/profile/19134446-piyush-varshney
128388 2023-04-24T04:10:15Z 2023-04-24T04:10:15Z ot-lab-simplex code

%simplexclc;clear all;cost=[2 5 0 0 0 0];a=[ 1 4; 3 1 ; 1 1];b=[24;21;9];[m,n]=size(a);s=eye(m);A=[a s b];%cost=zeros(1,n+m+1);%cost(1:n)=c;bv=n+1:n+mzjcj=cost(bv)*A-cost;zcj=[zjcj;A];simptable=array2table(zcj);simptable.Properties.VariableNames(1:size(zcj,2))={'x1','x2','s1','s2','s3','sol'}flag=true;while flag if any(zjcj<0) fprintf('current bfs is not optimal \n') zc=zjcj(1:end-1); [enter_val,pvt_col]=min(zc) if all(A(:,pvt_col)<=0) error('LPP is unbounded all enteries are <=0 in column %d',pvt_col); else sol=A(:,end) column=A(:,pvt_col) for i=1:m if(column(i)>0) ratio(i)= sol(i)./column(i) else ratio(i)=inf end end [leaving_val, pvt_row] = min(ratio) end bv(pvt_row) = pvt_col; pvt_key = A(pvt_row, pvt_col); A(pvt_row, :) = A(pvt_row, :)/pvt_key; for i=1:m if i~=pvt_row A(i, :) = A(i, :) -A(i, pvt_col).*A(pvt_row, :); end end zjcj = cost(bv)*A-cost; zcj = [zjcj;A]; table = array2table(zcj); table.Properties.VariableNames(1:n+m+1)={'x1','x2','s1','s2','s3','sol'} else flag = false; fprintf('The current bfs is optimal\n') endend

Akshay /matlabcentral/profile/27019729-akshay
128383 2023-04-24T04:09:33Z 2023-04-24T04:09:33Z ot-lab-bigm code

%big mclc;cost= [3 2 0 0 -1000 0];a = [1 1 ; 1 3 ;1 -1];b = [2;3;1];[m,n] = size(a);s = eye(m);A = [a s b];bv = n+1:1:n+m;zjcj = cost(bv)*A - cost;zcj = [zjcj; A];simplexTable=array2table(zcj);simplexTable.Properties.VariableNames(1:size(zcj,2))={'x1','x2','s1','s2','a1','Sol'}flag=true;while flag if any(zjcj<0) fprintf("The Current BFS is not Optimal \n"); zc = zjcj(1:end-1); [Enter_val, pvt_col] = min(zc); if all (A(:,pvt_col)<=0) error("LPP is Unbounded all entries are <=0 in column %d",pvt_col); else sol = A(:,end) column = A(:,pvt_col) for i = 1:m if column(i) > 0 ratio(i) = sol(i)./column(i); else ratio(i) = inf; end end [leaving_val, pvt_row] = min(ratio); end bv(pvt_row) = pvt_col; pvt_key = A(pvt_row, pvt_col); A(pvt_row,:) = A(pvt_row,:)./pvt_key; for i = 1:m if (i~=pvt_row) A(i,:) = A(i,:) - A(i, pvt_col).*A(pvt_row,:); end end zjcj = zjcj - zjcj(pvt_col).*A(pvt_row,:); zcj = [zjcj;A]; table = array2table(zcj); table.Properties.VariableNames(1:n+m+1) = {'x1','x2','s1','s2','a1','Sol'} else flag = false; fprintf("The Current BFS is Optimal \n") endend

Akshay /matlabcentral/profile/27019729-akshay
128378 2023-04-24T04:08:48Z 2023-04-24T04:08:48Z ot-lab-lcm_transportation code

clcclear allformat short% Matlab Code of Least Cost Method (LCM)% Input Information%% Input PhaseCost=[11 20 7 8; 21 16 10 12; 8 12 18 9];A=[50 40 70];B=[30 25 35 40];%% To check unbalanced/balanced Problemif sum(A)==sum(B) fprintf('Given Transportation Problem is Balanced \n');else fprintf('Given Transportation Problem is Unbalanced \n'); if sum(A)

Akshay /matlabcentral/profile/27019729-akshay
128373 2023-04-24T04:08:06Z 2023-04-24T04:08:06Z ot-lab-twophase code

Variables={'x_1','x_2','x_3','s_1','s_2','A_1','A_2','Sol'};OptVariables={'x_1','x_2','x_3','s_1','s_2','Sol'};C=[-7.5 3 0 0 0 -1 -1 0];A=[3 -1 -1 -1 0 1 0 3; 1 -1 1 0 -1 0 1 2];BV=[6 7];D=[0 0 0 0 0 -1 -1 0]; StartBV=find(D<0); fprintf('Phase 1\n');[BFS,A]=simp(A,BV,D,Variables);fprintf('Phase 2\n');A(:,StartBV)=[]; C(:,StartBV)=[]; [OptBFS,OptA]=simp(A,BFS,C,OptVariables);FINAL_BFS=zeros(1,size(A,2));FINAL_BFS(OptBFS)=OptA(:,end);FINAL_BFS(end)=sum(FINAL_BFS.*C);OptimalBFS=array2table(FINAL_BFS);OptimalBFS.Properties.VariableNames(1:size(OptimalBFS,2))=OptVariablesfunction [BFS,A]=simp(A,BV,D,Variables) ZjCj=D(BV)*A-D; RUN=true;while RUN ZC=ZjCj(1:end-1);if any(ZC<0); fprintf(' The Current BFS is NOT Optimal \n\n') [entcol pvt_col]=min(ZC); fprintf('Entering Col=%d \n',pvt_col) ; sol=A(:,end); Column=A(:,pvt_col); if Column<0 fprintf('Unbounded Solution\n'); else for i=1:size(A,1) if Column(i)>0 ratio(i)=sol(i)./Column(i); else ratio(i)=inf; end end [MinRatio, pvt_row]=min(ratio); fprintf('Leaving Row =%d \n',pvt_row) end BV(pvt_row)=pvt_col; pvt_key=A(pvt_row,pvt_col); A(pvt_row,:)=A(pvt_row,:)./pvt_key; for i=1:size(A,1) if i~=pvt_row A(i,:)=A(i,:)-A(i,pvt_col).*A(pvt_row,:); end end ZjCj=ZjCj-ZjCj(1,pvt_col).*A(pvt_row,:); ZCj=[ZjCj;A]; TABLE=array2table(ZCj); TABLE.Properties.VariableNames(1:size(ZCj,2))=Variables BFS(BV)=A(:,end);else RUN=false; fprintf('Current BFS is Optimal\n'); fprintf('Phase 1 END\n\n\n'); BFS=BV;endendend

Akshay /matlabcentral/profile/27019729-akshay
128368 2023-04-24T04:07:07Z 2023-04-24T04:07:07Z ot-lab-dualsimplex code

%input clc;close all;variables={'x1','x2','x3','s1','s2','Sol'};cost=[-2 0 -1 0 0 0];info=[-1 -1 1;-1 2 -4];b=[-5;-8];%creating identity for slack variabless=eye(size(info,1));%making combined matrixA=[info s b];[m n]=size(info);%finding basic variable column numberbv=n+1:n+m;%calculating zj-cj rowzjcj=cost(bv)*A-cost;%attaching zj0cj row to combined matrixzcj=[zjcj;A];%creating simplex tablesimptable=array2table(zcj);simptable.Properties.VariableNames(1:size(zcj,2))=variables;flag=true;while flag sol=A(:,end); if any(sol<0) fprintf("Current bfs is not feasible");%finding leaving variable [leavingVar,pvt_row]=min(sol)% finding entering variable row=A(pvt_row,1:end-1); Zj=zjcj(:,1:end-1); for i=1:size(row,2) if row(i)<0 ratio(i)=abs(Zj(i)./row(i)); else ratio(i)=inf; end end [minval,pvt_col]=min(ratio)%update the bv bv(pvt_row)=pvt_col;%dividing pvt_row by pvt_key pvt_key=A(pvt_row,pvt_col); A(pvt_row,:)=A(pvt_row,:)./pvt_key;%updating other rows for i=1:size(A,1) if i~=pvt_row A(i,:)=A(i,:)-A(i,pvt_col).*A(pvt_row,:); end end %updating zj-cj zjcj=cost(bv)*A-cost zcj=[zjcj;A]%creating simplex table again simptable=array2table(zcj); simptable.Properties.VariableNames(1:size(zcj,2))=variables; else flag=false; fprintf("Current bfs is feasible"); endend

Akshay /matlabcentral/profile/27019729-akshay
128363 2023-04-24T02:40:44Z 2023-04-24T02:40:44Z afni afni

afni

Nandhini /matlabcentral/profile/29955491-nandhini
127998 2023-04-23T23:33:20Z 2023-04-23T23:33:20Z Simulink model of TGM-199-1.4-0.8 TEG module Simulink model of KRYOTHERM TGM-199-1.4-0.8 thermoelectric generator module.

KRYOTHERM TGM-199-1.4-0.8 thermoelectric generator module Simulink model. This model uses data presented in the manufacturer’s data for cold surface temperatures of 30°C, 50°C, and 80°C. The hot surface temperature value can be in the range of [40 220]. The model gives the most accurate results for a cold surface temperature of 30 °C, 50 °C, or 80 °C. The model produces approximate results at other cold surface temperature values.

Mehmet Ali Üstüner /matlabcentral/profile/21064298-mehmet-ali-ustuner
128358 2023-04-23T22:27:52Z 2023-04-23T22:27:52Z IoT Sensor Position Optimization Using Genetic Algorithm This code demonstrates the application of a genetic algorithm to optimize the positions of IoT sensor nodes in a fixed wireless network.

This code demonstrates the application of a genetic algorithm (GA) in optimizing the positions of IoT sensor nodes within a fixed wireless network. The main objective is to minimize the energy consumption of the nodes. The code initializes the positions of the nodes, sets constraints and GA options, and finds the optimal node positions using GA. The code also includes functions for energy calculation and plotting the results.

Ardavan Rahimian /matlabcentral/profile/16712815-ardavan-rahimian
128353 2023-04-23T22:14:17Z 2023-04-23T22:14:17Z SIMULINK CUSTOM LIBRARY SIMULINK CUSTOM LIBRARY

SIMULINK CUSTOM LIBRARY

Juan Carlos Buitrago Moreno /matlabcentral/profile/15343085-juan-carlos-buitrago-moreno
125455 2023-04-23T21:53:13Z 2023-04-23T21:53:13Z Ryze Tello Matlab Control Visualize and collect data on ryze tello state variables such as altitude and control input. All state variables can be collected.

This version {1.0} toolbox provides an API for connecting with the ryze tello drone and streaming and visualizing in real time the drone's state variables that the user specifies with the API. The data collected can be used for system identification or modelling of the drone's dynamic behaviour. For example, a dynamic altitude model can be derived using matlabs system identification toolbox with altitude data collected from the tello drone using the API provided by this package.Getting Started with Ryze Tello Matlab ControlNB: To access local documentation in Matlab doc browser, call help_rtmc in command windowDescriptionThis version {1.0} toolbox provides an API for connecting with the ryze tello drone and streaming and visualizing in real time the drone's state variables that the user specifies with the API. The data collected can be used for system identification or modelling of the drone's dynamic behaviour. For example, a dynamic altitude model can be derived using matlab's system identification toolbox with altitude data collected from the ryze tello drone using the API.For more information on the Drone's state variables and the Tello's SDK see, Ryze Tello SDKThis Toolbox makes use of 2 primary classes.TelloControl The TelloControl class rovides functions for connecting to the Ryze Tello Drone over WIFI using the UDP protocol, initializing the onboard SDK and a primary function, cmdTello(str:), for sending control commands over UDP to the drone. See Ryze Tello SDK for more information on the acceptable commands. This class can be used independently.This is the typical process for observing and collecting data.Initialize Ryze Tello ControllerBefore the controller is initialized, it is important to clear all workspace variables and close all pre-existing figures as this may interfere with the proper starting of the script.clear;clc;close all;tc = TelloControltc = TelloControl with properties: telloSDKPort: 8889 telloDroneStatePort: 8890 telloIP: '192.168.10.1' localhost: '0.0.0.0' telloSDKClient: [1×1 udpport.byte.UDPPort] telloStateClient: [1×1 udpport.byte.UDPPort] telloCameraClient: [1×1 udpport.byte.UDPPort] telloCameraPort: 11111 telloState: {}Initialize the Drone's onboard SDKRun this to initialize the Tello's onboard SDK to allow the controller to interact with the drone.tc.initTello();Pass the controller 'tc' to the TelloStateObserver class. See this implemented in the example below.TelloStateObserver The TelloStateObserver provides a way of observing the state variables and visualizing them in real time on a live matlab plot while accepting vertical mouse or trackpad motion as control input for altitude control while the selected states are observed and collected. The class is used as follows. Call the class by passing the following arguments. The controller 'tc' is the ony required positionial argument. The follwoing are optional named arguments that can be passed in addition. Pass them like regular matlab named arguments.observers : Cell of strings. These are those state variables you ony wish to observe and visualize in real time but not save or collect.collectors : Cell of strings. Like observers, and wish to save after running script.limitAltitude : Impose an approximate altitude limitn_samples : Number of samples to observe or run script for after which the controller issues a commanad to land the drone.Example usage:tso = TelloStateObserver(tc,"observers",{'h'},'collectors',{'h','vgz','agz'},limitAltitude=20,n_samples=100);Typical ExampleThis example connects to the Ryze Tello Drone over WIFI and observes in real time the selected state variables. Recommended not to run in a live script. Recommended in a default .m script. Check example script 'tello_altitude_rc.m'clear;clc;close all; %clear and close all workspace variables and pre-existing figures resp.tc = TelloControl; %initialize controllertc.initTello(); %initialize onboard tello sdkinitializing RYZE TELLO SDK...ok: SDK initialization successful on IP: 192.168.10.1 at PORT: 8889tc.getTelloState() %get and display initial states of drone - returns struct class wtih state variables as fieldnamesans = struct with fields: pitch: 0 roll: 0 yaw: 0 vgx: 0 vgy: 0 vgz: 0 templ: 86 temph: 88 tof: 10 h: 0 bat: 70 baro: 367.3100 time: 2 agx: -1 agy: 10 agz: -998Pass the controller 'tc' to the TelloStateObserver class and initial the TelloStateObserver class with chosen arguments. collectors, observers, n_samples and limitAltitude. Obsercers can be equal to collectors.tso = TelloStateObserver(tc,"observers",{'h'},'collectors',{'h','vgz','agz'},limitAltitude=20,n_samples=100);[collected,observed,input] = tso.stateObserve(); %run observer to collect and visualize state variables in real timeElapsed time is 0.094937 seconds.Elapsed time is 0.102760 seconds.Elapsed time is 0.114103 seconds.Elapsed time is 0.091744 seconds.Elapsed time is 0.098859 seconds.Elapsed time is 0.101793 seconds.Elapsed time is 0.101825 seconds.Elapsed time is 0.110450 seconds.Elapsed time is 0.093097 seconds....%post process collected states and savedisp('saving state collected state variables and input...')saving state collected state variables and input...telloStateData = {};telloStateData.states = collected;telloStateData.input = input;save('tellosStateData.mat','telloStateData')

WIlliam Akuffo /matlabcentral/profile/13006323-william-akuffo
128348 2023-04-23T21:22:44Z 2023-04-23T21:22:44Z ee ee

ee

Michal /matlabcentral/profile/29920219-michal