Patents Assigned to The MathWorks, Inc.
  • Patent number: 8930909
    Abstract: Exemplary embodiments enable debugging executable code using a debugger in a computational device that provides a programming environment including a presentation layer. For example, an exemplary method includes providing a first marshalling function that receives a portion of information manipulated by the executable code and produces a presentation layer representation of the portion of the information. The presentation layer representation is compatible with a debugger that debugs the executable code. An exemplary method also includes debugging the executable code to produce a presentation layer representation of the portion of the information with the first marshalling function so as to display the presentation layer representation of the portion of the information to a user via a display device. The debugging also includes modifying the presentation layer representation of the portion of the information to produce modified information for use by the executable code, a device, or a user.
    Type: Grant
    Filed: September 14, 2007
    Date of Patent: January 6, 2015
    Assignee: The MathWorks, Inc.
    Inventors: John Elliott, Frederick Mattsson Smith, Yao Ren
  • Patent number: 8924925
    Abstract: A mechanism in a block diagram environment allows the modeling of an execution behavior of a block in a block diagram, where a user selects the execution behavior from a plurality of functions related to the block diagram and where the execution behavior of the block is performed when at least one model variable associated with the block satisfies a user-specified condition is disclosed. States and other internal data in the designated block are initialized upon the satisfaction of the user-specified condition. The illustrative embodiment of the present invention also allows the internal data to be reset upon the ending of the event, such as the modeled introduction or withdrawal of power. The execution behavior may be suspended and resumed multiple times during the simulation in response to multiple occurrences of the specified event. The present invention also allows for selected data to be exempt from the reset process so that the selected data is non-volatile.
    Type: Grant
    Filed: March 21, 2014
    Date of Patent: December 30, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Matthew J. Englehart
  • Patent number: 8924929
    Abstract: A system and methods are disclosed for executing a technical computing program in parallel in multiple execution environments. A program is invoked for execution in a first execution environment and from the invocation the program is executed in the first execution environment and one or more additional execution environments to provide for parallel execution of the program. New constructs in a technical computing programming language are disclosed for parallel programming of a technical computing program for execution in multiple execution environments. It is also further disclosed a system and method for changing the mode of operation of an execution environment from a sequential mode to a parallel mode of operation and vice-versa.
    Type: Grant
    Filed: August 28, 2009
    Date of Patent: December 30, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Cleve Moler
  • Patent number: 8924193
    Abstract: A device receives model information associated with a modeling application. The device determines first and second conflicting information in the model information. The first and second conflicting information describe different characteristics of a model described by the model information. The device formats the first and second conflicting information in a manner that designates the first conflicting information as a first variant of the model and the second conflicting information as a second variant of the model. The model, when executed with the first variant, behaves in a different manner than when executed with the second variant. The device provides the formatted first and second conflicting information to the modeling application, provides information that identifies the first and second variant, receives a user selection of information that identifies the first variant or second variant, and executes the model based on the user selection.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: December 30, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Timothy Hosey, Robert O. Aberg, Ebrahim Mehran Mestchian
  • Patent number: 8918511
    Abstract: Exemplary embodiments may employ techniques for dynamically dispatching requests to resources operating in a distributed computing environment, such as a computing cloud, according to one or more policies. Embodiments may further dynamically adjust resources in the computing environment using predictive models that use current loads as an input. Embodiments may still further maintain a state for a processing environment independent of the type or configuration of a device used to access the environment on behalf of a user.
    Type: Grant
    Filed: May 31, 2012
    Date of Patent: December 23, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Edward Whittington Gulley, Joseph F. Hicklin, James N. Gonthier, John Richard Langley, Joseph Conti
  • Patent number: 8918509
    Abstract: A device determines a portion of data generated by a technical computing environment (TCE) program, where the portion of the data is determined based on an initial availability of a resource of a server device. The device provides the portion of the data to the server device for execution, and receives, from the server device, results associated with execution of the portion of the data. The device calculates an availability of the resource based on the results associated with execution of the portion of the data, and provides, to the server device for execution, additional data generated by the TCE program, where the additional data is determined based on the availability of the resource of the server device. The device receives, from the server device, results associated with execution of the additional data, where the receiving is performed by the device.
    Type: Grant
    Filed: December 20, 2011
    Date of Patent: December 23, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Alireza Pakyari, Marc David Erickson, Brian K. Ogilvie
  • Patent number: 8918769
    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.
    Type: Grant
    Filed: November 20, 2012
    Date of Patent: December 23, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Xiaocang Lin
  • Patent number: 8914262
    Abstract: In an illustrative embodiment, an apparatus, computer-readable media, or method may be configured to suggest determine relationships. Interaction with a block diagram model may include receiving a first portion of a block diagram model. The block diagram model may include a plurality of blocks. Each of the plurality of blocks may represent a set of dynamic equations. The interacting may be performed using the computer. Relationships between a plurality of a synthesized input, a synthesized output, a synthesized state, or a synthesized derivative, may be determined. A determination may be performed for the first portion of the block diagram model. The determining may include determining a block Jacobian pattern of relationships between two or more of an input, an output, a state, or a derivative of a first block of the plurality of blocks in the graphical model.
    Type: Grant
    Filed: November 8, 2011
    Date of Patent: December 16, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Fu Zhang, Zhi Han, Murali Yeddanapudi, Pieter Johannes Mosterman
  • Publication number: 20140365199
    Abstract: A host device may establish a connection with a physical device. The host device may receive physical device information from the physical device, based on establishing the connection with the physical device. The host device may determine, based on receiving the physical device information, a model element associated with the physical device. The host device may pair the physical device and the model element, based on determining the model element associated with the physical device.
    Type: Application
    Filed: August 8, 2013
    Publication date: December 11, 2014
    Applicant: The Mathworks, Inc.
    Inventors: Pieter J. MOSTERMAN, David Koh, Dimitry Markman, Robert K. Purser, Dmitry Stadnik, Justyna Zander
  • Publication number: 20140359569
    Abstract: A device receives a state chart generated via a technical computing environment. The state chart includes a function block that includes a function that includes function input(s)/output(s). The state chart includes a state block that includes a function call to the function of the function block. The function call includes call input(s)/output(s). The device initiates execution of the state chart, parses the function into the function input(s)/output(s), and parses the function call into the call input(s)/output(s). The device processes, during the execution of the state chart, the function input(s)/output(s) with a graphical engine of the technical computing environment to generate function-related code. The device processes, during the execution of the state chart, the call input(s)/output(s) with a textual engine of the technical computing environment to generate function call-related code, and provides the function-related code and the function call-related code in generated code.
    Type: Application
    Filed: May 23, 2014
    Publication date: December 4, 2014
    Applicant: The MathWorks, Inc.
    Inventors: Srinath AVADHANULA, Pieter J. MOSTERMAN, Ebrahim MESTCHIAN
  • Publication number: 20140359568
    Abstract: A device may receive a state chart generated via a technical computing environment. The state chart may include a state block with a single section of textual code. The single section of textual code may include a time-based portion and an output portion. The device may initiate execution of the state chart, and may process, during the execution of the state chart, the time-based portion with a graphical engine of the technical computing environment to generate a time-based method. The device may process, during the execution of the state chart, the output portion with a textual engine of the technical computing environment to generate an output method. The device may provide the time-based method and the output method in output code, where the time-based method may be separate from the output method in the output code.
    Type: Application
    Filed: May 23, 2014
    Publication date: December 4, 2014
    Applicant: The MathWorks, Inc.
    Inventors: Srinath AVADHANULA, Pieter J. Mosterman, Ebrahim Mestchian
  • Publication number: 20140359561
    Abstract: A device may receive a state chart generated via a technical computing environment. The state chart may include a first state block and a second state block, and the second state block may include textual code understood by a textual engine of the technical computing environment. The device may receive, in association with the second state block, an implicit event command that references an event associated with the first state block, and may initiate execution of the state chart. The device may receive, during execution of the state chart, an indication of occurrence of the event associated with the first state block, and may initiate the second state block based on the indication.
    Type: Application
    Filed: May 23, 2014
    Publication date: December 4, 2014
    Applicant: The MathWorks, Inc.
    Inventors: Srinath AVADHANULA, Pieter J. Mosterman, Ebrahim Mestchian
  • Publication number: 20140359560
    Abstract: A device may receive a model generated via a technical computing environment, where the model included a state chart with one or more variables. The device may receive a selection of a particular variable from the state chart, and may provide, for display and based on the selection, a user interface for defining attributes associated with the particular variable. The device may receive, via the user interface, one or more user-defined attributes for the particular variable, where at least one of the one or more user-defined attributes is defined independently of a reference to the particular variable. The device may apply the one or more user-defined attributes in the model and the state chart.
    Type: Application
    Filed: May 23, 2014
    Publication date: December 4, 2014
    Applicant: The MathWorks, Inc.
    Inventors: Srinath AVADHANULA, Pieter J. MOSTERMAN, Ebrahim MESTCHIAN
  • Publication number: 20140359566
    Abstract: A device may receive a chart generated via a technical computing environment, where the chart includes a textual portion and a graphical portion, and the graphical portion includes state information. The device may parse the chart into the textual portion and the graphical portion, and may process the textual portion with a textual engine of the technical computing environment to generate textual results. The device may process the graphical portion with a graphical engine of the technical computing environment to generate graphical results, and may combine the textual results with the graphical results to generate chart results. The device may output or store the chart results.
    Type: Application
    Filed: May 23, 2014
    Publication date: December 4, 2014
    Applicant: The MathWorks, Inc.
    Inventors: Srinath AVADHANULA, Pieter J. MOSTERMAN, Yit Phang KHOO, John P. DIRNER, Krishna BALASUBRAMANIAN, Ebrahim Mestchian
  • Publication number: 20140359567
    Abstract: A device may receive a state chart generated via a technical computing environment, where the state chart may include at least one state block. The device may receive a time-based or an event-based operator associated with the at least one state block. The time-based or the event-based operator may include textual code understood by a textual engine of the technical computing environment. The device may initiate execution of the state chart, and may process, during the execution the state chart, the time-based or the event-based operator and the at least one state block with a graphical engine of the technical computing environment to generate graphical results. The device may process, during the execution of the state chart, the textual code of the time-based or the event-based operator with the textual engine to generate textual results, and may combine the graphical results with the textual results to generate chart results.
    Type: Application
    Filed: May 23, 2014
    Publication date: December 4, 2014
    Applicant: The MathWorks, Inc.
    Inventors: Srinath AVADHANULA, Pieter J. MOSTERMAN, Ebrahim MESTCHIAN
  • Patent number: 8904299
    Abstract: A tool for analyzing a sequence of data in an object-oriented environment is disclosed. In an embodiment, the sequence of data may include time-indexed sequence of data (“time series data”). The tool may provide graphical user interfaces that enable a user to analyze the time series data encapsulated in a time series object or time series collection object. The graphical user interfaces may enable a user to create a time series object and manipulate the data in the time series object or time series collection object. The graphical user interfaces may also display the data in the time series object or time series collection object in various types of plots, such as time plots, spectral plots, x-y plots, correlation plots and histograms.
    Type: Grant
    Filed: July 17, 2006
    Date of Patent: December 2, 2014
    Assignee: The MathWorks, Inc.
    Inventors: James G. Owen, Rajiv Singh, Rong Chen, Pascal Gahinet
  • Patent number: 8904367
    Abstract: A system and method automatically inserts pipelines into a high-level program specification. An Intermediate Representation (IR) builder creates one or more graphs or trees based on the high-level program specification. A scheduler iteratively applies a bounded scheduling algorithm to produce an execution schedule for the IR minimizing overall execution time for a given number of pipeline stages. A Hardware Description Language (HDL) code generator may utilize the pipelined, scheduled IR to generate optimized HDL code corresponding to the high-level program specification. An annotated version of the high-level program specification showing where the pipelines have been inserted may be displayed allowing additional design exploration.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: December 2, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Partha Biswas, Vijaya Raghavan, Zhihong Zhao
  • Patent number: 8904302
    Abstract: In an embodiment, a plurality of graphical elements of a graphical model may be displayed on a display device. An indication of a graphical operation involving a first graphical element of the plurality of graphical elements may be received. The graphical operation when performed may establish a relationship between the first graphical element and one or more other graphical elements of the plurality of graphical elements that are compatible with the graphical operation. Two or more graphical elements of the plurality of graphical elements that are compatible with the graphical operation and one or more characteristics associated with the first graphical element may be identified. A visual indication may be provided on the display device. The visual indication may indicate that the identified plurality of graphical elements is compatible with the graphical operation.
    Type: Grant
    Filed: September 30, 2010
    Date of Patent: December 2, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Daniel Forrest Higgins, Syed Salman Qadri, Aditya Agrawal, Kenneth Weiss
  • Patent number: 8903688
    Abstract: Methods, mediums, and systems are presented herein for evaluating points of observation in a model by validating conditions in the model. A condition is a location in a model which may be either satisfied or unsatisfied by underlying data associated with the condition. Conditions may be placed in an enforced satisfied status or enforced unsatisfied status in order to instruct a verification tool to assume that the condition is satisfied regardless of whether the condition would actually be satisfied by underlying data. A first condition in an enforced satisfied status or an enforced unsatisfied status may be used to determine whether a second condition is satisfied, or whether a second condition satisfiable.
    Type: Grant
    Filed: April 1, 2011
    Date of Patent: December 2, 2014
    Assignee: The MathWorks, Inc.
    Inventors: William J. Aldrich, Grégoire Hamon, Anjali Dattatray Joshi
  • Patent number: 8892416
    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: Grant
    Filed: May 6, 2013
    Date of Patent: November 18, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Joseph Daniel Kanapka, Nathan Edward Brewton