RomRaider Logo

RomRaider

Open Source ECU Tools
 FAQ •  Register •  Login 

RomRaider

Documentation

Community

Developers

It is currently Tue Dec 23, 2025 9:14 am

All times are UTC - 5 hours [ DST ]





Post new topic Reply to topic  [ 80 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next
Author Message
 Post subject:
PostPosted: Wed Oct 18, 2006 10:55 am 
Offline
Administrator
User avatar

Joined: Fri Jan 13, 2006 12:33 pm
Posts: 2079
Location: Palo, IA
Well, in netbeans, all OTHER paths are relative to the project directory. Weird. But ...


Ah hell, I was adding those to arguments. There's another field called "VM Options" ... Got it. :)

_________________
- Jared


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 18, 2006 11:00 am 
Offline
RomRaider Developer

Joined: Tue Jul 11, 2006 9:25 pm
Posts: 1025
qoncept wrote:
Well, in netbeans, all OTHER paths are relative to the project directory. Weird. But ...


Ah hell, I was adding those to arguments. There's another field called "VM Options" ... Got it. :)


sweet.

netbeans aside, does my alpha release even run? I just kinda pushed out the latest and greatest.

I need a way to gather the following from testers.

1) mem usage plateau, if any. I need to know about memory leaks.

2) speed, Is this even useful, should I remove more polygons
etc..


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 18, 2006 11:01 am 
Offline
Administrator
User avatar

Joined: Fri Jan 13, 2006 12:33 pm
Posts: 2079
Location: Palo, IA
Alright, I see the issue.. I'll work on it some but I figured I'd tell you the problem first. The min and max values are defined in the ECU definition but are optional. If they aren't set, the colorize method uses the highest value in the table as max and lowest as min.

Edit: I won't be able to check it in till I get home, but you can add these methods to Table3D.java:
Code:
    public double getMin() {
        if (getScale().getMin() == 0 && getScale().getMax() == 0) {
            double low = Double.MAX_VALUE;
           
            for (DataCell[] column : data) {
                for (DataCell cell : column) {
                    if (Double.parseDouble(cell.getText()) < low) {
                        low = Double.parseDouble(cell.getText());
                    }
                }
            }   
             
            return low;                   
        } else {
            return getScale().getMin();
        }
    }
   
    public double getMax() {
        if (getScale().getMin() == 0 && getScale().getMax() == 0) {
            double high = Double.MIN_VALUE;
           
            for (DataCell[] column : data) {
                for (DataCell cell : column) {
                    if (Double.parseDouble(cell.getText()) > high) {
                        high = Double.parseDouble(cell.getText());
                    }
                }
            }   
           
            return high;                   
        } else {
            return getScale().getMax();
        }
    } 


... these to Table.java
Code:
    public double getMin() {
        if (getScale().getMin() == 0 && getScale().getMax() == 0) {
            double low = Double.MAX_VALUE;
            for (int i = 0; i < getDataSize(); i++) {

                if (Double.parseDouble(data[i].getText()) < low) {
                    low = Double.parseDouble(data[i].getText());
                }
            }   
            return low;                   
        } else {
            return getScale().getMin();
        }
    }
   
    public double getMax() {
        if (getScale().getMin() == 0 && getScale().getMax() == 0) {
            double high = Double.MIN_VALUE;
            for (int i = 0; i < getDataSize(); i++) {

                if (Double.parseDouble(data[i].getText()) > high) {
                    high = Double.parseDouble(data[i].getText());
                }
            }   
            return high;                   
        } else {
            return getScale().getMax();
        }
    }


... and change line 298 on in TableToolBar.java to this
Code:
            double maxV = table.getMax();
            double minV = table.getMin();

_________________
- Jared


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 18, 2006 11:36 am 
Offline
Administrator
User avatar

Joined: Fri Jan 13, 2006 12:33 pm
Posts: 2079
Location: Palo, IA
Quote:
sweet.

netbeans aside, does my alpha release even run? I just kinda pushed out the latest and greatest.

I need a way to gather the following from testers.

1) mem usage plateau, if any. I need to know about memory leaks.

2) speed, Is this even useful, should I remove more polygons
etc..

Running fine here.. It's using quite a bit of memory (opening an 8x8 graph jumped up about 30-35mb) but it doesn't seem to be leaking from what I can see. Upon closing the graph the memory usage remains the same, but opening it again doesn't use any more memory. It looks like the GC just might not be worried about the usage until you actually need the memory again.

