Patents Assigned to The MathWorks, Inc.
  • Patent number: 8830266
    Abstract: The illustrative embodiment of the present invention provides a method of reconciling and merging differences between displayed electronic diagrams. After differences between corresponding areas of the two electronic diagrams are detected, the software provides a mechanism for merging different attributes between the diagrams. Alternatively, the second diagram may receive all of the differences identified from the first diagram. Distinctions are made between graphical and functional attributes noted as differences between the two diagrams prior to the merge operation. The illustrative embodiment of the present invention enables the user to specify which type of attribute differences should be merged (i.e., graphical differences, functional differences, both graphical and functional, or only selected differences).
    Type: Grant
    Filed: July 22, 2008
    Date of Patent: September 9, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Robert O. Aberg, Vaithilingham Senthil
  • Patent number: 8832646
    Abstract: A method is provided for obfuscating code generated from a block diagram model in a graphical programming environment. The obfuscation may be removed through the use of a password. Incorporating the obfuscated code in a block diagram allows for code to be generated from the block diagram incorporating the obfuscated code.
    Type: Grant
    Filed: March 26, 2010
    Date of Patent: September 9, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Bill Wendling
  • Patent number: 8826229
    Abstract: In an embodiment, a class definition of a class may provide an indication whether a property, which is part of the class, is immutable. The indication may be made implicitly or explicitly. A value of the property may be established (e.g., set) during a creation of an instance of the class. An attempt to set the value of the property after the instance is created may be disallowed. Further, an error (e.g., an error message, exception condition) may be reported in response to disallowing the attempt.
    Type: Grant
    Filed: June 2, 2011
    Date of Patent: September 2, 2014
    Assignee: The Mathworks, Inc.
    Inventor: David A. Foti
  • Patent number: 8826255
    Abstract: A control flow graph may be generated from a model. The control flow graph may be restructured by converting at least one cyclical unstructured region of a control flow graph into a structured region. The restructuring may involve introducing loop head and/or bottom nodes, serving as incident nodes for loop entry or exit, correspondingly. Loop back-edges may be re-routed to loop entry nodes, while all exit nodes may be re-rerouted to loop exit nodes, as long as the control flow within the loop is properly directed using control flow constructs.
    Type: Grant
    Filed: June 18, 2007
    Date of Patent: September 2, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Srinath Avadhanula, Vijay Raghavan
  • Patent number: 8823738
    Abstract: The illustrative embodiment of the present invention provides a method of reconciling and merging differences between displayed electronic diagrams. After differences between corresponding areas of the two electronic diagrams are detected, the software provides a mechanism for merging different attributes between the diagrams. Alternatively, the second diagram may receive all of the differences identified from the first diagram. Distinctions are made between graphical and functional attributes noted as differences between the two diagrams prior to the merge operation. The illustrative embodiment of the present invention enables the user to specify which type of attribute differences should be merged (i.e., graphical differences, functional differences, both graphical and functional, or only selected differences).
    Type: Grant
    Filed: September 11, 2008
    Date of Patent: September 2, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Robert O. Aberg, Vaithilingham Senthil
  • Patent number: 8819618
    Abstract: A device receives a model that includes model elements scheduled to execute in time slots on a hardware device. The device identifies time slots, of the time slots, that are unoccupied or underutilized by the model elements, and identifies a set of model elements that can be moved to the unoccupied time slots without affecting a behavior of the model. The device calculates a combined execution time of the model elements, determines whether the combined execution time of the model elements is less than or equal to a duration of a first time slot of the time slots, and schedules the model elements for execution in the first time slot when the combined execution time of the model elements is less than or equal to the duration of the first time slot.
    Type: Grant
    Filed: September 26, 2012
    Date of Patent: August 26, 2014
    Assignee: The MathWorks, Inc.
    Inventors: David MacLay, Matej Urbas
  • Patent number: 8819643
    Abstract: A device receives information generated by execution of a parallel program, aggregates the received information, generates one or more performance indicators for the parallel program on one of a line or function basis and based on the aggregated information, and provides the one or more performance indicators to a user.
    Type: Grant
    Filed: September 25, 2007
    Date of Patent: August 26, 2014
    Assignee: The Mathworks, Inc.
    Inventors: Edric Ellis, Salman Marvasti
  • Patent number: 8819493
    Abstract: Test configurations are generated based on information regarding hardware or software. A desired test configuration is selected. Test elements are automatically generated based on the desired test configuration, the test elements for testing at least one of the hardware or software. A plurality of test vectors is generated to test the hardware or software for the desired test configuration. The desired test configuration is converted to a script file. At least one of the hardware or software is automatically tested using the script file. Automatically testing the at least one of the hardware or the software includes using a first set of one or more test vectors from the plurality of test vectors to perform a plurality of test iterations of one or more of the actions of one or more generated test elements, and includes using at least a second set of one or more test vectors from the plurality of test vectors to determine the number of test iterations. A result of the testing is produced.
    Type: Grant
    Filed: December 3, 2012
    Date of Patent: August 26, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Thomas Gaudette, Michelle T. Hirsh, Christian A. Portal
  • Patent number: 8819623
    Abstract: A method of populating object property values includes receiving an instruction on behalf of a user. The instruction represents an input indicating selection of the object. The method includes presenting, in response to the input, a list of property names and corresponding default values associated with the selected object, and presenting, for each of one or more default values, a user input field. The method includes presenting, for each of the one or more default values, an enumeration of alternative property values when the enumeration is compatible with the corresponding property. The method includes receiving from the user, for zero or more of the property names, an updated property value that is a selection from a value entered in the user input field or the enumeration of alternative property values, and generating code operative to instantiate the object. The updated property values are associated with the properties of the object.
    Type: Grant
    Filed: April 2, 2012
    Date of Patent: August 26, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Frantz Bouchereau
  • Patent number: 8819420
    Abstract: The present invention provides an encryption/decryption approach to protect valuable information from being represented in a clear-text form when an application processes the valuable information. The present invention processes a structured input file to create internal data structures and generates an encrypted output file from the extracted internal data structures. The encrypted file of internal data structures can be decrypted to enable further processing of the valuable information without representing the valuable information as clear-text in memory. Further, the decrypted internal data structures are stored at different locations in memory.
    Type: Grant
    Filed: June 19, 2006
    Date of Patent: August 26, 2014
    Assignee: The MathWorks, Inc.
    Inventors: William M. McKeeman, Steve Johnson
  • Patent number: 8819119
    Abstract: Exemplary embodiments allow a user to create configurations for use in distributed computing environments. Configurations can be arranged in hierarchies in which elements of the hierarchy can inherit characteristics from elements in other layers of the hierarchy. Embodiments also allow a user to flatten a hierarchical configuration to remove hierarchical dependencies and/or inheriting capabilities of elements in the hierarchy. Exemplary embodiments further allow users to deploy a distributed computing configuration on their desktop to evaluate performance of the configuration and then deploy the configuration in a distributed computing environment without having to change programming code run on the desktop/distributed computing environment.
    Type: Grant
    Filed: September 2, 2010
    Date of Patent: August 26, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Halldor Narfi Stefansson, Elwin Yam Ming Chan, Portia O'Callaghan, Loren Dean
  • Patent number: 8812283
    Abstract: A time-driven block provided in a block diagram model may be executed in an event domain without user modification. The time-driven block is connected to one or more event-driven blocks using event domain signals. The time-driven block automatically adapts to the execution rules of the event domain modeling and simulation environment. The blocks that are configured to execute in more than one modeling and simulation environments are called polymorphic blocks. The polymorphic blocks are indentified during the compilation stage of the block diagram model taking into consideration the port and line styles of the blocks. The execution rules of the polymorphic blocks are also determined during the compilation stage of the block diagram model.
    Type: Grant
    Filed: March 12, 2010
    Date of Patent: August 19, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Wei Li, John Edward Ciolfi, Michael I. Clune
  • Patent number: 8812269
    Abstract: Remote monitoring tools are provided for non-intrusively and synchronously interacting with graphical models. The remote monitoring tools are dynamically connected to the graphical model without requiring the addition of components to the model definition. The remote monitoring tool can perform dynamic range assessment on the graphical model.
    Type: Grant
    Filed: May 24, 2005
    Date of Patent: August 19, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Donald Paul Orofino, II
  • Patent number: 8812276
    Abstract: A system and method generates contextual information for a source model. An identification of one or more first model elements of interest within the source model may be received. One or more constraints on inputs of selected model elements also may be received. A scope of analysis regarding outputs of the first model elements may be specified. The contextual information may be derived automatically for the one or more first model elements. The contextual information may include one or more model elements, signals, or states that are contained with the scope of analysis while execution of the source model is limited by the one or more constraints. The derived contextual information may be provided to an output device.
    Type: Grant
    Filed: May 27, 2011
    Date of Patent: August 19, 2014
    Assignee: The MathWorks, Inc.
    Inventors: William J. Aldrich, Ebrahim Mehran Mestchian, Denizhan N. Alparslan
  • Patent number: 8805651
    Abstract: A method and system are provided for deriving a property value of a data type in a graphical modeling environment. A graphical model in the graphical modeling environment includes at least one signal having a data type having a precision property, a minimum data value property, or a maximum data value property. These properties may be defined by a user of the graphical modeling environment. The graphical modeling environment may also include instrumentation and diagnostics for signals. Heuristics and algorithms may be provided for auto scaling and selection of data types for signals.
    Type: Grant
    Filed: April 14, 2006
    Date of Patent: August 12, 2014
    Assignee: The Mathworks, Inc.
    Inventors: Andrew C. Bartlett, Pieter J. Mosterman
  • Patent number: 8806430
    Abstract: Exemplary embodiments provide computer-implemented methods, computer-readable media, and systems for changing the identifier associated with an entity, such as a variable or function, in a portion of code. During editing, a reference may be maintained that identifies the location of each instance of the entity in the code. When the identifier associated with one instance of the entity is changed, the change in the identifier may be propagated throughout the code to change each instance of the identifier in the code. The identifier may be changed without interrupting the workflow of the user and without the need to change to a separate refactoring mode. In some embodiments, a syntactical analysis may be performed and some or all instances of the identifier may be changed based on one or more rules.
    Type: Grant
    Filed: September 21, 2011
    Date of Patent: August 12, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Joseph Bienkowski, John Booker, Srinath Avadhanula, Vijay Raghavan
  • Patent number: 8806429
    Abstract: Methods and systems for selecting multiple entities of a model or models to set or change data of the multiple entities together in a modeling environment are disclosed. When users create or edit a model or models, information on the entities of the model or models is provided to the users so that the users can select multiple entities in the model or models. On the selection of the multiple entities in the model or models, the modeling environment dynamically generates a user interface for the selected entities of the model or models for displaying, setting or changing data of the selected entities together. The user interface may display data of the selected entities that is not common to all of the selected entities in a different manner so that the users can identify common data of the selected entities.
    Type: Grant
    Filed: June 26, 2012
    Date of Patent: August 12, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Jay Ryan Torgerson, Ryo Shimizu, Pieter J. Mosterman
  • Patent number: 8806428
    Abstract: A self-contained virtual file system is disclosed for deploying and distributing an application and/or software component. Executable files relating to the application are included in a distributable composite file. The composite file and a user front end application are deployed and distributed to an application user where the application is executed. An application provider can tag the composite file with the version information and other useful meta-data of the files for the application. The format of the composite file may support the storage of any kind of file types and associated meta-data. The composite file may contain the hierarchical directory structure of the files for the application so that the hierarchical directory structure is installed in the application user's electronic device.
    Type: Grant
    Filed: September 13, 2012
    Date of Patent: August 12, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Peter Hartwell Webb, John Micco, Charles Gary Nylander
  • Patent number: 8805664
    Abstract: In an embodiment, a method of establishing directed relationships between states in a simulation is disclosed. The directed relationships may allow the simulation to proceed from an initial state according to two or more divergent behaviors. The simulation may merge if two or more behaviors result in states that are equivalent. The method may further allow a state of the simulation which has not been stored to be interpolated from one or more states that have been stored. In one embodiment, a system may receive a request to revert to a previous state, and the system may identify a saved state that is closest to the requested state. The system may simulate from the identified state to arrive at the requested state. In one embodiment, the simulation may be a hybrid simulation which is advanced in both discrete and continuous increments.
    Type: Grant
    Filed: October 1, 2010
    Date of Patent: August 12, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Zhi Han, Murali Yeddanapudi, Pieter J. Mosterman, Xiaocang Lin, Rajesh Pavan Sunkari
  • Patent number: 8799871
    Abstract: An exemplary embodiment provides methods, systems and mediums for executing arithmetic expressions that represent elementwise operations. An exemplary embodiment provides a computing environment in which elementwise expressions may be executed in parallel by multiple execution units. In an exemplary embodiment, multiple execution units may reside on a network.
    Type: Grant
    Filed: January 8, 2007
    Date of Patent: August 5, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Brett Baker