C_R

1960 Reputation

19 Badges

6 years, 51 days

MaplePrimes Activity


These are replies submitted by C_R

@AjayMenon 

Happy to help. If possible, consider sharing a (preferably simplified) model that produces the error.

@AjayMenon 

To convert a signal with discontinuities into a continuous signal, it is possible to pass it through a continuous signal block.  This process is similar to a microcontroller performing the convolution and outputting numerical values to a digital-to-analog converter connected to an analog signal conditioning circuit (e.g., usually a low-pass filter).

These components have a finite impulse response characteristic that causes some delay, just as your convolution causes delay because it uses a sequence of data values from the past but none from the future (which MapleSim has to integrate timestamp by timestamp).


If such an overall delay is acceptable, you are probably fine to find a solution. If not, you are looking for a kind of predictive modeling that foresees the future. This is possible in principle with MapleSim, but not at the component level.


Regarding the capabilities of Modelica, I am not the right person to ask. The custom component of MapleSim (which converts Maple symbolic commands to Modelica code) is probably not capable of converting the expression you specified to Modelica code. Have you tried it?

You are asking interesting questions (related to digital controllers providing symmetric convolution filters that I am interested in). I hope you get more answers here. If not, I would contact support.

@bmartin 

I thought the mouseover message indicates the action (like the "attach probe" icon). From my point of view, it would make sense to swap the mouseover text. The action and the state would match better. A small detail to consider if you plan to update the Analysis window. This is less important than a back button to the MapleSim window (like the Show Simulation Results button, just in the other direction). Navigating a crowded taskbar is distracting and takes time.

Anyway, the second image above shows more variables than probed. I would have expected to see no RE since they are not probed and maybe TV_13 additionally to TY_11 since they both have probes attached.

No problem with the delay and thanks for following up on this.

 

@wswain 

You raise a good point: The context menu should be able to do the conversion. I got the command from support on exactly the same topic. If the context menu would even work on separapte terms of an ouput only in rare cases the mighty unit package has to be involded in unit conversion.

@bmartin 

I just observered two minor (?) related details that I want to bring to your attention. The moderator can decide if this is worth branching off.

Display only probed variables displays real input (RE) and to real variables (TV) that are not probed.

Why are RE and TV displayed?

For comparision display all model variables only displays non zero RE (RE_9 is zero) variables.

If all variables means "all used variables for simulation", why is TV_11 not listed?
 

@vv 

I misinterpreted the error message "Error, (in EllipticK) numeric exception: division by zero". I thought it was the numeric integration. Printing EllpitcK shows that Maple prints the error message before any arithmetic is performed.
Using the references you provided, I found that even EllipticK can give the expected output.

restart

EllipticK(1)

Error, (in EllipticK) numeric exception: division by zero

 

NumericEventHandler(division_by_zero = proc (operator, operands, defVal) return defVal end proc)

division_by_zero = default

(1)

EllipticK(1)

infinity+undefined*I

(2)

NULL

For me it would have been better if EllipticK would output both the error message and infinity + undefined*I. This would prevent arithmetics with oo and additionally provide a symbolic result.

Download devisionbyzero_alternative_output.mw

@bmartin 

The error is not reproducible enough for me to send to support. Until I can show something, I will not pretend that it is a bug. It is not impossible that it is a use error or an unfortunate combination of model design, parameters and initial conditions. Let's leave it open.

Thanks again for the helpful information.

@bmartin 

Thank you for following up on this. Can I assume that there is an incomplete correspondence between the variables and states listed in the “computing initial values” section in the output console and the "all model variables" section in the simulation results?

This might help me find a bug that is driving me crazy. The output console is informative, but difficult to get an overview. The all variables section provides a better overview.

Any "strange" variables listed could indicate an error.

@Axel Vogt 

I did not know that an online version existed. A quick look showed that this special case cannot be looked up easily. Some calculations are required to make the connection to the Maple definitions. This is also the case with my old textbooks. Interesting in itself, but unfortunately not something I could spend too much time on. Providing quick solutions to integrals is one of the reasons I use Maple.

Now I can much better appreciate the work that has gone into Maple's integration capabilities and special functions. I hope they will continue the work.

Thanks for providing the link!

@vv 

I will suggest Maplesoft to update EllipticK to handle such special cases.

Thank you!

@TechnicalSupport 

That  helps. Suggestion: If the icon is only for removal it could be replaced by a simliar icon already used in MapleSim.

Thank you for following up!

@Carl Love 

After reading your reply, I checked help("simplify[constants]"). So constants are not automatically constants...

 

What's confusing about the help page:

I would have expected simplify(infinity(x)) to be effective only when using the "constants" option to tell Maple to treat constants as "common constants" (i.e., remove the (x)). This is not the case, and Maple simplifies directly to infinity, which to me means that Maple assumes that infinity is not a function.

But for the integral evaluated to infinity, Maple is very careful to assume that infinity is really a constant infinity.

Thanks for the context information.

 

@vv 

Int(1/(sqrt(1-x)*sqrt(-x^2+1)), x = 0 .. 1); simplify(((proc (x) options operator, arrow; x end proc) = value)(%))

Int(1/((1-x)^(1/2)*(-x^2+1)^(1/2)), x = 0 .. 1) = infinity

(1)

(Int(1/((1-x)^(1/2)*(-x^2+1)^(1/2)), x = 0 .. 1) = infinity)*(1/rhs(Int(1/((1-x)^(1/2)*(-x^2+1)^(1/2)), x = 0 .. 1) = infinity))

0 = 0

(2)

lhs(Int(1/((1-x)^(1/2)*(-x^2+1)^(1/2)), x = 0 .. 1) = infinity)/rhs(Int(1/((1-x)^(1/2)*(-x^2+1)^(1/2)), x = 0 .. 1) = infinity) = rhs(Int(1/((1-x)^(1/2)*(-x^2+1)^(1/2)), x = 0 .. 1) = infinity)*(1/rhs(Int(1/((1-x)^(1/2)*(-x^2+1)^(1/2)), x = 0 .. 1) = infinity))

0 = undefined

(3)

NULL

Download Infinity_times_something_divided_by_infinity.mw

Thanks for pointing out this last detail as well. I was just about to use the integral in quotients. I will pay more attention to quotients now.

@Anthrazit 

I had

Override high DPI scaling behavior -> System (Enhanced)

but changing it back to  Application made (as you noticed) no difference.

(Maybe with recent Windows updates there has been an improvement.)

Your observations point toward a machine depended installation issue. Did you compare

C:\Users\%USERNAME%\AppData\Roaming\Maple\2021\Maple.ini

for differences.

Could you share a Maple worksheet where you noticed the rendering issue. A screen shot scaled to 200% would be benefical to see where the differences are. That's an unscaled screen shot from a 4K Monitor with 150% font scaling in Windows

 

Recently I have observed even stronger delays when editing/correcting long text passages in MapleSim 2021, which uses the same Java platform (OpenJDK) as Maple 2021. It requires a restart and is not reproducible. Maybe this is related.

First 28 29 30 31 32 33 34 Page 30 of 36