Month: June 2024
More Threat Intelligence Content in MDTI, TA Enables Better Security Outcomes
Microsoft threat intelligence empowers our customers to keep up with the global threat landscape and understand the threats and vulnerabilities most relevant to their organization. We are excited to announce that we have recently accelerated the speed and scale at which we publish threat intelligence, giving our customers more critical security insights, data, and guidance than ever before.
This blog will show how our 10,000 interdisciplinary experts and applied scientists reason over more than 78 trillion daily threat signals to continuously add to our understanding of threat actors and activity. It will also show how this increased publishing cadence in Microsoft Defender Threat Intelligence (MDTI), Threat Analytics, and Copilot for Security helps enrich and contextualize hundreds of thousands of security alerts while enhancing customers’ overall cybersecurity programs.
Increased Intel Profiles
Microsoft has published 270 new Intel profiles over the past year to help customers maintain situational awareness around the threat activity, techniques, vulnerabilities, and the more than 300 named actors Microsoft tracks. These digital compendiums of intelligence help organizations stay informed about potential threats, including Indicators of Compromise (IOCs), historical data, mitigation strategies, and advanced hunting queries. Intel profiles are continuously maintained and updated by Microsoft’s threat intelligence team, which added 24 new Intel profiles in May alone, including 10 Activity Profiles, 4 Actor Profiles, 5 Technique Profiles, and 5 Vulnerability Profiles.
Intel profiles are published to both MDTI and Threat Analytics, which can be found under the “Threat Intelligence” blade in the left-hand navigation menu in the Defender XDR Portal. In Threat Analytics, customers can understand how the content in Intel profiles relates to devices and vulnerabilities in their environment. In MDTI, Intel Profiles enhance security analyst triage, incident response, threat hunting, and vulnerability management workflows.
In Copilot for Security, customers can quickly retrieve information from intel profiles to contextualize artifacts and correlate MDTI and Threat Analytics content and data with other security information from Defender XDR, such as incidents and hunting activities, to help customers assess their vulnerabilities and quickly understand the broader scope of an attack. For example, Copilot can reason over vulnerability intelligence in MDTI and Threat Analytics to deliver a customized, prioritized list based on a customer organization’s unique security posture.
Enhanced OSINT
Microsoft has also added to the breadth of intelligence we make available to customers, improving the quantity and depth of open-source intelligence (OSINT). Microsoft’s threat intelligence teams have begun adding 500% more OSINT to MDTI since mid-March to capture more insights for our customers to apply to their security programs.
Because OSINT involves collecting and analyzing information from publicly available sources, such as the internet, public records, and media, Microsoft’s teams have begun enriching OSINT profiles with proprietary IOCs, recommendations, detections, and analysis to give customers even more situational awareness and actionable insights around threat activity analyzed across the industry. In May alone, our threat intelligence teams published and enriched more than 50 OSINT articles in MDTI.
These OSINT articles are cross-linked to other threat intelligence in MDTI to enable analysts to understand how threat activity is connected. In Copilot, customers can quickly retrieve information on indicators related to this OSINT, including IP addresses and domains, and contextualize artifacts with content such as threat articles and intel profiles.
Microsoft Defender XDR Threat Analytics
Microsoft’s teams build detections based on content from MDTI and Threat Analytics to help customers detect, understand, and address related activities. In the Threat Analytics portal, Microsoft’s threat intelligence teams provide security recommendations, which can be tracked by customers within the product. The portal also shows affected endpoints using Microsoft Defender for Vulnerability Management data and lists any impacted devices associated with the alerts. In May, Threat Analytics generated 235,000 alerts.
Threat Intelligence published in Threat Analytics is crucial for giving customers context on daily alerts. For instance, a recent Technique Profile for PowerShell led to over 1.3 million alerts across Microsoft security products.
New to MDTI? Here’s where to start
If you are interested in learning more about MDTI and how it can help you unmask and neutralize modern adversaries and cyberthreats such as ransomware, and to explore the features and benefits of MDTI please visit the MDTI product web page.
Also, be sure to contact our sales team to request a demo or a quote. Learn how you can begin using MDTI with the purchase of just one Copilot for Security SCU here.
Microsoft Tech Community – Latest Blogs –Read More
Wireless channel modeling: Error using plot Specify the coordinates as vectors or matrices of the same size, or as a vector and a matrix that share the same length in at least
betaTT=90; %
betaRR=90;
Ft_max=570;
Fr_max=570;
alphavT=0;
alphavR=0;
kappa=0;
Ut=45;
tau=0;
Freq_diff=0;
D=300;
Rt=40;
Fc=5.9*10^9;
C=3*10^8;
deltaT=2;
N=20;
% Conversion from degree to radian
betaT=(2*pi*betaTT)/360;
betaR=(2*pi*betaRR)/360;
alpha_0=(2*pi*Ut)/360;
lamda=0.15;
deltaR=linspace(0,2.5,200);
% CF_SB1=zeros(length(deltaT),length(deltaR));
% lambda=(Fc/C);
change_inT=40/300;
alphaT=linspace(-pi,pi,200);
% alphaT=zeros(1,length(alphaT));
for i=1:length(alphaT)
% if (alphaT(i)>-pi)&(alphaT(i)<=pi)
alphaR(i)=pi-(change_inT*sin(alphaT(i)));
end
for b=1:length(deltaR);
% for c=1:length(deltaT);
O=deltaT*cos(alphaT-betaT);
Q=deltaR(b).*cos(alphaR(i)-(betaR));
CF_SB1(b)=(1/(2*pi*besseli(0,kappa)))*trapz(alphaT,exp(sqrt(-1)*2*pi)*(Q+O));
end
figure(1)
plot(deltaR,real(CF_SB1),’–g’);
set(0,’DefaultAxesFontSize’,18);betaTT=90; %
betaRR=90;
Ft_max=570;
Fr_max=570;
alphavT=0;
alphavR=0;
kappa=0;
Ut=45;
tau=0;
Freq_diff=0;
D=300;
Rt=40;
Fc=5.9*10^9;
C=3*10^8;
deltaT=2;
N=20;
% Conversion from degree to radian
betaT=(2*pi*betaTT)/360;
betaR=(2*pi*betaRR)/360;
alpha_0=(2*pi*Ut)/360;
lamda=0.15;
deltaR=linspace(0,2.5,200);
% CF_SB1=zeros(length(deltaT),length(deltaR));
% lambda=(Fc/C);
change_inT=40/300;
alphaT=linspace(-pi,pi,200);
% alphaT=zeros(1,length(alphaT));
for i=1:length(alphaT)
% if (alphaT(i)>-pi)&(alphaT(i)<=pi)
alphaR(i)=pi-(change_inT*sin(alphaT(i)));
end
for b=1:length(deltaR);
% for c=1:length(deltaT);
O=deltaT*cos(alphaT-betaT);
Q=deltaR(b).*cos(alphaR(i)-(betaR));
CF_SB1(b)=(1/(2*pi*besseli(0,kappa)))*trapz(alphaT,exp(sqrt(-1)*2*pi)*(Q+O));
end
figure(1)
plot(deltaR,real(CF_SB1),’–g’);
set(0,’DefaultAxesFontSize’,18); betaTT=90; %
betaRR=90;
Ft_max=570;
Fr_max=570;
alphavT=0;
alphavR=0;
kappa=0;
Ut=45;
tau=0;
Freq_diff=0;
D=300;
Rt=40;
Fc=5.9*10^9;
C=3*10^8;
deltaT=2;
N=20;
% Conversion from degree to radian
betaT=(2*pi*betaTT)/360;
betaR=(2*pi*betaRR)/360;
alpha_0=(2*pi*Ut)/360;
lamda=0.15;
deltaR=linspace(0,2.5,200);
% CF_SB1=zeros(length(deltaT),length(deltaR));
% lambda=(Fc/C);
change_inT=40/300;
alphaT=linspace(-pi,pi,200);
% alphaT=zeros(1,length(alphaT));
for i=1:length(alphaT)
% if (alphaT(i)>-pi)&(alphaT(i)<=pi)
alphaR(i)=pi-(change_inT*sin(alphaT(i)));
end
for b=1:length(deltaR);
% for c=1:length(deltaT);
O=deltaT*cos(alphaT-betaT);
Q=deltaR(b).*cos(alphaR(i)-(betaR));
CF_SB1(b)=(1/(2*pi*besseli(0,kappa)))*trapz(alphaT,exp(sqrt(-1)*2*pi)*(Q+O));
end
figure(1)
plot(deltaR,real(CF_SB1),’–g’);
set(0,’DefaultAxesFontSize’,18); space-time-frequency correlation function MATLAB Answers — New Questions
How do I install matlab engine to be able to use matlab functions in an anaconda environment?
I am using MATLAB R2024a and anaconda v24.1.2. I am trying to install matlab.engine on a specific anaconda environment, but when I naviagte to the setup.py file in the matlabroot directory tree I get the error:
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ and “easy_install“.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://github.com/pypa/setuptools/issues/917 for details.
********************************************************************************
!!
self.initialize_options()
TEST FAILED: C:Userssteve.condapkgsLibsite-packages does NOT support .pth files
bad install directory or PYTHONPATH
You are attempting to install a package to a directory that is not
on PYTHONPATH and which Python does not read ".pth" files from. The
installation directory you specified (via –install-dir, –prefix, or
the distutils default setting) was:
C:Userssteve.condapkgsLibsite-packages
and your PYTHONPATH environment variable currently contains:
”
Here are some of your options for correcting the problem:
* You can choose a different installation directory, i.e., one that is
on PYTHONPATH or supports .pth files
* You can add the installation directory to the PYTHONPATH environment
variable. (It must then also be on PYTHONPATH whenever you run
Python and want to use the package(s) you are installing.)
* You can set up the installation directory to support ".pth" files by
using one of the approaches described here:
https://setuptools.pypa.io/en/latest/deprecated/easy_install.html#custom-installation-locations
Please make the appropriate changes for your system and try again.
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptoolscommandsdist.py:117: SetuptoolsDeprecationWarning: `build_py` command does not inherit from setuptools’ `build_py`.
!!
********************************************************************************
Custom ‘build_py’ does not implement ‘get_data_files_without_manifest’.
Please extend command classes from setuptools instead of distutils.
See https://peps.python.org/pep-0632/ for details.
********************************************************************************
!!
self._add_data_files(self._safe_data_files(build_py))
zip_safe flag not set; analyzing archive contents…
matlab.__pycache__.__init__.cpython-311: module references __file__
matlab.__pycache__.__init__.cpython-311: module references __path__
matlab.engine.__pycache__.__init__.cpython-311: module references __file__
(3d_model_analysis) C:Program FilesMATLABR2024aexternenginespython>python setup.py install –prefix "C:/Users/steve/.conda/pkgs"
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ and “easy_install“.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://github.com/pypa/setuptools/issues/917 for details.
********************************************************************************
!!
self.initialize_options()
TEST FAILED: C:Userssteve.condapkgsLibsite-packages does NOT support .pth files
bad install directory or PYTHONPATH
You are attempting to install a package to a directory that is not
on PYTHONPATH and which Python does not read ".pth" files from. The
installation directory you specified (via –install-dir, –prefix, or
the distutils default setting) was:
C:Userssteve.condapkgsLibsite-packages
and your PYTHONPATH environment variable currently contains:
”
Here are some of your options for correcting the problem:
* You can choose a different installation directory, i.e., one that is
on PYTHONPATH or supports .pth files
* You can add the installation directory to the PYTHONPATH environment
variable. (It must then also be on PYTHONPATH whenever you run
Python and want to use the package(s) you are installing.)
* You can set up the installation directory to support ".pth" files by
using one of the approaches described here:
https://setuptools.pypa.io/en/latest/deprecated/easy_install.html#custom-installation-locations
Please make the appropriate changes for your system and try again.
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptoolscommandsdist.py:117: SetuptoolsDeprecationWarning: `build_py` command does not inherit from setuptools’ `build_py`.
!!
********************************************************************************
Custom ‘build_py’ does not implement ‘get_data_files_without_manifest’.
Please extend command classes from setuptools instead of distutils.
See https://peps.python.org/pep-0632/ for details.
********************************************************************************
!!
self._add_data_files(self._safe_data_files(build_py))
zip_safe flag not set; analyzing archive contents…
matlab.__pycache__.__init__.cpython-311: module references __file__
matlab.__pycache__.__init__.cpython-311: module references __path__
matlab.engine.__pycache__.__init__.cpython-311: module references __file__I am using MATLAB R2024a and anaconda v24.1.2. I am trying to install matlab.engine on a specific anaconda environment, but when I naviagte to the setup.py file in the matlabroot directory tree I get the error:
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ and “easy_install“.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://github.com/pypa/setuptools/issues/917 for details.
********************************************************************************
!!
self.initialize_options()
TEST FAILED: C:Userssteve.condapkgsLibsite-packages does NOT support .pth files
bad install directory or PYTHONPATH
You are attempting to install a package to a directory that is not
on PYTHONPATH and which Python does not read ".pth" files from. The
installation directory you specified (via –install-dir, –prefix, or
the distutils default setting) was:
C:Userssteve.condapkgsLibsite-packages
and your PYTHONPATH environment variable currently contains:
”
Here are some of your options for correcting the problem:
* You can choose a different installation directory, i.e., one that is
on PYTHONPATH or supports .pth files
* You can add the installation directory to the PYTHONPATH environment
variable. (It must then also be on PYTHONPATH whenever you run
Python and want to use the package(s) you are installing.)
* You can set up the installation directory to support ".pth" files by
using one of the approaches described here:
https://setuptools.pypa.io/en/latest/deprecated/easy_install.html#custom-installation-locations
Please make the appropriate changes for your system and try again.
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptoolscommandsdist.py:117: SetuptoolsDeprecationWarning: `build_py` command does not inherit from setuptools’ `build_py`.
!!
********************************************************************************
Custom ‘build_py’ does not implement ‘get_data_files_without_manifest’.
Please extend command classes from setuptools instead of distutils.
See https://peps.python.org/pep-0632/ for details.
********************************************************************************
!!
self._add_data_files(self._safe_data_files(build_py))
zip_safe flag not set; analyzing archive contents…
matlab.__pycache__.__init__.cpython-311: module references __file__
matlab.__pycache__.__init__.cpython-311: module references __path__
matlab.engine.__pycache__.__init__.cpython-311: module references __file__
(3d_model_analysis) C:Program FilesMATLABR2024aexternenginespython>python setup.py install –prefix "C:/Users/steve/.conda/pkgs"
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ and “easy_install“.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://github.com/pypa/setuptools/issues/917 for details.
********************************************************************************
!!
self.initialize_options()
TEST FAILED: C:Userssteve.condapkgsLibsite-packages does NOT support .pth files
bad install directory or PYTHONPATH
You are attempting to install a package to a directory that is not
on PYTHONPATH and which Python does not read ".pth" files from. The
installation directory you specified (via –install-dir, –prefix, or
the distutils default setting) was:
C:Userssteve.condapkgsLibsite-packages
and your PYTHONPATH environment variable currently contains:
”
Here are some of your options for correcting the problem:
* You can choose a different installation directory, i.e., one that is
on PYTHONPATH or supports .pth files
* You can add the installation directory to the PYTHONPATH environment
variable. (It must then also be on PYTHONPATH whenever you run
Python and want to use the package(s) you are installing.)
* You can set up the installation directory to support ".pth" files by
using one of the approaches described here:
https://setuptools.pypa.io/en/latest/deprecated/easy_install.html#custom-installation-locations
Please make the appropriate changes for your system and try again.
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptoolscommandsdist.py:117: SetuptoolsDeprecationWarning: `build_py` command does not inherit from setuptools’ `build_py`.
!!
********************************************************************************
Custom ‘build_py’ does not implement ‘get_data_files_without_manifest’.
Please extend command classes from setuptools instead of distutils.
See https://peps.python.org/pep-0632/ for details.
********************************************************************************
!!
self._add_data_files(self._safe_data_files(build_py))
zip_safe flag not set; analyzing archive contents…
matlab.__pycache__.__init__.cpython-311: module references __file__
matlab.__pycache__.__init__.cpython-311: module references __path__
matlab.engine.__pycache__.__init__.cpython-311: module references __file__ I am using MATLAB R2024a and anaconda v24.1.2. I am trying to install matlab.engine on a specific anaconda environment, but when I naviagte to the setup.py file in the matlabroot directory tree I get the error:
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ and “easy_install“.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://github.com/pypa/setuptools/issues/917 for details.
********************************************************************************
!!
self.initialize_options()
TEST FAILED: C:Userssteve.condapkgsLibsite-packages does NOT support .pth files
bad install directory or PYTHONPATH
You are attempting to install a package to a directory that is not
on PYTHONPATH and which Python does not read ".pth" files from. The
installation directory you specified (via –install-dir, –prefix, or
the distutils default setting) was:
C:Userssteve.condapkgsLibsite-packages
and your PYTHONPATH environment variable currently contains:
”
Here are some of your options for correcting the problem:
* You can choose a different installation directory, i.e., one that is
on PYTHONPATH or supports .pth files
* You can add the installation directory to the PYTHONPATH environment
variable. (It must then also be on PYTHONPATH whenever you run
Python and want to use the package(s) you are installing.)
* You can set up the installation directory to support ".pth" files by
using one of the approaches described here:
https://setuptools.pypa.io/en/latest/deprecated/easy_install.html#custom-installation-locations
Please make the appropriate changes for your system and try again.
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptoolscommandsdist.py:117: SetuptoolsDeprecationWarning: `build_py` command does not inherit from setuptools’ `build_py`.
!!
********************************************************************************
Custom ‘build_py’ does not implement ‘get_data_files_without_manifest’.
Please extend command classes from setuptools instead of distutils.
See https://peps.python.org/pep-0632/ for details.
********************************************************************************
!!
self._add_data_files(self._safe_data_files(build_py))
zip_safe flag not set; analyzing archive contents…
matlab.__pycache__.__init__.cpython-311: module references __file__
matlab.__pycache__.__init__.cpython-311: module references __path__
matlab.engine.__pycache__.__init__.cpython-311: module references __file__
(3d_model_analysis) C:Program FilesMATLABR2024aexternenginespython>python setup.py install –prefix "C:/Users/steve/.conda/pkgs"
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptools_distutilscmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
********************************************************************************
Please avoid running “setup.py“ and “easy_install“.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://github.com/pypa/setuptools/issues/917 for details.
********************************************************************************
!!
self.initialize_options()
TEST FAILED: C:Userssteve.condapkgsLibsite-packages does NOT support .pth files
bad install directory or PYTHONPATH
You are attempting to install a package to a directory that is not
on PYTHONPATH and which Python does not read ".pth" files from. The
installation directory you specified (via –install-dir, –prefix, or
the distutils default setting) was:
C:Userssteve.condapkgsLibsite-packages
and your PYTHONPATH environment variable currently contains:
”
Here are some of your options for correcting the problem:
* You can choose a different installation directory, i.e., one that is
on PYTHONPATH or supports .pth files
* You can add the installation directory to the PYTHONPATH environment
variable. (It must then also be on PYTHONPATH whenever you run
Python and want to use the package(s) you are installing.)
* You can set up the installation directory to support ".pth" files by
using one of the approaches described here:
https://setuptools.pypa.io/en/latest/deprecated/easy_install.html#custom-installation-locations
Please make the appropriate changes for your system and try again.
C:Userssteve.condaenvs3d_model_analysisLibsite-packagessetuptoolscommandsdist.py:117: SetuptoolsDeprecationWarning: `build_py` command does not inherit from setuptools’ `build_py`.
!!
********************************************************************************
Custom ‘build_py’ does not implement ‘get_data_files_without_manifest’.
Please extend command classes from setuptools instead of distutils.
See https://peps.python.org/pep-0632/ for details.
********************************************************************************
!!
self._add_data_files(self._safe_data_files(build_py))
zip_safe flag not set; analyzing archive contents…
matlab.__pycache__.__init__.cpython-311: module references __file__
matlab.__pycache__.__init__.cpython-311: module references __path__
matlab.engine.__pycache__.__init__.cpython-311: module references __file__ matlab.engine, python, matlab MATLAB Answers — New Questions
Logic statement error checking an array within a cell within a table
Hi,
I am trying to write an if condition where if a variable name (in this case ‘pressure’) appears in an array that is stored in a cell of the table "podList", then the condition is true:
if 1 == ismember(‘pressure’,settingsSet.podList(currentPod,VarNames).Properties.VariableNames)
I am getting the error: "Unrecognized table row name ‘SPODD8’."
The variable "currentPod" changes in a higher loop and the first check is ‘SPODD8’
See attached pictures for the structure of the table podList and VarNames.
podList is currently a 19×4 but can change to more or fewer rows based on the input pods (which are research instruments)
VarNames is currently a 1×36 cell but could aslo change based on the type of pod used. For my applications it is always either a 1×36 or a 1×42.
I also am not sure if I am calling out the row of VarNames correctly here as I haven’t gotten that deep, so any help suggestions there would be appreciated!
Thank you in advance.Hi,
I am trying to write an if condition where if a variable name (in this case ‘pressure’) appears in an array that is stored in a cell of the table "podList", then the condition is true:
if 1 == ismember(‘pressure’,settingsSet.podList(currentPod,VarNames).Properties.VariableNames)
I am getting the error: "Unrecognized table row name ‘SPODD8’."
The variable "currentPod" changes in a higher loop and the first check is ‘SPODD8’
See attached pictures for the structure of the table podList and VarNames.
podList is currently a 19×4 but can change to more or fewer rows based on the input pods (which are research instruments)
VarNames is currently a 1×36 cell but could aslo change based on the type of pod used. For my applications it is always either a 1×36 or a 1×42.
I also am not sure if I am calling out the row of VarNames correctly here as I haven’t gotten that deep, so any help suggestions there would be appreciated!
Thank you in advance. Hi,
I am trying to write an if condition where if a variable name (in this case ‘pressure’) appears in an array that is stored in a cell of the table "podList", then the condition is true:
if 1 == ismember(‘pressure’,settingsSet.podList(currentPod,VarNames).Properties.VariableNames)
I am getting the error: "Unrecognized table row name ‘SPODD8’."
The variable "currentPod" changes in a higher loop and the first check is ‘SPODD8’
See attached pictures for the structure of the table podList and VarNames.
podList is currently a 19×4 but can change to more or fewer rows based on the input pods (which are research instruments)
VarNames is currently a 1×36 cell but could aslo change based on the type of pod used. For my applications it is always either a 1×36 or a 1×42.
I also am not sure if I am calling out the row of VarNames correctly here as I haven’t gotten that deep, so any help suggestions there would be appreciated!
Thank you in advance. logic statements, row name, table, cell, dot indexing MATLAB Answers — New Questions
Recurring employee survey that goes out multiple times in a single day.
As the subject line suggests, is there a way to have a survey go out several times throughout a single employee shift? Our people work 12-hr shifts in order to maintain a 24/7/365 operation. We are looking to conduct workload & stress-level assessments at specific times throughout the employees’ shift. For example: the survey would go out to the employee at 6am, 11am, and 4pm for a dayshift worker and then 6pm, 11pm, 4am for our nightshift folks.
It would be the same questions each time in order to trend the differences.
As the subject line suggests, is there a way to have a survey go out several times throughout a single employee shift? Our people work 12-hr shifts in order to maintain a 24/7/365 operation. We are looking to conduct workload & stress-level assessments at specific times throughout the employees’ shift. For example: the survey would go out to the employee at 6am, 11am, and 4pm for a dayshift worker and then 6pm, 11pm, 4am for our nightshift folks. It would be the same questions each time in order to trend the differences. Read More
A few issues with ASP.NET, HTML, and CSS.
What I am trying to do
– Get the div #menu to display menu in the center (horizontally and vertically) between and not past (horizontally and vertically) the logo images. Basically, center horizontally and vertically between the two logo images without going further then them…
– Figure out why there is such space between the content div and the footer. No clue but there is some white space and I am not sure where it is coming from.
Here is some of the code…
<%@ Master Language=”C#” AutoEventWireup=”true” CodeBehind=”Site1.master.cs” Inherits=”Corp_Template_2.Site1″ %>
<!DOCTYPE html>
<html>
<head runat=”server”>
<title>Corp Template 2</title>
<link rel=”stylesheet” type=”text/css” href=”~/StyleSheet1.css” />
<asp:ContentPlaceHolder ID=”head” runat=”server”>
</asp:ContentPlaceHolder>
</head>
<body>
<form id=”form1″ runat=”server”>
<div id=”HeaderContainer”>
<div id=”HeaderLogo”>
<asp:ImageButton ID=”ImageButton1″ runat=”server” ImageUrl=”~/Media/Corp Logo Sample Test.jpg” Width=”200px”/>
</div>
<div id=”MainTile” >
<asp:ImageButton ID=”ImageButton2″ runat=”server” ImageUrl=”~/Media/Corp Logo Sample Test.jpg” Width=”200px”/>
</div>
<div id=”Menu”>
<asp:Menu ID=”Menu1″ runat=”server” DataSourceID=”SiteMapDataSource1″ Orientation=”Horizontal” StaticDisplayLevels=”2″></asp:Menu>
<asp:SiteMapDataSource runat=”server” ID=”SiteMapDataSource1″></asp:SiteMapDataSource>
</div>
</div>
<div id=”MainContentPlaceHolder1″>
<asp:ContentPlaceHolder ID=”ContentPlaceHolder1″ runat=”server”>
</asp:ContentPlaceHolder>
</div>
<div id=”Footer”>
<h4 style=”color: white;”>This is the footer.</h4>
</div>
</form>
</body>
</html>
As for CSS.. Here it is.
body {
}
#Footer
{
width: auto;
height: 75px;
background-color: black;
}
#HeaderContainer
{
overflow:hidden;
}
#HeaderLogo {
width: 200px;
float: left;
}
#MainTile
{
width:200px;
float: right;
}
#Menu
{
margin-left: 200px;
margin-right: 200px;
display: flex;
justify-content: center;
text-align: center;
}
#TestBar
{
width: 100%;
height: 100px;
background-color: silver;
}
#MainContentPlaceHolder1
{
min-height: 550px;
border: 5px solid black;
}
Any ideas or suggestions?
Thank you very much.
-Cr8tive
What I am trying to do- Get the div #menu to display menu in the center (horizontally and vertically) between and not past (horizontally and vertically) the logo images. Basically, center horizontally and vertically between the two logo images without going further then them… – Figure out why there is such space between the content div and the footer. No clue but there is some white space and I am not sure where it is coming from. Here is some of the code… <%@ Master Language=”C#” AutoEventWireup=”true” CodeBehind=”Site1.master.cs” Inherits=”Corp_Template_2.Site1″ %><!DOCTYPE html><html><head runat=”server”><title>Corp Template 2</title><link rel=”stylesheet” type=”text/css” href=”~/StyleSheet1.css” /><asp:ContentPlaceHolder ID=”head” runat=”server”></asp:ContentPlaceHolder></head><body><form id=”form1″ runat=”server”><div id=”HeaderContainer”><div id=”HeaderLogo”><asp:ImageButton ID=”ImageButton1″ runat=”server” ImageUrl=”~/Media/Corp Logo Sample Test.jpg” Width=”200px”/></div><div id=”MainTile” ><asp:ImageButton ID=”ImageButton2″ runat=”server” ImageUrl=”~/Media/Corp Logo Sample Test.jpg” Width=”200px”/></div><div id=”Menu”><asp:Menu ID=”Menu1″ runat=”server” DataSourceID=”SiteMapDataSource1″ Orientation=”Horizontal” StaticDisplayLevels=”2″></asp:Menu><asp:SiteMapDataSource runat=”server” ID=”SiteMapDataSource1″></asp:SiteMapDataSource></div></div><div id=”MainContentPlaceHolder1″><asp:ContentPlaceHolder ID=”ContentPlaceHolder1″ runat=”server”></asp:ContentPlaceHolder></div><div id=”Footer”><h4 style=”color: white;”>This is the footer.</h4></div></form></body></html> As for CSS.. Here it is. body {}#Footer{width: auto;height: 75px;background-color: black;}#HeaderContainer{overflow:hidden;}#HeaderLogo {width: 200px;float: left;}#MainTile{width:200px;float: right;}#Menu{margin-left: 200px;margin-right: 200px;display: flex;justify-content: center;text-align: center; }#TestBar{width: 100%;height: 100px;background-color: silver;}#MainContentPlaceHolder1{min-height: 550px;border: 5px solid black;} Any ideas or suggestions? Thank you very much. -Cr8tive Read More
Having issues with auto filling dates in a sheet.
I am trying to create a table for my employees to track orders they are working. I want to make it as simple as possible for them, so I created a drop-down menu in column A for them to choose their name, a drop-down in column B for them to select the type of order, and I want column C to auto fill the date they made the entry. I used formula =IF([A2]<>[A2],””,TODAY()) and it worked for populating the date yesterday, but today when I opened the sheet, the dates from yesterday automatically changed to today. Is there a formula that will ensure the old entry dates remain and the new entries reflect the day they were entered moving forward?
I am trying to create a table for my employees to track orders they are working. I want to make it as simple as possible for them, so I created a drop-down menu in column A for them to choose their name, a drop-down in column B for them to select the type of order, and I want column C to auto fill the date they made the entry. I used formula =IF([A2]<>[A2],””,TODAY()) and it worked for populating the date yesterday, but today when I opened the sheet, the dates from yesterday automatically changed to today. Is there a formula that will ensure the old entry dates remain and the new entries reflect the day they were entered moving forward? Read More
Watch Kubota Environmental Engineering Use Cases Leveraging HoloLens 2!
Kubota Environmental Engineering (Japan) and Meister Corporation teamed up to develop technology for optimized inspections of infrastructure with HoloLens 2.
Read the full story and video:
Kubota Environmental Engineering (Japan) and Meister Corporation teamed up to develop technology for optimized inspections of infrastructure with HoloLens 2.
Read the full story and video:
English: Story + Video
Japanese: Story + Video
Can New Outlook Sent/Deleted Items for shared email mimic the classic registry outlook entries
The New Outlook does not put sent/deleted emails in the shared email, unless opening the share email in a new tab. Otherwise it puts these in the person’s sent/deleted folder.
In the classic outlook, this was controlled with registry entries. The directions I give to my user community work but are annoying because folks open a new shared-email tab everytime they launch the browser or want to use the desktop version. My user-community directions are:
Outlook in the web Browser:Option1, Open in a new Tab > Click on your Outlook profile (photo/initials top right, not the browser profile) > Click on Open another mailbox > type in Shared email ID (optional, after starting to type, select Search Directory) > click on open > the mailbox opens in a new tab.Option2, Add to same browser tab as your Inbox > Hover cursor over Folder (immediately above your Inbox) > Click on … (right of Folder) > Add shared folder or mailbox > start typing email > select from listOption1.1 and Option2 (cellphone) are the only options where sent/deleted emails go to the shared email. Otherwise the emails need to be moved after the send/delete has completed.Outlook on cellphone: > Tap top left icon beside inbox > Tap gear icon (settings) > Tap Add Mail Account > Tap Add Shared MailboxNew Outlook on the desktop (icon on task bar): Shows up automatically. > On left side, click on drop-down arrow beside Shared with me (below Search Folders) > Click on appropriate drop-down to see folders
The New Outlook does not put sent/deleted emails in the shared email, unless opening the share email in a new tab. Otherwise it puts these in the person’s sent/deleted folder. In the classic outlook, this was controlled with registry entries. The directions I give to my user community work but are annoying because folks open a new shared-email tab everytime they launch the browser or want to use the desktop version. My user-community directions are:Outlook in the web Browser:Option1, Open in a new Tab > Click on your Outlook profile (photo/initials top right, not the browser profile) > Click on Open another mailbox > type in Shared email ID (optional, after starting to type, select Search Directory) > click on open > the mailbox opens in a new tab.Option2, Add to same browser tab as your Inbox > Hover cursor over Folder (immediately above your Inbox) > Click on … (right of Folder) > Add shared folder or mailbox > start typing email > select from listOption1.1 and Option2 (cellphone) are the only options where sent/deleted emails go to the shared email. Otherwise the emails need to be moved after the send/delete has completed.Outlook on cellphone: > Tap top left icon beside inbox > Tap gear icon (settings) > Tap Add Mail Account > Tap Add Shared MailboxNew Outlook on the desktop (icon on task bar): Shows up automatically. > On left side, click on drop-down arrow beside Shared with me (below Search Folders) > Click on appropriate drop-down to see folders Read More
Teams Room doesn’t broadcast video if it’s the first to join the meeting
We are a small association spread thinly around the world. We have two Microsoft Teams Room devices in our Washington Office. One is a Poly Studio X30 and the other is a Yealink A30. In both cases, we have experienced a behavior – almost repeatable at will – where, if the X30 or A30 joins a scheduled meeting FIRST – no video is broadcast from the room. But if the X30 or A30 joins SECOND or later – then the video from the room is seen – no problems.
Similarly – if someone calls the room directly via Teams – they will see whoever is in the room. However, if the room calls someone directly – or creates a “Meet Now” meeting and adds a user – they will not see the room.
This is a terrible bug. I’ve opened a ticket via our M365 admin portal – but my hopes are not high for that avenue of service.
Thoughts?
We are a small association spread thinly around the world. We have two Microsoft Teams Room devices in our Washington Office. One is a Poly Studio X30 and the other is a Yealink A30. In both cases, we have experienced a behavior – almost repeatable at will – where, if the X30 or A30 joins a scheduled meeting FIRST – no video is broadcast from the room. But if the X30 or A30 joins SECOND or later – then the video from the room is seen – no problems. Similarly – if someone calls the room directly via Teams – they will see whoever is in the room. However, if the room calls someone directly – or creates a “Meet Now” meeting and adds a user – they will not see the room. This is a terrible bug. I’ve opened a ticket via our M365 admin portal – but my hopes are not high for that avenue of service. Thoughts? Read More
New Translation Functions in Excel: TRANSLATE and DETECTLANGUAGE
Hey Microsoft 365 Insiders,
Great news for Excel enthusiasts!
Excel now includes powerful translation functions, allowing you to translate and detect languages directly within your spreadsheets. The new TRANSLATE and DETECTLANGUAGE functions help break down language barriers, making your data more accessible and your workflow smoother.
Discover how it works in our latest blog post by Gedion Alemayehu, Product Manager on the Excel team: New Translation Functions in Excel: TRANSLATE and DETECTLANGUAGE
NOTE:
These are preview functions. Their signature and results may change substantially before being broadly released, based on your feedback. So, we do not recommend using these functions in important workbooks until they are generally available.
Thanks!
Perry Sjogren
Microsoft 365 Insider Social Media Manager
Become a Microsoft 365 Insider and gain exclusive access to new features and help shape the future of Microsoft 365. Join Now: Windows | Mac | iOS | Android
Hey Microsoft 365 Insiders,
Great news for Excel enthusiasts!
Excel now includes powerful translation functions, allowing you to translate and detect languages directly within your spreadsheets. The new TRANSLATE and DETECTLANGUAGE functions help break down language barriers, making your data more accessible and your workflow smoother.
Discover how it works in our latest blog post by Gedion Alemayehu, Product Manager on the Excel team: New Translation Functions in Excel: TRANSLATE and DETECTLANGUAGE
NOTE:
These are preview functions. Their signature and results may change substantially before being broadly released, based on your feedback. So, we do not recommend using these functions in important workbooks until they are generally available.
Thanks!
Perry Sjogren
Microsoft 365 Insider Social Media Manager
Become a Microsoft 365 Insider and gain exclusive access to new features and help shape the future of Microsoft 365. Join Now: Windows | Mac | iOS | Android Read More
Planner App no longer showing Private/To Do tasks or Flagged Emails
I noticed that the Planner App in Microsoft Teams is no longer showing Private/To Do tasks or Flagged emails. This is true in both the Teams Desktop client as well as Teams for the Web. However, they do appear in the Planner app within the Mobile Teams app. I am on targeted release and have attached my version information.
I confirmed they are still showing up for a user that is not on targeted release…so I assume there is an issue with the newest version of Teams. Does anyone else notice this?
I noticed that the Planner App in Microsoft Teams is no longer showing Private/To Do tasks or Flagged emails. This is true in both the Teams Desktop client as well as Teams for the Web. However, they do appear in the Planner app within the Mobile Teams app. I am on targeted release and have attached my version information. I confirmed they are still showing up for a user that is not on targeted release…so I assume there is an issue with the newest version of Teams. Does anyone else notice this? Read More
sharepoint issues
Hello
Please i need your help on this issue.
We shared a OneDrive folder with our client (external), and one of the people we’ve shared with can’t access it.
He gets an error code that says that didn’t work (I’ll include a picture of the error). Our permissions are set to “Anyone with a link can edit” and it’s password protected.
We need to figure out why he can’t access the folder and make it to where he can access it.
Hello Please i need your help on this issue. We shared a OneDrive folder with our client (external), and one of the people we’ve shared with can’t access it. He gets an error code that says that didn’t work (I’ll include a picture of the error). Our permissions are set to “Anyone with a link can edit” and it’s password protected. We need to figure out why he can’t access the folder and make it to where he can access it. Read More
Azure Sphere – Image signing certificate update coming soon
Azure Sphere is updating keys used in image signing, following best practices for security. The only impact on production devices is that they will experience a reboot when we release the new keys to devices, similar to the reboot during an OS update. For certain manufacturing, development, or field servicing scenarios where the Azure Sphere OS is not up to date, you may need to take extra steps to ensure that newly signed images are trusted by the device.
What is an image signing key used for, and why update it?
Azure Sphere devices only trust signed images, and the signature is verified every time software is loaded. Every production software image on the device – including the bootloader, the Linux kernel, the OS, and customer applications, as well as any capability file used to unlock development on or field servicing of devices – is signed by the Azure Sphere Security Service (AS3), based on image signing keys held by Microsoft.
As for any modern public/private key system, the keys are rotated every few years. Note that once an image is signed, it generally remains trusted by the device. There is a separate mechanism based on one-time programmable fuses to revoke older OS software with known vulnerabilities such as DirtyPipe and prevent rollback attacks – we used this most recently in the 22.09 OS release.
When is this happening?
The next update to the image signing certificate is targeted for July 24th. When that happens, all uses of AS3 to generate new production-signed application images or capabilities will result in images signed using the new key.
Ahead of that, we will update the trusted key-store (TKS) of Azure Sphere devices, so that the TKS incorporates all existing keys and the new keys. This update will be automatically applied to every connected device over-the-air. Note that device TKS updates happen ahead of any pending updates to OS or application images. In other words, if a device comes online that is due to receive a new-key-signed application or OS, it will first update the TKS so that it trusts that application or OS.
We are targeting update of the TKS for July 10th. The next time that each Azure Sphere device checks for updates (or up to 24 hours later if using the update deferral feature), the device will apply the TKS update and reboot. The TKS update is independent of an OS update, and it will apply to devices using both the retail and retail-eval feeds.
Do I need to take any action?
No action is required for production-deployed devices. There are three non-production scenarios where you may need to take extra steps to ensure that newly signed images are trusted by the device.
The first is for manufacturing. If you update and re-sign the application image you use in manufacturing, but you are using an old OS image with an old TKS, then that OS will not trust the application. Follow these instructions to sideload the new TKS as part of manufacturing.
The second is during development. If you have a dev board that you are sideloading either a production-signed image or a capability to, and it has an old TKS, then it will not trust that capability or image. This may make the “enable-development” command fail with an error such as “The device did not accept the device capability configuration.” This can be remedied by connecting the device to a network and checking that the device is up-to-date. Another method is to recover the device – the recovery images always include the latest TKS.
The third is for field servicing. During field servicing you need to apply a capability to the device as it has been locked down after manufacturing using the DeviceComplete state. However, if that capability is signed using the new image signing key and the device has been offline – so it has not updated its TKS – then the OS will not trust the capability. Follow these instructions to sideload the new TKS before applying the field servicing capability.
Thanks for reading this blog post. I hope it has been informative in how Azure Sphere uses signed images and best practices such as key rotation to keep devices secured through their lifetime.
Microsoft Tech Community – Latest Blogs –Read More
¡Guía de Estudios para la certificación GitHub Foundations!
GitHub es la plataforma donde puedes colaborar con compañeros de equipo, hacer fork a proyectos, publicar tu propio software y compartir tu trabajo con el mundo. ¡Hay más! Comienza en la nueva era de la productividad para programadores con GitHub Copilot – esta herramienta te ayudará a centrarte en lo que realmente importa: tu código
Aquí te compartimos una guía en español para ¡ayudarte a obtener la certificación de GitHub Foundations! Al certificarte en GitHub es como validar tus habilidades, credibilidad, confianza y conocimiento de las tecnologías y herramientas de desarrollo que utilizan más de 100 millones de desarrolladores en el mundo.
Reconocimiento en la Industria: una certificación de GitHub le permite validar a las empresas, tus compañeros y clientes que tienes un profundo conocimiento de GitHub y de sus herramientas, por lo cual, puedes ofrecer grandes resultados en los proyectos que vas a participar.
Aumentos salariales: Muchos profesionales certificados reciben aumentos salariales, gracias a su experiencia verificada.
Explorar nuevas oportunidades: Con una certificación de GitHub, tendrás la confianza para explorar nuevas oportunidades laborales.
Aumenta tu confianza. Al obtener una certificación, los candidatos se sienten más seguros de sus habilidades, lo que los hace más decididos a tener éxito profesionalmente. Asimismo, te motiva a aprender más y te da una sensación de logro
Impulsa tu perfil: muestra tu certificado en sus redes sociales, como LinkedIn, para obtener reconocimiento profesional.
Con la certificación GitHub Foundations puedes demostrar tu comprensión en temas y conceptos fundamentales de colaboración, contribución y trabajo en GitHub.
Este examen cubre los temas relacionados con: la colaboración, los productos de GitHub, los conceptos básicos de Git y el trabajo dentro de los repositorios de GitHub. Asimismo, se divide en los siguientes conocimientos, habilidades y temas específicos.
Área de conocimientos
Porcentaje del área en el examen
Área 1: Introducción a Git y GitHub
22%
Área 2: Trabajar con repositorios de GitHub
8%
Área 3: Funciones de colaboración
30%
Área 4: Desarrollo Moderno
13%
Área 5: Administración de Proyectos
7%
Área 6: Privacidad, Seguridad y Administración
10%
Área 7: Beneficios de la comunidad de GitHub
10%
Puedes seguir esta guía gratuita para aprender y practicar a tu propio paso en español aka.ms/GuiaEstudioGF – se basa en los dominios de Certificación.
Es un fácil viaje de aprendizaje para principiantes y está diseñado para prepararte sobre los conceptos y productos fundamentales de GitHub.
Después de completar tu entrenamiento, estarás listo para presentar el examen de certificación y demostrar tus habilidades. El examen cuesta $99USD, pero por tiempo limitado (hasta el momento de esta fecha de publicación), puedes obtener un descuento del 50% en el examen GitHub Foundations. Estos son los pasos para agendar tu examen:
1. Visita la página de registro para la certificación e inicia sesión con tu cuenta personal de GitHub
2. En el menú de la página web, selecciona el examen de certificación “GitHub Foundations”.
3. Haz clic en “schedule exam” (agendar examen).
4. Elige la fecha y hora que más te convenga entre los horarios disponibles.
5. Paga el costo del examen utilizando tu método de pago preferido.
6. Confirma los detalles de tu examen y revisa tu correo electrónico para ver el link de confirmación.
7. El día del examen, sigue las instrucciones del correo electrónico para acceder a la plataforma de examen e iniciar el examen.
¿Tienes preguntas generales sobre el examen de certificación de GitHub, los requisitos previos recomendados, detalles del examen, etc.? Visita la lista completa de preguntas frecuentes. Puedes encontrar información adicional sobre el examen en el manual del candidato.
Si tienes más preguntas o problemas con la plataforma – favor de contactarnos en aka.ms/github-support
Si ya te certificaste: ¡comparte tu experiencia y tu viaje de aprendizaje con nosotros en los comentarios! Nos encantaría conocer tu experiencia con la plataforma, horarios, tiempos, idioma, etc.
Microsoft Tech Community – Latest Blogs –Read More
Hello friends, can anyone please tell me that what is the best way to find the initial guess for dual solution using BVP4C code in matlab?
I try with hit and trial base for long time but unfortunately it will not done. So please help me that how I choose the initial guess to find the lower branch solution.I try with hit and trial base for long time but unfortunately it will not done. So please help me that how I choose the initial guess to find the lower branch solution. I try with hit and trial base for long time but unfortunately it will not done. So please help me that how I choose the initial guess to find the lower branch solution. bvp4c, numerical, fluid mechanics MATLAB Answers — New Questions
Delsys trigno and matlab connection prosthetic arm
Hello all,
I am currently trying to connect my Delsys Trigno to matlab, for matlab to recieve live SEMG signals. Does anyone know how to form this connection, or is there a certain script I must run first to build this connection? I am trying to use these signals to move a prosthetic arm in the futureHello all,
I am currently trying to connect my Delsys Trigno to matlab, for matlab to recieve live SEMG signals. Does anyone know how to form this connection, or is there a certain script I must run first to build this connection? I am trying to use these signals to move a prosthetic arm in the future Hello all,
I am currently trying to connect my Delsys Trigno to matlab, for matlab to recieve live SEMG signals. Does anyone know how to form this connection, or is there a certain script I must run first to build this connection? I am trying to use these signals to move a prosthetic arm in the future delsys trigno, simulink MATLAB Answers — New Questions
How does Matlabs Symbolic Math Toolbox always finds an analytical eigendecomposition for arbitrary polynomial matrices?
Hi,
I am a bit confused about the inner working of the symbolic math toolbox.
I always thought the symbolic math toolbox does a calculation in the background and therefore provides an exact analytical result, or notifies the user that the solution is not analytical.
But how does the "eig(…)" function then comes up with an result for an arbitrary polynomial matrix?
THe following codes shows two options to calculate the eigenvalues of an arbitrary matrix A.
Option 1 uses eig(A), to directly calculate the analytical expression for the eigenvalues.
Option 2 first constructs the characteristic polynomial and then roots it.
The following example always produces an analytical solution for option 1. But does return a "root(…)" object for option 2. If I understand correctly, the "root(…)" is used by Matlab, in case the to-be-rooted polynomial can not be rooted analytically (Abel-Ruffini Theorem?).
For me this begs the question, is the eigenvalue polynomial from eig(…) truly analytic?
% Build a random matrix:
Nlayer = 3;
syms z lambda
for idex = 1:Nlayer
A(:,:)= rand(3,3)*z^idex;
end
% Option 1: Use eig() directly
opt1_ev= eig(A);
% Option 2: root charpoly "by hand"
% Build characteristic Poly
charPoly = charpoly(A, ‘lambda’);
% Root characteristic poly
opt2_ev = solve(charPoly == 0, lambda);Hi,
I am a bit confused about the inner working of the symbolic math toolbox.
I always thought the symbolic math toolbox does a calculation in the background and therefore provides an exact analytical result, or notifies the user that the solution is not analytical.
But how does the "eig(…)" function then comes up with an result for an arbitrary polynomial matrix?
THe following codes shows two options to calculate the eigenvalues of an arbitrary matrix A.
Option 1 uses eig(A), to directly calculate the analytical expression for the eigenvalues.
Option 2 first constructs the characteristic polynomial and then roots it.
The following example always produces an analytical solution for option 1. But does return a "root(…)" object for option 2. If I understand correctly, the "root(…)" is used by Matlab, in case the to-be-rooted polynomial can not be rooted analytically (Abel-Ruffini Theorem?).
For me this begs the question, is the eigenvalue polynomial from eig(…) truly analytic?
% Build a random matrix:
Nlayer = 3;
syms z lambda
for idex = 1:Nlayer
A(:,:)= rand(3,3)*z^idex;
end
% Option 1: Use eig() directly
opt1_ev= eig(A);
% Option 2: root charpoly "by hand"
% Build characteristic Poly
charPoly = charpoly(A, ‘lambda’);
% Root characteristic poly
opt2_ev = solve(charPoly == 0, lambda); Hi,
I am a bit confused about the inner working of the symbolic math toolbox.
I always thought the symbolic math toolbox does a calculation in the background and therefore provides an exact analytical result, or notifies the user that the solution is not analytical.
But how does the "eig(…)" function then comes up with an result for an arbitrary polynomial matrix?
THe following codes shows two options to calculate the eigenvalues of an arbitrary matrix A.
Option 1 uses eig(A), to directly calculate the analytical expression for the eigenvalues.
Option 2 first constructs the characteristic polynomial and then roots it.
The following example always produces an analytical solution for option 1. But does return a "root(…)" object for option 2. If I understand correctly, the "root(…)" is used by Matlab, in case the to-be-rooted polynomial can not be rooted analytically (Abel-Ruffini Theorem?).
For me this begs the question, is the eigenvalue polynomial from eig(…) truly analytic?
% Build a random matrix:
Nlayer = 3;
syms z lambda
for idex = 1:Nlayer
A(:,:)= rand(3,3)*z^idex;
end
% Option 1: Use eig() directly
opt1_ev= eig(A);
% Option 2: root charpoly "by hand"
% Build characteristic Poly
charPoly = charpoly(A, ‘lambda’);
% Root characteristic poly
opt2_ev = solve(charPoly == 0, lambda); symbolic-math, eigenvalues, polynomial-matrices MATLAB Answers — New Questions
Runge kutta giving complex numbers – urgent please :)
Hello everyone,
I need to graduate in really few days. Please if you could help me I would really appreciate it.
I need to solve a differential equation in matlab, but during the simulation V1_rel becomes a complex number ( in particular at the timestep t1(7617) where V1_rel(7617) = V1(7617) + v1_nac(7616) , but these last two values are real values). So somehow a sum of two real values result in a complex number. From that iteration onwards also v1_nac become complex (so from v1_nac(7617).
But the problem probably starts before in the calculation of v1, because it starts low but rapidly increases too much in absolute value. v1 is in rad/s and it must be below 0.01 . Consequently v1_nac is too high and V1_rel assumes also negative values, which are not phisically possible.
I add at the bottom the script with which I derived the V1 values, but surely they are not the problem. They have been used for other simulations without problems. I attached also the file from which I derived the V1 values.
function dydt = odefun(t, yv, I, B, K, M)
y = yv(1);
v = yv(2);
dy_dt = v;
dv_dt = M/I – (B/I) * v – K/I * y – M/I * y^2;
dydt = [dy_dt; dv_dt];
end
%% Δt = 1s
I = 81691700806.8323;
B = 247901197.414257;
K = 1880699112.40857;
y1 = zeros(length(t1), 1);
y1_deg = zeros(length(t1),1);
v1 = zeros(length(t1), 1);
v1_nac = zeros(length(t1), 1);
V1_rel = zeros(length(t1), 1);
F1_thrust = zeros(length(t1),1);
M1_thrust = zeros(length(t1),1);
y1(1) = 0.005;
v1(1) = 0.001;
v1_nac(1) = 0.01;
V1_rel(1) = V1(1);
F1_thrust(1) = (6.073 * V1(1)^1.9808) *1000;
M1_thrust(1) = F1_thrust(1) * 105;
% Metodo di Runge-Kutta di quarto ordine
for i = 2:length(t1)
dt = t1(i) – t1(i-1);
V1_rel(i)= V1(i) + v1_nac(i-1);
if V1_rel(i) < 11
F1_thrust(i) = (6.073 * power( V1_rel(i),1.9808) ) *1000 ;
else
F1_thrust(i) = (-0.0455 * power(V1_rel(i),4) + 3.2312* power(V1_rel(i),3) – 84.841* power(V1_rel(i),2) + 943.93* V1_rel(i) – 3036.5) * 1000 ;
end
M1_thrust(i) = F1_thrust(i) * 105;
M = M1_thrust(i);
yv1 = [y1(i-1); v1(i-1)];
k1_ = odefun(t1(i-1), yv1, I, B, K, M);
k2_ = odefun(t1(i-1) + dt/2, yv1 + dt/2 * k1_, I, B, K, M);
k3_ = odefun(t1(i-1) + dt/2, yv1 + dt/2 * k2_, I, B, K, M);
k4_ = odefun(t1(i), yv1 + dt * k3_, I, B, K, M);
% Aggiornamento delle soluzioni
yv_new = yv1 + dt/6 * (k1_ + 2*k2_ + 2*k3_ + k4_);
y1(i) = yv_new(1) ;
v1(i) = yv_new(2) ;
v1_nac(i) = v1(i)*105; % from rad/10s to m/s%
y1_deg(i) = rad2deg(y1(i));
end
% Read the data from the CSV file. Extract time and velocity
data = readtable(‘C:TESIDati29gen_1feb_2023_z_hub.csv’);
time = data{:, 1};
velocity = data{:, 2};
% Convert time to datetime format
time = datetime(time, ‘InputFormat’, ‘dd/MM/yyyy HH:mm:ss’);
time_seconds = seconds(time – time(1));
% Interpolate linearly velocity every 10 seconds
t10 = (0:10:max(time_seconds))’;
t1= (time_seconds(338):1:time_seconds(386))’; % 30 jan 09:00 – 30 jan 18:00
V_interp10 = interp1(time_seconds, velocity, t10, ‘linear’);
V_interp1 = interp1(time_seconds, velocity, t1, ‘linear’);
% Add noise proportional to wind variability if needed
n = randn(length(t10), 1) / 35;
vett2 = [diff(V_interp10); 0];
%vett2_norm = ( vett2 / std(vett2) );
%vett2_adjusted = 0.95 * vett2_norm + (1 – 0.95) * 1;
%n = n2 .* vett2_adjusted * 7
n10 = n .* ( vett2 / std(vett2) ) * 7;
n1 = interp1(t10, n10 , t1);
V10 = V_interp10 + n10;
V1 = V_interp1 + n1;Hello everyone,
I need to graduate in really few days. Please if you could help me I would really appreciate it.
I need to solve a differential equation in matlab, but during the simulation V1_rel becomes a complex number ( in particular at the timestep t1(7617) where V1_rel(7617) = V1(7617) + v1_nac(7616) , but these last two values are real values). So somehow a sum of two real values result in a complex number. From that iteration onwards also v1_nac become complex (so from v1_nac(7617).
But the problem probably starts before in the calculation of v1, because it starts low but rapidly increases too much in absolute value. v1 is in rad/s and it must be below 0.01 . Consequently v1_nac is too high and V1_rel assumes also negative values, which are not phisically possible.
I add at the bottom the script with which I derived the V1 values, but surely they are not the problem. They have been used for other simulations without problems. I attached also the file from which I derived the V1 values.
function dydt = odefun(t, yv, I, B, K, M)
y = yv(1);
v = yv(2);
dy_dt = v;
dv_dt = M/I – (B/I) * v – K/I * y – M/I * y^2;
dydt = [dy_dt; dv_dt];
end
%% Δt = 1s
I = 81691700806.8323;
B = 247901197.414257;
K = 1880699112.40857;
y1 = zeros(length(t1), 1);
y1_deg = zeros(length(t1),1);
v1 = zeros(length(t1), 1);
v1_nac = zeros(length(t1), 1);
V1_rel = zeros(length(t1), 1);
F1_thrust = zeros(length(t1),1);
M1_thrust = zeros(length(t1),1);
y1(1) = 0.005;
v1(1) = 0.001;
v1_nac(1) = 0.01;
V1_rel(1) = V1(1);
F1_thrust(1) = (6.073 * V1(1)^1.9808) *1000;
M1_thrust(1) = F1_thrust(1) * 105;
% Metodo di Runge-Kutta di quarto ordine
for i = 2:length(t1)
dt = t1(i) – t1(i-1);
V1_rel(i)= V1(i) + v1_nac(i-1);
if V1_rel(i) < 11
F1_thrust(i) = (6.073 * power( V1_rel(i),1.9808) ) *1000 ;
else
F1_thrust(i) = (-0.0455 * power(V1_rel(i),4) + 3.2312* power(V1_rel(i),3) – 84.841* power(V1_rel(i),2) + 943.93* V1_rel(i) – 3036.5) * 1000 ;
end
M1_thrust(i) = F1_thrust(i) * 105;
M = M1_thrust(i);
yv1 = [y1(i-1); v1(i-1)];
k1_ = odefun(t1(i-1), yv1, I, B, K, M);
k2_ = odefun(t1(i-1) + dt/2, yv1 + dt/2 * k1_, I, B, K, M);
k3_ = odefun(t1(i-1) + dt/2, yv1 + dt/2 * k2_, I, B, K, M);
k4_ = odefun(t1(i), yv1 + dt * k3_, I, B, K, M);
% Aggiornamento delle soluzioni
yv_new = yv1 + dt/6 * (k1_ + 2*k2_ + 2*k3_ + k4_);
y1(i) = yv_new(1) ;
v1(i) = yv_new(2) ;
v1_nac(i) = v1(i)*105; % from rad/10s to m/s%
y1_deg(i) = rad2deg(y1(i));
end
% Read the data from the CSV file. Extract time and velocity
data = readtable(‘C:TESIDati29gen_1feb_2023_z_hub.csv’);
time = data{:, 1};
velocity = data{:, 2};
% Convert time to datetime format
time = datetime(time, ‘InputFormat’, ‘dd/MM/yyyy HH:mm:ss’);
time_seconds = seconds(time – time(1));
% Interpolate linearly velocity every 10 seconds
t10 = (0:10:max(time_seconds))’;
t1= (time_seconds(338):1:time_seconds(386))’; % 30 jan 09:00 – 30 jan 18:00
V_interp10 = interp1(time_seconds, velocity, t10, ‘linear’);
V_interp1 = interp1(time_seconds, velocity, t1, ‘linear’);
% Add noise proportional to wind variability if needed
n = randn(length(t10), 1) / 35;
vett2 = [diff(V_interp10); 0];
%vett2_norm = ( vett2 / std(vett2) );
%vett2_adjusted = 0.95 * vett2_norm + (1 – 0.95) * 1;
%n = n2 .* vett2_adjusted * 7
n10 = n .* ( vett2 / std(vett2) ) * 7;
n1 = interp1(t10, n10 , t1);
V10 = V_interp10 + n10;
V1 = V_interp1 + n1; Hello everyone,
I need to graduate in really few days. Please if you could help me I would really appreciate it.
I need to solve a differential equation in matlab, but during the simulation V1_rel becomes a complex number ( in particular at the timestep t1(7617) where V1_rel(7617) = V1(7617) + v1_nac(7616) , but these last two values are real values). So somehow a sum of two real values result in a complex number. From that iteration onwards also v1_nac become complex (so from v1_nac(7617).
But the problem probably starts before in the calculation of v1, because it starts low but rapidly increases too much in absolute value. v1 is in rad/s and it must be below 0.01 . Consequently v1_nac is too high and V1_rel assumes also negative values, which are not phisically possible.
I add at the bottom the script with which I derived the V1 values, but surely they are not the problem. They have been used for other simulations without problems. I attached also the file from which I derived the V1 values.
function dydt = odefun(t, yv, I, B, K, M)
y = yv(1);
v = yv(2);
dy_dt = v;
dv_dt = M/I – (B/I) * v – K/I * y – M/I * y^2;
dydt = [dy_dt; dv_dt];
end
%% Δt = 1s
I = 81691700806.8323;
B = 247901197.414257;
K = 1880699112.40857;
y1 = zeros(length(t1), 1);
y1_deg = zeros(length(t1),1);
v1 = zeros(length(t1), 1);
v1_nac = zeros(length(t1), 1);
V1_rel = zeros(length(t1), 1);
F1_thrust = zeros(length(t1),1);
M1_thrust = zeros(length(t1),1);
y1(1) = 0.005;
v1(1) = 0.001;
v1_nac(1) = 0.01;
V1_rel(1) = V1(1);
F1_thrust(1) = (6.073 * V1(1)^1.9808) *1000;
M1_thrust(1) = F1_thrust(1) * 105;
% Metodo di Runge-Kutta di quarto ordine
for i = 2:length(t1)
dt = t1(i) – t1(i-1);
V1_rel(i)= V1(i) + v1_nac(i-1);
if V1_rel(i) < 11
F1_thrust(i) = (6.073 * power( V1_rel(i),1.9808) ) *1000 ;
else
F1_thrust(i) = (-0.0455 * power(V1_rel(i),4) + 3.2312* power(V1_rel(i),3) – 84.841* power(V1_rel(i),2) + 943.93* V1_rel(i) – 3036.5) * 1000 ;
end
M1_thrust(i) = F1_thrust(i) * 105;
M = M1_thrust(i);
yv1 = [y1(i-1); v1(i-1)];
k1_ = odefun(t1(i-1), yv1, I, B, K, M);
k2_ = odefun(t1(i-1) + dt/2, yv1 + dt/2 * k1_, I, B, K, M);
k3_ = odefun(t1(i-1) + dt/2, yv1 + dt/2 * k2_, I, B, K, M);
k4_ = odefun(t1(i), yv1 + dt * k3_, I, B, K, M);
% Aggiornamento delle soluzioni
yv_new = yv1 + dt/6 * (k1_ + 2*k2_ + 2*k3_ + k4_);
y1(i) = yv_new(1) ;
v1(i) = yv_new(2) ;
v1_nac(i) = v1(i)*105; % from rad/10s to m/s%
y1_deg(i) = rad2deg(y1(i));
end
% Read the data from the CSV file. Extract time and velocity
data = readtable(‘C:TESIDati29gen_1feb_2023_z_hub.csv’);
time = data{:, 1};
velocity = data{:, 2};
% Convert time to datetime format
time = datetime(time, ‘InputFormat’, ‘dd/MM/yyyy HH:mm:ss’);
time_seconds = seconds(time – time(1));
% Interpolate linearly velocity every 10 seconds
t10 = (0:10:max(time_seconds))’;
t1= (time_seconds(338):1:time_seconds(386))’; % 30 jan 09:00 – 30 jan 18:00
V_interp10 = interp1(time_seconds, velocity, t10, ‘linear’);
V_interp1 = interp1(time_seconds, velocity, t1, ‘linear’);
% Add noise proportional to wind variability if needed
n = randn(length(t10), 1) / 35;
vett2 = [diff(V_interp10); 0];
%vett2_norm = ( vett2 / std(vett2) );
%vett2_adjusted = 0.95 * vett2_norm + (1 – 0.95) * 1;
%n = n2 .* vett2_adjusted * 7
n10 = n .* ( vett2 / std(vett2) ) * 7;
n1 = interp1(t10, n10 , t1);
V10 = V_interp10 + n10;
V1 = V_interp1 + n1; differential equations, complex numbers MATLAB Answers — New Questions