Speed is great on most computers, but it runs like ass on my computer at home. It could very well be my poop video card for my second monitor or the bad monitor drivers I already have.

Edit: A couple other things.. are the graphs using the min/max for the height range of the cells? And could you add an outline to the cells in the smooth rendering view? And how hard would it be to add interpolation to the table view?

_________________
- Jared


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 18, 2006 12:13 pm 
Offline
RomRaider Developer

Joined: Tue Jul 11, 2006 9:25 pm
Posts: 1025
qoncept wrote:
Quote:
sweet.

netbeans aside, does my alpha release even run? I just kinda pushed out the latest and greatest.

I need a way to gather the following from testers.

1) mem usage plateau, if any. I need to know about memory leaks.

2) speed, Is this even useful, should I remove more polygons
etc..

Running fine here.. It's using quite a bit of memory (opening an 8x8 graph jumped up about 30-35mb) but it doesn't seem to be leaking from what I can see. Upon closing the graph the memory usage remains the same, but opening it again doesn't use any more memory. It looks like the GC just might not be worried about the usage until you actually need the memory again.

Speed is great on most computers, but it runs like ass on my computer at home. It could very well be my poop video card for my second monitor or the bad monitor drivers I already have.

Edit: A couple other things.. are the graphs using the min/max for the height range of the cells? And could you add an outline to the cells in the smooth rendering view? And how hard would it be to add interpolation to the table view?


1) They are, only for coloration purposes at this point.
2) It should be no problem
3) Are you talking about adding interpolation to your 2d tables? If so, I've got a set of static methods to interpolate over an array of values. I can get you more info tonight.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 18, 2006 1:14 pm 
Offline
Administrator
User avatar

Joined: Fri Jan 13, 2006 12:33 pm
Posts: 2079
Location: Palo, IA
No, I meant just let the user push / or whatever to interpolate while looking at the table view rather than the graph. Which of course shouldn't be difficult.. I don't know why I was asking "if it could be done"

_________________
- Jared


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 18, 2006 5:39 pm 
Offline
RomRaider Developer
User avatar

Joined: Sun Jul 16, 2006 12:09 am
Posts: 644
Location: Brisbane, Australia
Tgui wrote:
kascade might be using netbeans, and if so he'd have to know about setting the java.library.path as thats needed for his RXTX packages.


nah, sorry, i'm using a real IDE...IntelliJ!! :wink:

_________________
Paul.
------------------------------------
MY04 Forester XT (Aus. spec)


Top
 Profile  
 
 Post subject:
PostPosted: Fri Oct 20, 2006 2:24 pm 
Offline
Newbie

Joined: Tue Oct 17, 2006 11:15 pm
Posts: 1
I may be way off here, but is the interpolation based of a finite differencing/element schema? For example, determines the boundary conditions and max/min values and then iterates until convergence criteria are met (ie machine accuracy limits).

If the answer is no, the aforementioned would be a very robust way to create very smooth maps that would hit all of the defined criteria. This is basically a CFD implementation used on the map. If interested I could quickly make example using say MATLAB. I write mucho CFD at my job yet have never used java.

Let me know how I can help,
Sky


Top
 Profile  
 
 Post subject:
PostPosted: Fri Oct 20, 2006 3:37 pm 
Offline
RomRaider Developer

Joined: Tue Jul 11, 2006 9:25 pm
Posts: 1025
SkyRealms wrote:
I may be way off here, but is the interpolation based of a finite differencing/element schema? For example, determines the boundary conditions and max/min values and then iterates until convergence criteria are met (ie machine accuracy limits).

If the answer is no, the aforementioned would be a very robust way to create very smooth maps that would hit all of the defined criteria. This is basically a CFD implementation used on the map. If interested I could quickly make example using say MATLAB. I write mucho CFD at my job yet have never used java.

Let me know how I can help,
Sky


Yes. Its an iterative approach. Just least squares really. I iterate a number of times proportional to the sample data size, really just a proportion I found through trial and error that usually results in a best fit polynomial of acceptable error. Suppose I could do it right and compute a best fit polynomial until an acceptable error is achieved, but then I can't guarantee cost. As far as the polynomial fitting is concerned I use Chebyshev polynomials as they're easy to derive and they offer greater variance between polynomials of differing degrees than just simple polynomials of increasing order (x^2, x^3, x^4, etc).

