dnaviaux

David Naviaux

50 Reputation

0 Badges

0 years, 303 days
Micro Dynamics Engineering, Inc.
Springfield, Oregon, United States

MaplePrimes Activity


These are replies submitted by dnaviaux

I was able to isolate this problem to a single service that was runnning on my Windows 10 pro. computer; the "Nahimic service."  Apparently this is a common service installed by several audio and video drivers.  ASUS, the MFG of my motherboard, had an updated audio driver that when I uninstalled the previous driver and installed this one, the problem was solved.

 

 

@acer 

kernelopts(version) returns: `Maple 2020.2, X86 64 WINDOWS, Nov 11 2020, Build ID 1502365`

I see!  When changing to "&%s;" in my nprintf() statements, all works okay.

 

What I don't understand, is why it was working fine until I copy/pasted one of my greek character nprintf() lines to add another character.

I see that pasted lines did not include the & nor the ;.

Thanks acer!

 

@acer 

Thank you acer.  I look forward to an example.

I'm sure that with each automatically generated report, I'll get it more finely tuned so that it can almost be a template for future electronic design.

@acer @mmcdara 

I was doing some experiementing and I came across the echofile property of the interface() proc.  However, I have not been able to get that to work.  When I enter: interface(echofile="eraseme.html") an error is reported stating that echofile is not a valid property of interface.  

Is this a valid property?

@acer 

I'll do some experimenting...  How difficult would it be to redirect a plot to another worksheet as you did with the table?  

 

@mmcdara 

I am intrigued and will look deeper into using LaTeX if redirecting to a worksheet turns out more difficult than I am anticipating.  Unfortunately, I am not fluent in LaTeX.  My only experience with LaTeX was graduate school and publishing a paper or too many years ago.  I do not think that it would take too long to get up to speed though.

Thank you

 

@acer 

Thank you!  I did some experimenting with the code that you provided, and I think that directing output to a separate worksheet would work great for me.  Here are my final goals.  I have primarily 3 needs for output:

  1. (Design) Design and analyze electrical circuits (for my eyes only).  This would consist of maybe several worksheets that get included into a "master worksheet" that when executed executes all of the worksheets.
  2. (Summary) Summarize a design by generating various tables (for my eyes only) showing:
    1. design goals (e.g. input voltage or current range, output voltage or current range, frequency char., etc.) 
    2. calculated component values
    3. a table of critical component values and characteristics (i.e. part numbers, tolerances, temperature sensitivity, etc.)
    4. resulting uncertainties and a comparison to the design goals
    5. transfer equations (e.g. current(ADC) - measured current as a function of the ADC reading, etc.)
    6. "C" code for the transfer equations so I can test the prototypes.
  3. (Client) Produce reports for my clients that show the results of an analysis:
    1. a table of critical component values and characteristics (i.e. part numbers, tolerances, temperature sensitivity, etc.)
    2. resulting design characteristics:
      1. uncalibrated uncertainties
      2. calibrated uncertainties
      3. temperature related characteristics
      4. frequency response characteristics
      5. etc.
    3. "C" code for the various nominal transfer equations for my clients programmers

During the design phase, I frequently make changes to design goals and component characteristics (e.g. tolerances, temperature sensitivity, and other non-ideal characteristics) as required to meet a designs requirements (Design) so I will be generating multiple reports for my eyes only (Summary).  Once the design is complete, I will generate a report for my clients (Client).  It looks like writing to a new worksheet will work perfectly since if I can output it to a worksheet in the design phase, I can also output it to a separate worksheet that I can make a .pdf file of for myself or my clients simply by executing the "master worksheet."

As you know, I am new to Maple.  I am switching over from Matlab that much of the above was very difficult or not possible to do.  

I should say that at the moment, I have been applying what I am learning about Maple to a design that I am currently working on (13-channel programmable current LED driver).  I will also eventually be producing several graphs that will also need to be placed in the output worksheets.  

Is it possible to place a plot on a separate worksheet?

@mmcdara 

Yes it is related to the linked thread. I'll try to be more careful when posting.

I have found that redirecting the DocumentTools:-Layout:-Table() output and most special characters to a file does not work as I would expect.

Is there a way to do that (e.g. a special file extension)?

Is it possible to redirect the output to another worksheet?

@acer @Carl Love 

I wanted to thank you both for the detailed explanations and example of how to use printf() with special symbols.

I don't think I could have figured that one out with help.

Merry Christmas!

David

@mmcdara 

Merry Christmas!

@dnaviaux 

I should note that the example code in JacobianVsSEA is not well documented (I'm a newbie).  In summary:

  1. It first develops an expression for a microcontroller ADC reading of the output of a roll-your-own differential amplifier that is monitoring the electircal current through an LED.
  2. Evaluates the statistical and worst case ADC reading uncertainty using the Jacobian
  3. Evaluates the statistical uncertainty using the SEA package.

 

@mmcdara 

Thanks again.  I'm anxious to examine your code in more detail.  I have never used the Monte-Carlo techniques to determine worst case results.  I expect that it will result in a more realistic worst case analysis compared to the way I am doing it with the Jacobian.

If you are interested, here is a worksheet that I put together that allows me to compare the SEA package to the brute force Jacobian techniques.  I have not incorporated the code that you posted to analyze the individual parameter contributions to the total uncertainty yet, but I will.

JacobianVsSEA.mw

I greatly appreciate the time you have take to answer my questions and your contributions.  Being new to Maple, the examples are very valuable.  I have learned quite a bit in the past few days due to MaplePrime.

@dnaviaux 

In my context, I could have used "parameter" in place of contributor, oh well...  I think it is clear though. 

@mmcdara 

I see that I have so much more to learn!  Thank you so much for the detailed answer and the example worksheet.  I have been evaluating my electrical designs for years using Jacobian matricies to calculate the total uncertainty and the "Effect" of each of the contributors so that I could verify that my design meets my design goals. By examining the "Effect" of each contributor, I could then make appropriate component changes as required to meet my goals (e.g. change a resistor from a 1% to a 0.1% resistor, use a better opamp, etc.) or change the design specifications.  

Using the Jacobian matricies, I am able to predict an uncertainty that matches the value returned by the SEA combine(f(),errors) function:

 

Using the Jacobian I am essentially calculating the following:

uncertainty = sqrt( (diff(y, a) * sa)^2 +  (diff(y, b)* sb)^2 + ...) 

 

Using the Jacobian I can also calculate the worst case uncertainty as follows:

worst case uncertainty = abs(diff(y, a) * sa) + abs(diff(y, b) * sb) + ...)

 

In generally I list both of the results for my clients.  The worst case results are exceedingly conservative since in practice it is unrealistic to expect every parameter to be at its worst case value. 

I really like the SEA app and by your explanation, I can see how I can also use it to see the effects of each contibutor.  My next step (after I review a bit of statistics that you response alerted me to) will be to compare the SEA vs Jacobian matricies implementation efforts.

 

@mmcdara 

Are you refering to giving credit to the person that developed the code?  

 

1 2 3 Page 1 of 3