主要内容
Results for
Have you ever learned that something you were doing manually in MATLAB was already possible using a built-in feature? Have you ever written a function only to later realize (or be told) that a built-in function already did what you needed?
Two such moments come to mind for me.
1. Did you realize that you can set conditional breakpoints? Neither did I, until someone showed me that feature. To do that, open or create a file in the editor, right click on a line number for any line that contains code, and select Set Conditional Breakpoint... This will bring up a dialog wherein you can type any logical condition for which execution should be paused. Before I learned about this, I would manually insert if-statements during debugging. Then, after fixing each bug, I would have to delete those statements. This built-in feature is so much better.
2. Have you ever needed to plot horizontal or vertical lines in a plot? For the longest time, I would manually code such lines. Then, I learned about xline() and yline(). Not only is less code required, these lines automatically span the entire axes while zooming, panning, or adjusting axis limits!
Share your own Aha! moments below. This will help everyone learn about MATLAB functionality that may not be obvious or front and center.
(Note: While File Exchange contains many great contributions, the intent of this thread is to focus on built-in MATLAB functionality.)
The carot symbol on my keyboard (ˆ shift+6) doesn't work on matlab. Matlab doesn't recognize it so I can't write any equation with power symbol. I tried every possible solution on the web and it doesn't work. even in the character viewer I don't have any result when I search ''caret".
Exciting news for students! 🚀Simulink Student Challenge 2023 is live! Unleash your engineering skills and compete for exciting rewards. Submission deadline is December 12th, 2023!
In the past year, we've witnessed an exponential growth of ChatGPT and other Generative AI tools. AI has quickly become a transformative force across industries, from tech giants to small startups, and even community sites like ours. For instance, Stack Overflow announced its plan to leverage AI tools to draft a question or tag content; Quora built a ChatGPT bot to answer questions; and GitHub is piloting the AI tool for personalized content.
This trend in the community landscape makes me wonder what MATLAB Central community, especially in MATLAB Answers, can do to integrate AI and enhance the community.
Share with us your ideas in the comment session. Ideally one comment per idea, so that others can vote on a secific idea or have deeper discussions about it.
We launched the Discussions area with 6 channels, based on the existing types of content we see today in the MATLAB Central community.
I'm curious which channels you are most interested in participating, or which channels are missing.
Tell us your thoughts here!
Over the weekend I came across a pi approximation using durations of years and weeks (image below, Wolfram, eq. 89), accurate to 6 digits using the average Gregorian year (365.2425 days).
Here it is in MATLAB. I divided by 1 week at the end rather than multiplying by its reciprocal because you can’t divide a numeric by a duration in MATLAB (1/week).
weeks = @(n)n*days(7);
piApprox = ((years(13)-weeks(6))/years(13) + weeks(3)) / weeks(1)
% piApprox = 3.141593493469302
Here’s a breakdown
- The first argument becomes 12.885 yrs / 13 yrs or 0.99115
- Add three weeks: 0.99115 + 3 weeks = 21.991 days
- The reduced fraction becomes 21.991 days / 7 days
Now it looks a lot closer to the more familiar approximation for pi 22/7 but with greater precision!
This person used computer version to build a keyboard input, and used standard flag semaphore for the positions.
Flag semaphore is used mostly by sailors to be able to communicate optically over a distance; it does not need anything more than make-shift flags (but binoculars or telescopes can help.) Trained users can go faster than you might guess.
Chen, Rena, and I are at a community management event. It's great to be with others talking about relationships, trust, and co-creation.
A research team found a way to trick a number of AI systems by injecting carefully placed nonsense -- for example being able able to beat DeepMind's Go game.
This video discusses the "Cody" bridge, which is a pedestrian bridge over a canal that has been designed to move up and out of the way when ships need to travel through. The mathematics of the bridge movement are discussed and diagrammed. It is unique and educational.
Recently developed: a "microscope" based on touch and stereo vision.
Using touch removes the possibility of optical confusion -- for example, black on touch is only due to shape, not due to the possibility that the object has a black patch.
Sorry, you might need a Facebook account to watch the video.
I'm curious how the community uses the hold command when creating charts and graphics in MATLAB. In short, hold on sets up the axes to add new objects to the axes while hold off sets up the axes to reset when new objects are added.
When you use hold on do you always follow up with hold off? What's your reasoning on this decision?
Can't wait to discuss this here! I'd love to hear from newbies and experts alike!
Calling all students! New to MATLAB or need helpful resources? Check out our MATLAB GitHub for Students repository! Find MATLAB examples, videos, cheat sheets, and more!
Visit the repository here: MATLAB GitHub for Students
Imagine x is a large vector and you want the smallest 10 elements. How might you do it?
The way we've solved ODEs in MATLAB has been relatively unchanged at the user-level for decades. Indeed, I consider ode45 to be as iconic as backslash! There have been a few new solvers in recent years -- ode78 and ode89 for example -- and various things have gotten much faster but if you learned how to solve ODEs in MATLAB in 1997 then your knowledge is still applicable today.
In R2023b, there's a completely new framework for solving ODEs and I love it! You might argue that I'm contractually obliged to love it since I'm a MathWorker but I can assure you this is the real thing!
I wrote it up in a tutorial style on The MATLAB Blog https://blogs.mathworks.com/matlab/2023/10/03/the-new-solution-framework-for-ordinary-differential-equations-odes-in-matlab-r2023b/
The new interface makes a lot of things a much easier to do. Its also setting us up for a future where we'll be able to do some very cool algorithmic stuff behind the scenes.
Let me know what you think of the new functionality and what you think MathWorks should be doing next in the area of ODEs.
The MATLAB Answers community is an invaluable resource for all MATLAB users, providing selfless assistance and support. However, with the emergence of AI-based chatbots, like chatGPT, there may be concerns about the future relevance and utility of the MATLAB Answer community. What are your thoughts?
This is the 6th installment of the wish-list and bug report thread.
This topic is the follow on to the first Wish-list for MATLAB Answer sections and second MATLAB Answers Wish-list #2 (and bug reports). The third started out as New design of the forum - grey on white and the fourth and fifth also grew so large they are slow to load and navigate.
Same idea as the previous ones: one wish (or bug report) per answer, so that people can vote their wishes.
What should you post where?
Next Gen threads (#1): features that would break compatibility with previous versions, but would be nice to have
@anyone posting a new thread when the last one gets too large (about 50 answers seems a reasonable limit per thread), please update this list in all last threads. (if you don't have editing privileges, just post a comment asking someone to do the edit)
4 weeks of contests is fun but intense. Next, we recommend 3 things to do as warm-down exercises.
To make future contests better and more appealing to you, we created a 1-minute survey to understand your experience. Your feedback is critical to us!
Dave Bulkin is a developer on the MATLAB Graphics and Charting Team. In the Blog post, @Dave B not only examines the code behind the leading entries, but also introduces you to some new visualization techniques.
Matt Tearle is from MathWorks Training Services Team. @Matt Tearle created this problem group to celebrate the 10th anniversary of Cody and the 2022 T20 World Cup (which happened to occur at the same time). Note that the problems can be done without the knowledge of cricket.
Thank you in advance and hope to see you in 2023!
I've now seen linear programming questions pop up on Answers recently, with some common failure modes for linprog that people seem not to understand.
One basic failure mode is an infeasible problem. What does this mean, and can it be resolved?
The most common failure mode seems to be a unbounded problem. What does this mean? How can it be avoided/solved/fixed? Is there some direction I can move where the objective obviously grows without bounds towards +/- inf?
Finally, I also see questions where someone wants the tool to produce all possible solutions.
A truly good exposition about linear programming would probably result in a complete course on the subject, and Aswers is limited in how much I can write (plus I'll only have a finite amount of energy to keep writing.) I'll try to answer each sub-question as separate answers, but if someone else would like to offer their own take, feel free to do so as an answer, since it has been many years for me since I learned linear programming.
The 2022 community contests have concluded! During the 4 weeks, we hope you had a lot of fun and learned some MATLAB skills. Together, we've achieved amazing milestones:
- 500+ entries and 5,000+ votes created in the Mini Hack 2022 contest.
- 100,000+ solutions submitted in Cody 10th Anniversary contest
- 2,000+ participants in both contests
Now, it's time to announce weekly winners and grand prize winners!
Mini Hack - Pick of the MATLAB Graphics Team
We invited the MATLAB Graphics team, the authors of the MATLAB functions used in every entry, to be our Mini Hack judges. Here are their picks in 3 categories:
- Our Top 3:
Rising Hand by Augusto Mazzei
Object used: fill; Judge comments: Clever code, nice metaphor, kind comments
Above the clouds by Tim
Object used: patch (via VOXview); Judge comments: Very pretty, looks like it could be in a video game
Monocular rivalry by Jenny Bosten
Object used: Image; Judge comments: We spent a too much time trying to figure out what this illusion was doing to our brains
- Clever use of Charts:
Object used: Bar3; Judge comments: Cute! Nice fireworks!
Object used: histogram2; Judge comments: We didn't realize there was a ship in the flow data set
Object used: plot; Judge comments: Nifty and very different from other entries.
Object used: scatter; Judge comments: Overlapping markers make for a very cool tunnel-like effect
- Things we still loved:
Object used: image; Judge comments: Domain Warping FTW
Object used: surface; Judge comments: Clever use of transparency
Congratulations and you should be very proud of yourself! It's a huge achievement that your entry is recognized by the MATLAB Graphics team!
Mini Hack - special category for Week 4
Mini Hack - grand prize winners
After an intensive (and very time-consuming) review of votes on winning entries, we have finalized the list of grand prize winners. Huge congratulations! We appreciate the time and effort you spent and the awesome entries you created. Each of you won an Amazon gift card.
Anton Kogios, Brandon Caasenbrood, KARUPPASAMYPANDIYAN M, Teodo, Jenny Bosten, MvLevi, Abdullah Caliskan, Stewart Thomas, Jonas Schlatter, and Tim Davis
Cody 10th Anniversary - surprise prize for 28-day streak winners
We are thrilled to see that 37 players have built a streak of 28 days! Coming back every day to solve problems is an incredible achievement. We decided to show our appreciation by awarding a surprise prize to those 37 players. Congratulations! Each of you will get a MathWorks T-shirt.
Christian Schröder, Stefan Abendroth, Mohammed, Victoria, Vasileios Pasialis, Gerardo Domínguez Ramírez, HH, Anton Kogios, Lizhi Zhu, Marco Fuscà, Armando Longobardi, Monica, Rithik KRT, Ayman, Teodo, Lincoln Poon, Elijah Keifert, siranjeevi gurumani, kazuyoshi kouno, Ryan Koh, Manuela Kaiser, Mehmet OZC, Dyuman Joshi, KOTHAPALLI SRI BRINDA, Gergely Patay, abyss, Takumi, Keita Abe, Petr Cerny, Shubham Shubham, Meredith, Andrew K, Atsushi Ueno, Peter Orthmann, Armando Longobardi, Chuang Tao, and David Romero
Cody 10th Anniversary winners – Week 4
The top 3 players for solving the most problems in week 4 are Christian Schröder, Gerardo Dominguez Ramirez, and Stefan Abendroth, Congratulations! Each of you won an Amazon gift card.
Week 4 lucky winners are Qingrui Liu and Basant Ale.
Cody 10th Anniversary winners – grand prize winners
We know how hard it is to be a top-10 leader in the contest leaderboard! It requires a huge time commitment and advanced MATLAB skills. Congratulations! Each of you will win an Amazon gift card.
Christian Schröder, Stefan Abendroth, Mohammed, Victoria, Vasileios Pasialis, Gerardo Domínguez Ramírez, HH, Anton Kogios, Lizhi Zhu, and Marco Fuscà
Lucky voters and participants
Thank you for your participation in our 2022 contests. You don’t need to be on the top of the leaderboards to win. As we announced, we would give out 20 MathWorks T-shirts to lucky voters and participants of the 2 contests.
Ismail Bera Altan, Robin Stolz, Michael Mellin, Kellan Smith, Neha Shaah, Siranjeevi gurumani, Paul Villain, Andrew Horchler, Meg Noah, Saurabh Chaudhary, Pakize erdogmus, Godfrey Ojerheghan, Selena Mastrodonato, Damir Rasic, Thomas Kjeldsen, Meredith, John Noah Ramiterre, Patience Oliveira, Panda, and Sujeet Kumar Choudhary
On behalf of the MATLAB Central community team, we thank you for joining our celebration of the MATLAB Central community 2022 contests. We hope you enjoyed these contests and look forward to seeing you in next year’s contests.