Full 2d data smoothing/interpolation is just smoothing data in bands in the x direction and then the z direction. Not the best really, but considering the small data sizes we're working with and the somewhat limited resources of computer running RomRaider, I'm willing to live with minor artifacts.

If you have any other methods of data smoothing I'd be interested to hear. Though of course I'd like to see a breakdown detailing cost, as in, how much CPU resources is needed. Big 'O' notations are welcome. :-)

Nice to see another math nerd round here. Note, I'm a Software Engineer and Mech E by schooling and might not be up on the latest and greatest in the math world.


-Eric-


Top
 Profile  
 
 Post subject:
PostPosted: Thu Oct 26, 2006 3:48 pm 
Offline
RomRaider Developer

Joined: Tue Jul 11, 2006 9:25 pm
Posts: 1025
Uhhhh, there have been 10 downloads so far and only 1 reply on whether or not it works well.

Anyone whos tested this build have something to say?


Top
 Profile  
 
 Post subject:
PostPosted: Thu Oct 26, 2006 5:59 pm 
Offline
Administrator
User avatar

Joined: Mon Jan 30, 2006 9:05 pm
Posts: 774
Location: PA, USA
Tgui wrote:
Uhhhh, there have been 10 downloads so far and only 1 reply on whether or not it works well.

Anyone whos tested this build have something to say?



I've been outta the loop for a while. I don't see the DL at the top of the thread or here at the end? Wheres it at?

(I'm sure I'm just retarted, but if you point it out.....I'll give it a try)

_________________
Enjoy,

Jeramie


Top
 Profile  
 
 Post subject:
PostPosted: Thu Oct 26, 2006 8:00 pm 
Offline
RomRaider Developer

Joined: Tue Jul 11, 2006 9:25 pm
Posts: 1025
Jeramie wrote:
Tgui wrote:
Uhhhh, there have been 10 downloads so far and only 1 reply on whether or not it works well.

Anyone whos tested this build have something to say?



I've been outta the loop for a while. I don't see the DL at the top of the thread or here at the end? Wheres it at?

(I'm sure I'm just retarted, but if you point it out.....I'll give it a try)


Its on the first post, after all the pictures.

-Easy E-


Top
 Profile  
 
 Post subject:
PostPosted: Thu Oct 26, 2006 8:46 pm 
Offline
Experienced
User avatar

Joined: Wed Mar 29, 2006 9:53 pm
Posts: 248
Location: Bakalakadaka St, CO.
I played around with it tonight. Seems to work pretty well. I did notice that just opening engiuity took 92MB of memory. Then I opened a 3D graph and watched the memory usage rise over 100MB. I only had 1 3D graph open at a time. So I would close one and open another. The more maps I opened in 3D the higher the memory usage went. It plataued out for me around 168MB. It seems when you close the 3D portion it is not releasing the memory back.

One other issue that I was having is that it will not display any values higher that 13.01. So if I have any number in any map that is higher than 13, in the 3D view it only displays 13.01.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Oct 27, 2006 8:02 am 
Offline
RomRaider Developer

Joined: Tue Jul 11, 2006 9:25 pm
Posts: 1025
turbo022 wrote:
I played around with it tonight. Seems to work pretty well. I did notice that just opening engiuity took 92MB of memory. Then I opened a 3D graph and watched the memory usage rise over 100MB. I only had 1 3D graph open at a time. So I would close one and open another. The more maps I opened in 3D the higher the memory usage went. It plataued out for me around 168MB. It seems when you close the 3D portion it is not releasing the memory back.

One other issue that I was having is that it will not display any values higher that 13.01. So if I have any number in any map that is higher than 13, in the 3D view it only displays 13.01.


Well, the 13.01 max value is a known issue. I had to hack some stuff to make the 3d work twith RomRaider. qoncept has checked in fixes.

The memory usage is because of two things.
1) The 3d libraries I used are beta, and aren't optimized. (Java3D)
2) I load up pretty much anything 3d related into RAM to make sure things are as fast a they can be.

Thanks for reporting back man!


Top
 Profile  
 
 Post subject: How do I initiate interpolation?
PostPosted: Fri Oct 27, 2006 8:52 am 
Offline
Newbie

Joined: Thu Mar 23, 2006 7:09 am
Posts: 35
Apologies if I'm asking the obvious but how do I actually initiate the interpolation option? Pick a map, highlight cells and press a key?

Thanks


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 80 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Style based on FI Subsilver by phpBBservice.nl