Abstract: A method and apparatus, including a computer program apparatus, which facilitate invoking methods of objects defined within an object-oriented environment from an array-based technical computing environment often used in conventional mathematical tools. When a method is invoked from the computing environment, the techniques automatically compare the array input parameters with data-types accepted by methods defined within the object-oriented environment. Based on this comparison, the invention selects a method that best accepts the input arrays. The invention, therefore, allows a user to easily invoke methods from external objects, such as Java objects, directly from the technical computing environment of the mathematical tool.
Abstract: A method and system is disclosed for providing a distributed technical computing environment for distributing technical computing tasks from a technical computing client to technical computing workers for execution of the tasks on one or more computers systems. Tasks can be defined on a technical computing client, and the tasks organized into jobs. The technical computing client can directly distribute tasks to one or more technical computing workers. Furthermore, the technical computing client can submit tasks, or jobs comprising tasks, to an automatic task distribution mechanism that distributes the tasks automatically to one or more technical computing workers providing technical computing services. The technical computing worker performs technical computing of tasks and the results of the execution of tasks may be provided to the technical computing client. Data associated with the tasks is managed by a programmable interface associated with a data storage repository.
Abstract: The present invention provides a method and system for optimization of an intermediate representation in a graphical modeling environment. A first intermediate representation is provided. At least one optimization technique is applied to the first intermediate representation. A second intermediate representation is generated responsive to the application of the at least one optimization technique to the first intermediate representation.
Abstract: A computer-implemented method may include defining an input bus signal in a graphical block diagram model by associating the input bus signal with a first group of signals, at least two of the first group of signals having a different data type; defining an output bus signal in the graphical block diagram model by associating the second bus signal with a second group of signals, each of the second group of signals corresponding to one of the first group of signals; defining an input to a non-virtual operation block in the graphical block diagram model as the input bus signal; defining an output to the non-virtual operation block in the graphical block diagram as the output bus signal; and simulating an operation performed on the input bus signal by the non-virtual operation block, the operation being performed on each of the first group of signals and output to each of the second group of signals.
Abstract: The present invention improves in one aspect the accuracy, efficiency, and robustness of fixed-step solvers when simulating a physical system that does not change in energy at the critical event. The present invention uses the energy of the error as the figure of merit in finding the first state of the system under the new constraints. The present invention enables a fixed-step solver to be more robust even when the critical event falls between two time samples. The present invention may also be applied to variable-step solvers. Moreover, the present invention may also be used to simulate a physical system when the energy changes at the critical event in the physical system.
Abstract: In one embodiment, a method for displaying elements of an attribute in an executable block diagram model is provided. The method may include displaying an executable block diagram model in a first window and receiving a first input from an input device, wherein the first input associates with a first parameter of a block diagram modeling component in the executable block diagram model, the first parameter is represented in the executable block diagram model by a first graphical affordances. The method may include triggering the display of a value of a first parameter in a first user interface widget in the first window.
Type:
Grant
Filed:
October 16, 2007
Date of Patent:
September 13, 2011
Assignee:
The MathWorks, Inc.
Inventors:
Claudia Wey, John Ciolfi, Len Conte, Eric Pressman, Pieter J. Mosterman, Jay Ryan Torgerson, Murali Yeddanapudi
Abstract: The present invention provides a method and system for stage evaluation of a state machine model. Two types of transitions are used: first-stage transitions and second-stage transitions for a two-stage evaluation. In one embodiment, top-down processing and bottom-up processing may be combined using a two-stage evaluation. First-stage transitions are used with top-down processing while second-stage transitions are used with bottom-up processing. Certain conditions are used to determine if a switch from one type of stage processing to another type of stage processing is needed.
Abstract: A computer-implemented method for generating code based on a graphical model may include: translating the graphical model into a graphical model code, the graphical model code including a first graphical model code function; performing a lookup of the first graphical model code function in a hardware specific library, the hardware specific library comprising a plurality of relationships between graphical model code functions and hardware specific functions, where the first graphical model code function is one of the graphical model code functions; obtaining a matched hardware specific function based on the lookup, wherein the matched hardware specific function is one of the hardware specific functions from the hardware specific library; and modifying the graphical model code based on the matched hardware specific function.
Type:
Grant
Filed:
January 10, 2007
Date of Patent:
September 6, 2011
Assignee:
The MathWorks, Inc.
Inventors:
James E. Carrick, Peter Szpak, Robert O. Aberg, Andrew C. Bartlett, Xiaocang Lin, Hongbo Yang
Abstract: A computing device-implemented method includes receiving a program created by a technical computing environment, analyzing the program, generating multiple program portions based on the analysis of the program, dynamically allocating the multiple program portions to multiple software units of execution for parallel programming, receiving multiple results associated with the multiple program portions from the multiple software units of execution, and providing the multiple results or a single result to the program.
Type:
Grant
Filed:
May 15, 2007
Date of Patent:
August 30, 2011
Assignee:
The MathWorks, Inc.
Inventors:
John N. Little, Joseph F. Hicklin, Jocelyn Luke Martin, Nausheen B. Moulana, Halldor N. Stefansson, Loren Dean, Roy E. Lurie, Stephen C. Johnson, Penelope L. Anderson, Michael E. Karr, Jason A. Kinchen
Abstract: A system may receive a model, extract information from the model, form a group of tags using the extracted information, and associate the group of tags with the model. The system may further receive a search query including one or more sequences of characters and determine whether to provide the model in a list of models created for the search query, based on the one or more sequences of characters and the group of tags.
Type:
Grant
Filed:
March 16, 2007
Date of Patent:
August 23, 2011
Assignee:
The Mathworks, Inc.
Inventors:
Pieter J. Mosterman, Farid Antoine Abizeid, Tunc Simsek, Claudia Gaudagnini Wey, Mojdeh Shakeri, Jay Ryan Torgerson
Abstract: A modeling process includes providing blocks, each of the blocks representing functional entities that operate on input signal values, output signal values from the blocks, grouping the output signal values as an ordered set in a multiplexer as a first composite signal and outputting the first composite signal.
Type:
Grant
Filed:
September 8, 2008
Date of Patent:
August 9, 2011
Assignee:
The MathWorks, Inc.
Inventors:
Mojdeh Shakeri, Marc Ullman, Ramamurthy Mani
Abstract: Business management methods for on-demand trial based marketing and sales are introduced. Using on-demand trial technology, usage metrics can be automatically generated by tracking the usage of specific products and corresponding duration. Usage metrics and other data are automatically processed to qualify and channel leads to pertinent categories in sales and marketing. The present invention facilitates a more directed effort to investigate leads and makes the information of customers available for follow-up that has higher prospective sales potential. The present invention may also be used to dispatch pre-release reports automatically to a vendor.
Type:
Grant
Filed:
September 29, 2005
Date of Patent:
August 9, 2011
Assignee:
The MathWorks, Inc.
Inventors:
Rohit Shenoy, Pieter J. Mosterman, Bella G. Teverovsky, John Fluet, Craig Dowley
Abstract: A mechanism for providing equation-level diagnostic error messages for system models undergoing circuit simulations is discussed. The components in a model of a system being simulated are converted into multiple numerical equations where each equation corresponds to a component in the system being simulated or a topology equation for the system model. Each numerical equation is numerically analyzed in order to identify illegal configurations in the system. Upon detection of an error, an error message listing the components associated with the illegal configuration is generated for the user.
Type:
Application
Filed:
April 12, 2011
Publication date:
August 4, 2011
Applicant:
The MathWorks, Inc.
Inventors:
Joseph Daniel KANAPKA, Nathan E. BREWTON
Abstract: A system and methods are disclosed herein for modeling a mechanical system having body elements movable in at least two dimensions in a graphical modeling environment. The system and methods described herein allow constraints on body elements movable in at least two dimensions in the mechanical system to be generalized and represented by a single block in the graphical modeling environment. The system and methods described herein simplify the modeling of a mechanical system by allowing a user to construct a definition of generalized constraints through a connectivity table. Thus, it is possible to model a mechanical system in a graphical modeling environment with less than all the body elements represented by blocks in a graphical model.
Abstract: The present invention provides a method and system for the dynamic distribution of an array in a parallel computing environment. The present invention obtains a criterion for distributing an array and performs flexible portioning based on the obtained criterion. In some embodiment analysis may be performed based on the criterion. The flexible portioning is then performed based on the analysis.
Type:
Grant
Filed:
May 12, 2010
Date of Patent:
July 26, 2011
Assignee:
The MathWorks, Inc.
Inventors:
Penelope Anderson, Cleve Moler, Sheung Hun Cheng, Patrick D. Quillen
Abstract: A class definition syntax that leverages the array and math-oriented nature of a dynamically typed array-based programming language is discussed. The present invention provides a simplified mechanism for the creation of element-wise methods. Additionally, a mechanism for defining derived classes in a dynamically typed array-based programming language using mathematical set notation and semantics is also supported.
Abstract: A mechanism for configuring an inspection component in a real-time model is disclosed. The inspection component includes user-configurable parameters that control the acquisition of data for the real-time model. The data acquisition and logging logic is set up using graphical blocks that are part of the larger real-time application model. When code generation is done for the model, the data acquisition logic is also automatically generated, and runs as part of the execution of a real-time task.
Abstract: In a graphical modeling environment supporting a model having at least two different analysis frameworks operating therein, a system and corresponding method of processing the graphical model modify the model to group model portions together for processing in the same analysis framework. Model parts are identified and associated with the analysis framework in which they operate. Model parts are then grouped based on their association with their analysis framework to form model portions that operate in one of the different analysis frameworks. In instances where topological separation of model portions operating in the same analysis framework occurs, the system and method reconfigure intervening model portions to be amenable with operation in the analysis framework of the surrounding model portions to improve processing efficiency.
Abstract: An instrument-based distributed computing system is disclosed that accelerates the measurement, analysis, verification and validation of data in a distributed computing environment. A large computing work can be performed in a distributed fashion using the instrument-based distributed system. The instrument-based distributed system may include a client that creates a job. The job may include one or more tasks. The client may distribute a portion of the job to one or more remote workers on a network. The client may reside in an instrument. One or more workers may also reside in instruments. The workers execute the received portion of the job and may return execution results to the client. As such, the present invention allows the use of instrument-based distributed system on a network to conduct the job and facilitate decreasing the time for executing the job.
Abstract: A method of synchronizing a block diagram view of a system being modeled with a three-dimensional view of the system being modeled and with the underlying block diagram model data is disclosed. Changes in the block diagram model data are reflected in both views to the degree that the views contain a point of correspondence. User selected changes to the block diagram view of the system being modeled cause changes in the underlying model data. A view generator examines the model data to determine if a point of correspondence equivalent to the changed portion of the block diagram view exists in the three dimensional view. If a point of correspondence exists in the three-dimensional view the view is updated to reflect the changes in the block diagram view. Similarly, user selected changes in the three-dimensional view cause changes in the underlying block diagram model data.